application-title-bar icon indicating copy to clipboard operation
application-title-bar copied to clipboard

Drag on Plasma 6.3

Open davidwkr opened this issue 10 months ago • 24 comments

I updated to KDE Plasma 6.3 yesterday, and now the dragging feature no longer works.

I am relying on clicking to be able to move windows when maximized.

Thanks

davidwkr avatar Feb 14 '25 01:02 davidwkr

I've used some workarounds to make this feature work with Plasma 6 Wayland. Perhaps, they made same behavior in 6.3 as for x11. I'll check it, but not sure that this can be fixed.

antroids avatar Feb 15 '25 15:02 antroids

So it is is a x11 Problem? Plasma 6.3 on Wayland works as expected for me.

rkunschke avatar Feb 15 '25 16:02 rkunschke

Does drag work well on Plasma 6.3 Wayland for you? It never worked with x11. There should be the warning about this in Behavior settings tab when you are on x11.

antroids avatar Feb 15 '25 19:02 antroids

I was also affected by this https://github.com/luisbocanegra/plasma-panel-spacer-extended/issues/58, here is the upstream bug report https://bugs.kde.org/show_bug.cgi?id=499128 they said it may be a Qt bug but I am clueless about what could be the cause

luisbocanegra avatar Feb 15 '25 21:02 luisbocanegra

Does drag work well on Plasma 6.3 Wayland for you?

For me it doesn't

It never worked with x11.

yeah same in my project, had to use a hacky workaround for it https://github.com/luisbocanegra/plasma-panel-spacer-extended/commit/8937a06dbd119991227333deafe4fa3b0a302c27 maybe that also works on wayland, will check later today

luisbocanegra avatar Feb 15 '25 21:02 luisbocanegra

I can see the issue with dragging on Plasma 6.3 Wayland as well. For some reason drag is being stopped when the cursor moves from one component bounds to another, dispite that fact that the both components have single handler under them.

antroids avatar Feb 16 '25 18:02 antroids

Dragging not working on Plasma 6.3.1 (Wayland) either

davidwkr avatar Feb 19 '25 02:02 davidwkr

yeah same in my project, had to use a hacky workaround for it luisbocanegra/plasma-panel-spacer-extended@8937a06 maybe that also works on wayland, will check later today

It doesn't, I am building Plasma master with Qt 6.8.0 to see if the problem is caused by Qt, looking at the Arch Linux qt6-base versions 6.8.1 was packaged on 02-Dec-2024 and I don't remember building Plasma on December, if my memory doesn't fail me it was working fine all through October-November so there is a possibility of this being a Qt bug

luisbocanegra avatar Feb 20 '25 06:02 luisbocanegra

Works fine with Qt 6.8.0, so something changed in Qt 6.8.1

luisbocanegra avatar Feb 22 '25 06:02 luisbocanegra

Maybe this https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/6.8.1/release-note.md#qtdeclarative ?

3d3e32447e PointHandler: don't deactivate because of synth-mouse events If PointHandler is declared with acceptedButtons: Qt.NoButton it now means that the PointHandler does not care which buttons are pressed or not pressed: but it ignores synth-mouse events and responds only to events that come from the appropriate kind of device. If specific acceptedButtons are set, synthetic mouse-moves can deactivate it temporarily.

https://github.com/qt/qtdeclarative/commit/87b7a9b73840382c9eefe8e76af4dfea7ab510b5

luisbocanegra avatar Feb 22 '25 06:02 luisbocanegra

Have you had the chance to try with Qt 6.8.2?

davidwkr avatar Feb 22 '25 20:02 davidwkr

Yes, 6.8.1 6.8.2 even 6.9.0 all show the same behavior

luisbocanegra avatar Feb 22 '25 20:02 luisbocanegra

I was unable to reproduce the issue in test application outside the Plasma Panel, so it seems it's a Plasma bug. I've tested it only with the Application Title Bar widget, not sure that it's the same bug as in other widgets.

A PointerHandler has different behaviour at edges of the panel. Only horizontal dragging is detected at the top and bottom edges. I've compared grab point events and found differences in device section.

At the edges:

 "device": {
...
        "buttonCount": 0,
        "capabilities": 1,
        "maximumPoints": 1,
        "name": "Button rebinding device touchpad",
        "objectName": "",
        "pointerType": 2,
        "seatName": "",
        "systemId": -1,
        "type": 4,
        "uniqueId": {
            "numericId": -1
        }
    },

At the rest of the widget:

