https://bugs.kde.org/show_bug.cgi?id=502867

[email protected] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #5 from [email protected] ---
Still reproducible on KWin 6.8.1 (Wayland), two 1920x1080 screens side by side:
DP-1 at 0,114 (left), primary DP-2 at 1920,0 (right). Bottom panel on each
screen.
Resize-snapping works on the left screen only; on the right screen the edges
snap to the left screen's work area instead (bottom ~y=1150, right x=1920)
rather than its own.

Cause: Workspace::adjustWindowSize() in src/workspace.cpp picks the output with

    const RectF maxRect = clientArea(MaximizeArea, window,
window->rect().center());

window->rect() is in window-local coordinates (origin 0,0), so the point is
always around (width/2, height/2) and usually resolves to whichever output
covers the top-left of the desktop, regardless of where the window actually is.
adjustWindowPosition() doesn't have this problem.

Suggested fix (also present unchanged on master):

-        const RectF maxRect = clientArea(MaximizeArea, window,
window->rect().center());
+        const RectF maxRect = clientArea(MaximizeArea, window,
moveResizeGeom.center());

This likely also explains bug 465124.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to