When a window is quick tiled, dragging an edge for resizing does not only change the position of this edge, but also of other edges. Especially in a two-screen setup, unpredictable things may happen (cf. video). I do the following in the video (please excuse the missing mouse pointer): 1. quick tiling at upper right corner of left screen, dragging left edge 2. quick tiling at right edge of left screen, dragging left edge 3. quick tiling at upper right corner of left screen, dragging lower edge 4. quick tiling at lower right corner of left screen, dragging upper edge Reproducible: Always Steps to Reproduce: 1. open a window 2. quick tile the window 3. resize the window by dragging an edge Actual Results: Other edges might jump to another position. Expected Results: Every edge except the dragged one stay in place. I am using Arch Linux. My screen setup ks the following: % xrandr Screen 0: minimum 8 x 8, current 2944 x 1280, maximum 32767 x 32767 … HDMI2 connected primary 1920x1200+0+0 (normal left inverted right x axis y axis) 518mm x 324mm 1920x1200 59.60*+ … HDMI3 connected 1024x1280+1920+0 left (normal left inverted right x axis y axis) 359mm x 287mm 1280x1024 60.02*+ …
It' s the deco/updateborders/checkWorkspacePosition dance diff --git a/geometry.cpp b/geometry.cpp index ea7b587..7617102 100644 --- a/geometry.cpp +++ b/geometry.cpp @@ -2581,6 +2581,7 @@ bool Client::startMoveResize() if (quick_tile_mode != QuickTileNone && mode != PositionCenter) { // Cannot use isResize() yet // Exit quick tile mode when the user attempts to resize a tiled window quick_tile_mode = QuickTileNone; // Do so without restoring original geometry + geom_restore = geometry(); emit quickTileModeChanged(); } I'll add the patch to the series in https://git.reviewboard.kde.org/r/123882/
Git commit e830f08defc3c38ec79542faeacbc5aea2cb2327 by Thomas Lübking. Committed on 10/06/2015 at 06:50. Pushed by luebking into branch 'master'. update geom_restore when silently breaking QT mode the next checkWorkspacePosition (now triggered by deco border update) would falsely restore the pre-tiling geometry REVIEW: 123882 M +1 -0 geometry.cpp http://commits.kde.org/kwin/e830f08defc3c38ec79542faeacbc5aea2cb2327
@thomas did/will this also make it to 5.3.2/5.3.3 or is it a 5.4 thing?
5.4 only, this stuff (and notably shading) was massively broken throughout at least all 5.x, so (and since the patch is pretty invasive) I deemed it master (now becoming 5.4) only. Should be safe to backport, though.
I care because of the sticky resizing script - see https://github.com/Flupp/sticky-window-snapping/issues/1#issuecomment-121047112 ;-) This patch makes things work better but still a tad unpredictable, see my description. Might be that this'll be fixed in 5.4, I hope - if not, well, I guess I'll file a bug... As usual, Thomas, thanks, great work!
After some more testing it seems that the patch solves the bug completely - the fault was on my side (need to log out and log in again for it to really work). Thanks a bunch, again! This was the one thing holding me from upgrading to Plasma 5 at the office, so 5.4 will be the release that I have moved over all my systems :D