diff --git a/frame/util/docksettings.cpp b/frame/util/docksettings.cpp index e3b0a8fd9..8c01295b4 100644 --- a/frame/util/docksettings.cpp +++ b/frame/util/docksettings.cpp @@ -384,6 +384,11 @@ void DockSettings::resetFrontendGeometry() m_dockInter->SetFrontendWindowRect(p.x(), p.y(), w, h); } +void DockSettings::updateFrontendGeometry() +{ + resetFrontendGeometry(); +} + bool DockSettings::test(const Position pos, const QList &otherScreens) const { QRect maxStrut(0, 0, m_screenRawWidth, m_screenRawHeight); diff --git a/frame/util/docksettings.h b/frame/util/docksettings.h index 656366cbb..3db9a6e40 100644 --- a/frame/util/docksettings.h +++ b/frame/util/docksettings.h @@ -83,6 +83,8 @@ public: qreal dockRatio() const; void showDockSettingsMenu(); + void updateFrontendGeometry(); + QSize m_mainWindowSize; DBusDock *m_dockInter; diff --git a/frame/window/mainwindow.cpp b/frame/window/mainwindow.cpp index f57048b53..3cfb1c81d 100644 --- a/frame/window/mainwindow.cpp +++ b/frame/window/mainwindow.cpp @@ -365,6 +365,7 @@ void MainWindow::internalMove(const QPoint &p) case Right: rp.setX(r.right() - 1); break; case Bottom: rp.setY(r.bottom() - 1); break; } + int hx = height() * ratio, wx = width() * ratio; if (m_settings->hideMode() != HideMode::KeepShowing && isHide && @@ -909,6 +910,7 @@ void MainWindow::onDragFinished() } setStrutPartial(); + m_settings->updateFrontendGeometry(); } #include "mainwindow.moc"