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

            Bug ID: 488849
           Summary: [wayland] Klipper menu will appear on next display to
                    mouse in some circumstances
    Classification: Plasma
           Product: plasmashell
           Version: 6.1.0
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: Clipboard
          Assignee: plasma-b...@kde.org
          Reporter: eamonn...@protonmail.com
  Target Milestone: 1.0

SUMMARY
Activating the Klipper menu will cause the menu to appear on the display to the
side, or above/below, the mouse cursor, in some circumstances.

If you have two displays arranged horizontally, and on the left-most display
you move the mouse cursor so that it is close to the right edge of the display,
then the Klipper menu will appear on the right-most display. Specifically, I
believe this happens when the remaining space between the mouse and the next
display is less than half of the width of the Klipper menu. It is certainly not
the full width, but it looks like half-width could be possible based on some
testing. The menu will be aligned correctly on the Y axis but not on the X
axis, appearing at the left edge of the right-most display.

The same behaviour happens when displays are arranged vertically, except here I
think it is when the space between the mouse and the top/bottom edge of the
display is less than half of the *height* instead of width.

I believe this is to do with the width/height is because if you are more than
this approximate halfway marker, the dialog will draw on the correct display,
but the mouse will be moved slightly over the top of the dialog, as you would
expect (the dialog appears at the nearest position on the current display even
if that means it cannot draw at the exact position of the mouse). But once you
go more than halfway and there is less space available, instead of drawing on
the same display as the mouse and having the menu hug the edge while the mouse
is slightly offset along the top (or side, if vertical), the menu will just
draw on the next display.

Alternatively drawing the Klipper menu between displays could work, but I don't
think this happens anywhere else in Plasma, and doesn't match existing Klipper
behaviour. I think keeping the current behaviour but fixing the dialog drawing
on the wrong display is the most intuitive approach. 

This offset bug is *specific* to when the cursor is close to the edge of
another display. The position of the Klipper menu is correct in Plasma 6.1.0 in
all other instances that I have seen. In other words this is distinct from Bug
482076 and Bug 485703.

Note: I was not able to reproduce a case where this happened and the menu was
not accessible. It is always possible to use the menu, but it is offset
occasionally.

Note 2: Scaled displays don't seem to have an effect here. It happens with and
without a scaled display, even on display arrangements where the displays are
identical in resolution.

STEPS TO REPRODUCE
1. Move the mouse cursor close to the edge between it and another display
2. Activate Klipper menu, such as with Meta+V
3. The menu is offset onto the other display, hugging the edge closely
4. Move the mouse away from the edge of it and the other display
5. Once you are far enough away, the Klipper menu will display correctly under
the mouse.

OBSERVED RESULT
Klipper menu appears on next display if the distance between the mouse cursor
and the current screen edge is *less than half* the width/height of the Klipper
menu (width when horizontally adjacent displays, height when vertically
adjacent).

EXPECTED RESULT
Klipper menu should display on the same display as the mouse cursor. It handles
this properly if the space between the cursor and the edge of the screen is
more than halfway, the mouse cursor appears further along the top of the
dialog. So this should apply even when the cursor is even closer to the screen
edge.

The Klipper menu should only appear on the next display once the mouse cursor
goes onto that display.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: 6.9.5 Linux Zen
KDE Plasma Version: 6.1.0
KDE Frameworks Version: 6.3.0
Qt Version: 6.7.1

ADDITIONAL INFORMATION
I believe this bug is specific to Plasma 6.1.0, but I was unable to find this
until Plasma 6.1.0 because of Bug 485703 (fixed in Plasma 6.1.0).

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

Reply via email to