diff --git a/src/window.cpp b/src/window.cpp index b3fdb59b6c..90c9c19693 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -2511,7 +2511,7 @@ bool Window::performMouseCommand(Options::MouseCommand cmd, const QPoint &global // fallthrough case Options::MouseMove: case Options::MouseUnrestrictedMove: { - if (!isMovableAcrossScreens()) { + if (!isMovable() || !isMovableAcrossScreens()) { break; } if (isInteractiveMoveResize()) { diff --git a/src/xdgshellwindow.cpp b/src/xdgshellwindow.cpp index 0acbf7d75a..089800c155 100644 --- a/src/xdgshellwindow.cpp +++ b/src/xdgshellwindow.cpp @@ -653,7 +653,7 @@ bool XdgToplevelWindow::isMovable() const if (isRequestedFullScreen()) { return false; } - if (isSpecialWindow() && !isSplash() && !isToolbar() && !isAppletPopup()) { + if ((isSpecialWindow() && !isSplash() && !isToolbar()) || isAppletPopup()) { return false; } if (rules()->checkPosition(invalidPoint) != invalidPoint) {