diff --git a/src/FbWinFrame.cc b/src/FbWinFrame.cc index 42b81e77..21f174b1 100644 --- a/src/FbWinFrame.cc +++ b/src/FbWinFrame.cc @@ -272,11 +272,11 @@ void FbWinFrame::resizeForClient(unsigned int width, unsigned int height, moveResizeForClient(0, 0, width, height, win_gravity, client_bw, false, true); } -void FbWinFrame::moveResize(int x, int y, unsigned int width, unsigned int height, bool move, bool resize) { - if (move && x == window().x() && y == window().y()) +void FbWinFrame::moveResize(int x, int y, unsigned int width, unsigned int height, bool move, bool resize, bool force) { + if (!force && move && x == window().x() && y == window().y()) move = false; - if (resize && width == FbWinFrame::width() && + if (!force && resize && width == FbWinFrame::width() && height == FbWinFrame::height()) resize = false; @@ -504,7 +504,7 @@ void FbWinFrame::applyState() { new_h = m_screen.getHeadHeight(head); } - moveResize(new_x, new_y, new_w, new_h); + moveResize(new_x, new_y, new_w, new_h, true, true, true); frameExtentSig().emit(); } diff --git a/src/FbWinFrame.hh b/src/FbWinFrame.hh index f8961c82..617b9b91 100644 --- a/src/FbWinFrame.hh +++ b/src/FbWinFrame.hh @@ -92,7 +92,7 @@ public: // can elect to ignore move or resize (mainly for use of move/resize individual functions void moveResize(int x, int y, unsigned int width, unsigned int height, - bool move = true, bool resize = true); + bool move = true, bool resize = true, bool force = false); // move without transparency or special effects (generally when dragging) void quietMoveResize(int x, int y,