"device": {
...
        "buttonCount": 0,
        "capabilities": 1,
        "maximumPoints": 10,
        "name": "touchpad",
        "objectName": "",
        "pointerType": 2,
        "seatName": "seat0",
        "systemId": 8589934592,
        "type": 4,
        "uniqueId": {
            "numericId": -1
        }
    },

The first device is from Button Rebind Filter: https://invent.kde.org/plasma/kwin/-/blob/master/src/plugins/buttonrebinds/buttonrebindsfilter.cpp?ref_type=heads

After unloading the plugin drag works fine: qdbus6 org.kde.KWin /Plugins UnloadPlugin "buttonsrebind"

antroids avatar Feb 23 '25 19:02 antroids

This may be worth nothing but if I drag from some specific points it works. It is barely usable, I found this out by mistake. This is in KDE Plasma 6.3.1. I will be updating to 6.3.2 soon.

davidwkr avatar Feb 27 '25 21:02 davidwkr

You can decrease threshold value for drag event as temporary fix. A drag distance resets when the cursor reaches any edge of the panel. If the distance was enough before reaching the the, event will be triggered.

antroids avatar Feb 27 '25 22:02 antroids

This may be worth nothing but if I drag from some specific points it works. It is barely usable, I found this out by mistake. This is in KDE Plasma 6.3.1. I will be updating to 6.3.2 soon.

I found out something, what I've said applies to my 1080p laptop. But on my 2K laptop, I can't drag from any point.

davidwkr avatar Feb 28 '25 14:02 davidwkr

A drag distance resets when the cursor reaches any edge of the panel. If the distance was enough before reaching the the, event will be triggered.

Yeah, got annoyed by having to aim at the center so I decided to just unload the KWin plugin on boot for now...

luisbocanegra avatar Feb 28 '25 15:02 luisbocanegra

This may be worth nothing but if I drag from some specific points it works. It is barely usable, I found this out by mistake. This is in KDE Plasma 6.3.1. I will be updating to 6.3.2 soon.

I found out something, what I've said applies to my 1080p laptop. But on my 2K laptop, I can't drag from any point.

There is something even funnier (I describe it in more detail in the kde bug report), if there are two instances of the widget I can swap them between the broken state by intentionally dragging from the border, when I do that the other instance rejecting drags from anywhere starts working...

luisbocanegra avatar Feb 28 '25 15:02 luisbocanegra

I've added workaround to the Readme.

antroids avatar Mar 01 '25 16:03 antroids

Looks like this has been fixed by a recent update? Can't reproduce it anymore

luisbocanegra avatar Apr 19 '25 16:04 luisbocanegra

Looks like this has been fixed by a recent update? Can't reproduce it anymore

Yes, looks like it was fixed in plasma 6.3.4. Awesome, thank you for the update!

antroids avatar Apr 20 '25 10:04 antroids

I can't drag on 6.3.4 on my 1440p laptop

davidwkr avatar Apr 21 '25 19:04 davidwkr

I can't drag on 6.3.4 on my 1440p laptop

Could you please share your system details?

Mine are:

Operating System: KDE neon 6.3 KDE Plasma Version: 6.3.4 KDE Frameworks Version: 6.13.0 Qt Version: 6.8.3 Kernel Version: 6.11.0-19-generic (64-bit) Graphics Platform: Wayland Processors: 12 × AMD Ryzen 5 PRO 4650U with Radeon Graphics Memory: 14,9 GiB of RAM Graphics Processor: AMD Radeon Graphics Manufacturer: LENOVO Product Name: 20UH001JRT System Version: ThinkPad T14s Gen 1

antroids avatar Apr 22 '25 16:04 antroids

Sure

OS: CachyOS x86_64 Kernel: Linux 6.14.3-2-cachyos Packages: 1926 (pacman) Display (CMN1540): 2560x1440 @ 165 Hz (as 1921x1081) in 16" [Built-in] * KDE Plasma 6.3.4 KDE Frameworks Version: 6.13.0 Qt: 6.9.0 WM: KWin (Wayland) CPU: AMD Ryzen 7 6800H (16) @ 4.79 GHz GPU 1: NVIDIA Geforce RTX 3070 Ti Laptop GPU [Discrete] GPU 2: AMD Radeon 680M [Integrated] Memory: 23.76 GiB / 30.54 GiB (78%)

davidwkr avatar Apr 23 '25 00:04 davidwkr

KDE or QT issue, workaround is provided.

antroids avatar Aug 24 '25 10:08 antroids