Bug 451853 - Only top window edge allows resizing when it's touching a screen edge
Summary: Only top window edge allows resizing when it's touching a screen edge
Status: CONFIRMED
Alias: None
Product: Breeze
Classification: Plasma
Component: window decoration (show other bugs)
Version: 5.23.4
Platform: Other Linux
: NOR wishlist
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-03-24 11:36 UTC by pf
Modified: 2022-03-27 13:39 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description pf 2022-03-24 11:36:48 UTC
SUMMARY  [This is my best guess at product/component.]

This issue is minor; but aggravating.  Three of four window resize grab handles are off-screen when a window is against a screen edge.  Only the top grab handle is available.

When a new window opens with one or more edges against a screen edge, the resize handle is not available because the handle's grab area is just off screen. This is true for left, bottom and right; top handle can be grabbed when window edge is at screen top.

STEPS TO REPRODUCE
1. open any window
2. if it is against left, bottom or right screen edges, the window cannot be resized from that edge. (Bottom issue is obvious on non-primary screen; on main screen, bottom edge against taskbar often results in tooltips popping up)
3. 

OBSERVED RESULT  [Below was originally written using fixed-width font.]
The "grab" area is just outside the window geometry. Maximized was referenced only to say that is not part of the issue:
     - move the window if not maximized
     - if maximized, restore and likely still have to move the window
So, when the window edge aligns with the screen edge, the hot zone is outside the screen area and not available.

Maybe this was not clear enough, or I should have avoided mentioning anything about maximized...  Let me try a graphic representation:

Using left screen edge as representative for left, bottom & right... 

Window not quite at edge:
        ||
        <o>   Cursor changes to 'grab'||
        ||

Window at edge:
        |
        |\    Cursor can't reach grab's "hot" area
        |

Greatly expanded:
                  | grab  |<== window edge    
    screen edge==>| area  |   window almost at edge
                  | ~10px |
                  |  <o>  |  <== cursor changes from \ to <o>
                  |     <=|=== grab area within which cursor changes
                  |       |
    screen edge==>|<== window edge 
          | grab  |   
          | area  |   window AT edge
          | ~10px |
          |     <=|=== grab area within which cursor can't go

Also, when trying to hit the grab area, user has to consciously move cursor *outside* the window boundaries which is non-intuitive.

The "hot" zone should straddle/be centered over the window edge:
screen edge==>|<== window edge 
          | gr|ab |   
          | ar|ea |   window AT edge
          |~10|px |
          |   |   |
Now, the hot zone is available and intuitive.

HTH
The only workarounds are:
- move the window if not maximized
- if maximized, restore and likely still have to move the window

EXPECTED RESULT

Rather than being being just outside, the grab handles should be just inside the window edges.

SOFTWARE/OS VERSIONS
Operating System: Mageia 9
KDE Plasma Version: 5.23.4
KDE Frameworks Version: 5.88.0
Qt Version: 5.15.2
Kernel Version: 5.16.14-server-1.mga9 (64-bit)
Graphics Platform: X11
Processors: 20 × 12th Gen Intel® Core™ i7-12700K
Memory: 62.5 GiB of RAM
Graphics Processor: AMD Radeon RX 6600 XT


ADDITIONAL INFORMATION
See also https://bugs.mageia.org/show_bug.cgi?id=30154
Comment 1 Paul Worrall 2022-03-24 13:19:21 UTC
Confirmed in X11 and Wayland using Breeze theme.
Comment 2 Nate Graham 2022-03-26 21:43:26 UTC
This is an issue in the Breeze Window decoration theme. It may actually be intentional though. At least for the right edge, this is so that scrollbars follow Fitts' Law. Not sure it's possible to have both, as they conceptually conflict.
Comment 3 pf 2022-03-27 13:39:00 UTC
Just a single pixel wide on the scrollbar edge so that the window edge could be grabbed would be a HUGE improvement IMO. The other edges shouldn't be an issue; should they?