Changeset View
Changeset View
Standalone View
Standalone View
xdgshellclient.cpp
Show First 20 Lines • Show All 147 Lines • ▼ Show 20 Line(s) | 147 | if (m_requestGeometryBlockCounter != 0 || areGeometryUpdatesBlocked()) { | |||
---|---|---|---|---|---|
148 | return; | 148 | return; | ||
149 | } | 149 | } | ||
150 | m_xdgShellToplevel->configure(xdgSurfaceStates(), m_requestedClientSize); | 150 | m_xdgShellToplevel->configure(xdgSurfaceStates(), m_requestedClientSize); | ||
151 | }; | 151 | }; | ||
152 | connect(this, &AbstractClient::activeChanged, this, configure); | 152 | connect(this, &AbstractClient::activeChanged, this, configure); | ||
153 | connect(this, &AbstractClient::clientStartUserMovedResized, this, configure); | 153 | connect(this, &AbstractClient::clientStartUserMovedResized, this, configure); | ||
154 | connect(this, &AbstractClient::clientFinishUserMovedResized, this, configure); | 154 | connect(this, &AbstractClient::clientFinishUserMovedResized, this, configure); | ||
155 | 155 | | |||
156 | connect(this, &XdgShellClient::geometryChanged, this, &XdgShellClient::updateClientOutputs); | 156 | connect(this, &XdgShellClient::frameGeometryChanged, this, &XdgShellClient::updateClientOutputs); | ||
157 | connect(screens(), &Screens::changed, this, &XdgShellClient::updateClientOutputs); | 157 | connect(screens(), &Screens::changed, this, &XdgShellClient::updateClientOutputs); | ||
158 | } else if (m_xdgShellPopup) { | 158 | } else if (m_xdgShellPopup) { | ||
159 | connect(m_xdgShellPopup, &XdgShellPopupInterface::configureAcknowledged, this, &XdgShellClient::handleConfigureAcknowledged); | 159 | connect(m_xdgShellPopup, &XdgShellPopupInterface::configureAcknowledged, this, &XdgShellClient::handleConfigureAcknowledged); | ||
160 | connect(m_xdgShellPopup, &XdgShellPopupInterface::grabRequested, this, &XdgShellClient::handleGrabRequested); | 160 | connect(m_xdgShellPopup, &XdgShellPopupInterface::grabRequested, this, &XdgShellClient::handleGrabRequested); | ||
161 | connect(m_xdgShellPopup, &XdgShellPopupInterface::destroyed, this, &XdgShellClient::destroyClient); | 161 | connect(m_xdgShellPopup, &XdgShellPopupInterface::destroyed, this, &XdgShellClient::destroyClient); | ||
162 | connect(m_xdgShellPopup, &XdgShellPopupInterface::windowGeometryChanged, this, &XdgShellClient::handleWindowGeometryChanged); | 162 | connect(m_xdgShellPopup, &XdgShellPopupInterface::windowGeometryChanged, this, &XdgShellClient::handleWindowGeometryChanged); | ||
163 | } | 163 | } | ||
164 | 164 | | |||
▲ Show 20 Lines • Show All 409 Lines • ▼ Show 20 Line(s) | 572 | if (m_unmapped && m_geomMaximizeRestore.isEmpty() && !m_frameGeometry.isEmpty()) { | |||
574 | m_geomMaximizeRestore = m_frameGeometry; | 574 | m_geomMaximizeRestore = m_frameGeometry; | ||
575 | } | 575 | } | ||
576 | 576 | | |||
577 | if (frameGeometryIsChanged) { | 577 | if (frameGeometryIsChanged) { | ||
578 | if (hasStrut()) { | 578 | if (hasStrut()) { | ||
579 | workspace()->updateClientArea(); | 579 | workspace()->updateClientArea(); | ||
580 | } | 580 | } | ||
581 | updateWindowRules(Rules::Position | Rules::Size); | 581 | updateWindowRules(Rules::Position | Rules::Size); | ||
582 | emit frameGeometryChanged(this, frameGeometryBeforeUpdateBlocking()); | ||||
582 | } | 583 | } | ||
583 | 584 | | |||
584 | const auto old = frameGeometryBeforeUpdateBlocking(); | 585 | emit geometryShapeChanged(this, frameGeometryBeforeUpdateBlocking()); | ||
586 | | ||||
585 | addRepaintDuringGeometryUpdates(); | 587 | addRepaintDuringGeometryUpdates(); | ||
586 | updateGeometryBeforeUpdateBlocking(); | 588 | updateGeometryBeforeUpdateBlocking(); | ||
587 | emit geometryShapeChanged(this, old); | | |||
588 | 589 | | |||
589 | if (isResize()) { | 590 | if (isResize()) { | ||
590 | performMoveResize(); | 591 | performMoveResize(); | ||
591 | } | 592 | } | ||
592 | } | 593 | } | ||
593 | 594 | | |||
594 | void XdgShellClient::doMove(int x, int y) | 595 | void XdgShellClient::doMove(int x, int y) | ||
595 | { | 596 | { | ||
▲ Show 20 Lines • Show All 842 Lines • ▼ Show 20 Line(s) | 1438 | [this] { | |||
1438 | hideClient(false); | 1439 | hideClient(false); | ||
1439 | ScreenEdges::self()->reserve(this, ElectricNone); | 1440 | ScreenEdges::self()->reserve(this, ElectricNone); | ||
1440 | m_plasmaShellSurface->showAutoHidingPanel(); | 1441 | m_plasmaShellSurface->showAutoHidingPanel(); | ||
1441 | } | 1442 | } | ||
1442 | ); | 1443 | ); | ||
1443 | updatePosition(); | 1444 | updatePosition(); | ||
1444 | updateRole(); | 1445 | updateRole(); | ||
1445 | updateShowOnScreenEdge(); | 1446 | updateShowOnScreenEdge(); | ||
1446 | connect(this, &XdgShellClient::geometryChanged, this, &XdgShellClient::updateShowOnScreenEdge); | 1447 | connect(this, &XdgShellClient::frameGeometryChanged, this, &XdgShellClient::updateShowOnScreenEdge); | ||
1447 | 1448 | | |||
1448 | setSkipTaskbar(surface->skipTaskbar()); | 1449 | setSkipTaskbar(surface->skipTaskbar()); | ||
1449 | connect(surface, &PlasmaShellSurfaceInterface::skipTaskbarChanged, this, [this] { | 1450 | connect(surface, &PlasmaShellSurfaceInterface::skipTaskbarChanged, this, [this] { | ||
1450 | setSkipTaskbar(m_plasmaShellSurface->skipTaskbar()); | 1451 | setSkipTaskbar(m_plasmaShellSurface->skipTaskbar()); | ||
1451 | }); | 1452 | }); | ||
1452 | 1453 | | |||
1453 | setSkipSwitcher(surface->skipSwitcher()); | 1454 | setSkipSwitcher(surface->skipSwitcher()); | ||
1454 | connect(surface, &PlasmaShellSurfaceInterface::skipSwitcherChanged, this, [this] { | 1455 | connect(surface, &PlasmaShellSurfaceInterface::skipSwitcherChanged, this, [this] { | ||
▲ Show 20 Lines • Show All 614 Lines • Show Last 20 Lines |