Bug 502647 - Implement wlr foreign toplevel management wayland protocol
Summary: Implement wlr foreign toplevel management wayland protocol
Status: RESOLVED INTENTIONAL
Alias: None
Product: kwin
Classification: Plasma
Component: wayland-generic (other bugs)
Version First Reported In: 6.3.4
Platform: NixOS Linux
: NOR task
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-04-10 15:54 UTC by Siddhartha
Modified: 2025-12-10 14:15 UTC (History)
5 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Siddhartha 2025-04-10 15:54:11 UTC
From https://discuss.kde.org/t/feature-request-implement-wayland-protocol-in-kwin-to-support-activitywatch/30499

https://blogs.kde.org/2025/02/15/this-week-in-plasma-post-release-polishing/ mentions “Consider it a reminder for everyone still on X11 to try the Wayland session again, because the X11 session receives almost no testing from developers anymore!”

The main reason I’m still on X11 is because I use https://github.com/ActivityWatch/activitywatch for quantified self tracking. Afaiu, KWin on wayland needs support for https://wayland.app/protocols/wlr-foreign-toplevel-management-unstable-v1 for this to work as seamlessly.

Any chance KWin will consider implementing support for this protocol?
Comment 1 TraceyC 2025-04-10 17:05:44 UTC
Passing along to the kwin developers to consider
Comment 2 fabrice salvaire 2025-12-04 17:14:32 UTC
Why don't complete KWin dbus signal for ActivityWatcher ?

```
signal time=1764866497.215073 sender=:1.21 -> destination=(null destination) serial=17579 path=/component/kwin; interface=org.kde.kglobalaccel.Component; member=globalShortcutPressed
   string "kwin"
   string "Switch to Desktop 2"
   int64 0
signal time=1764866497.215315 sender=:1.21 -> destination=(null destination) serial=17580 path=/VirtualDesktopManager; interface=org.kde.KWin.VirtualDesktopManager; member=currentChanged
   string "a85e291b-cfb9-4bd7-91b2-a51cac1724fb"

signal time=1764866549.962055 sender=:1.21 -> destination=(null destination) serial=18618 path=/component/kwin; interface=org.kde.kglobalaccel.Component; member=globalShortcutPressed
   string "kwin"
   string "Walk Through Windows"
   int64 0
```

I only see a security issue...
Comment 3 fabrice salvaire 2025-12-04 17:19:14 UTC
For Key/Mouse tracking, it is possible to implement a Wayland proxy or WAYLAND_DEBUG env.

see https://github.com/stransky/wayland-proxy
Comment 4 Vlad Zahorodnii 2025-12-10 14:15:28 UTC
We already have a window management protocol https://wayland.app/protocols/kde-plasma-window-management. Perhaps you could ask activitywatch developers to add a backend that uses it.