diff --git a/autotests/integration/quick_tiling_test.cpp b/autotests/integration/quick_tiling_test.cpp index 95826dd57c..d4466b7bb9 100644 --- a/autotests/integration/quick_tiling_test.cpp +++ b/autotests/integration/quick_tiling_test.cpp @@ -269,6 +269,7 @@ void QuickTilingTest::testQuickMaximizing() // window is now set to maximised QCOMPARE(maximizeChangedSpy.count(), 1); QCOMPARE(window->maximizeMode(), MaximizeFull); + QCOMPARE(window->tile(), nullptr); // go back to quick tile none QFETCH(QuickTileMode, mode); diff --git a/src/window.cpp b/src/window.cpp index be9ca43b2f..e9f26e6c66 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -1178,7 +1178,7 @@ void Window::setMaximize(bool vertically, bool horizontally) if (horizontally) { mode = MaximizeMode(mode | MaximizeHorizontal); } - setTile(nullptr); + maximize(mode); } diff --git a/src/x11window.cpp b/src/x11window.cpp index 5f8978f4c6..69d52e6cec 100644 --- a/src/x11window.cpp +++ b/src/x11window.cpp @@ -4663,6 +4663,7 @@ void X11Window::maximize(MaximizeMode mode) } else { updateQuickTileMode(QuickTileFlag::None); } + setTile(nullptr); info->setState(NET::Max, NET::Max); break; } diff --git a/src/xdgshellwindow.cpp b/src/xdgshellwindow.cpp index a8ff30b50e..c5525ff7f8 100644 --- a/src/xdgshellwindow.cpp +++ b/src/xdgshellwindow.cpp @@ -1551,6 +1551,7 @@ void XdgToplevelWindow::maximize(MaximizeMode mode) } else { updateQuickTileMode(QuickTileFlag::None); } + setTile(nullptr); } else { updateQuickTileMode(QuickTileFlag::None); }