Jump to content

Plasma/Wayland Known Significant Issues: Difference between revisions

From KDE Community Wiki
Davidedmundson (talk | contribs)
Ngraham (talk | contribs)
Add issues, update the status of existing issues, and improve the formatting
Line 1: Line 1:
This page tracks the Wayland showstoppers through out the stack
This page tracks the Wayland showstoppers throughout the stack.


== General issues ==
== KWin/compositing/window management ==
=== No vertical / horizontal maximize of Wayland native clients ===
No vertical / horizontal maximize of Wayland native clients. KWin uses NetWM modes internally to do this. Works with Xwayland clients. Would also work for Wayland clients, just the state cannot be exported to Wayland (c.f. Quick tiling).
KWin uses NetWM modes internally to do this. Works with Xwayland clients. Would also work for Wayland clients, just the state cannot be exported to Wayland (c.f. Quick tiling).


=== No remote support ===
Task Switchers are sometimes black and unusable: https://bugs.kde.org/show_bug.cgi?id=415798
We don't have an API yet for remote support. Even if we had things like TeamViewer would not work any more.


'''Partly fixed''' since we now have an API for screencast using a separate KWayland interface. There is also already support in xdg-desktop-portals for convenience of other apps and general support in Flatpaks. What's still missing is an API for remote input.
XWayland windows are upscaled and look blurry and ugly in HiDPI mode: https://bugs.kde.org/show_bug.cgi?id=389191


=== NVIDIA ===
Cursor lags under high CPU load: https://bugs.kde.org/show_bug.cgi?id=421131
 
Cursor is small when hovering over Firefox: https://bugs.kde.org/show_bug.cgi?id=421133
 
KDE app windows don't remember maximized state: https://bugs.kde.org/show_bug.cgi?id=409919
 
Can't dismiss a popup by clicking another window of the same application: https://bugreports.qt.io/browse/QTBUG-83972
 
 
== No remote support ==
We don't have an API yet for remote support. Even if we had one, things like TeamViewer would not work any more ('''Partly fixed''' since we now have an API for screencast using a separate KWayland interface. There is also already support in xdg-desktop-portals for convenience of other apps and general support in Flatpaks. What's still missing is an API for remote input.)
 
 
== NVIDIA ==
The NVIDIA blob uses a custom EGL extension which [https://phabricator.kde.org/D18570 Plasma 5.16 added support] for. It requires setting the ''KWIN_DRM_USE_EGL_STREAMS=1'' environment variable to activate.
The NVIDIA blob uses a custom EGL extension which [https://phabricator.kde.org/D18570 Plasma 5.16 added support] for. It requires setting the ''KWIN_DRM_USE_EGL_STREAMS=1'' environment variable to activate.


Line 17: Line 28:
'''Partly fixed:''' Requires manual activation.
'''Partly fixed:''' Requires manual activation.


=== No Clipboard Manager protocol ===
No clipboard history (e.g. Klipper and clipboard plasmoid) and no clipboard sync with KDE Connect.


'''In progress:''' https://phabricator.kde.org/T4449
== Clipboard ==
No clipboard manager protocol (for e.g. Klipper and clipboard plasmoid) and no clipboard sync with KDE Connect: https://phabricator.kde.org/T4449 (will be fixed with https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1)
 
Dragging-and-dropping a file to https://imgur.com in Firefox brings down the whole session: https://bugs.kde.org/show_bug.cgi?id=421130
 
 
== Screenshots ==
Spectacle is annoying and missing features on Wayland:
* Always requires a click to take a screenshot (will be fixed with https://phabricator.kde.org/D29407)
* Timer functionality doesn't work: https://bugs.kde.org/show_bug.cgi?id=414532 (will be fixed with https://phabricator.kde.org/D29408)
* Can't capture context menus: https://bugs.kde.org/show_bug.cgi?id=384637
* Active Window mode doesn't work: https://bugs.kde.org/show_bug.cgi?id=386271
* Global shortcuts to take screenshots don't work: https://bugs.kde.org/show_bug.cgi?id=407489 (will be fixed with https://phabricator.kde.org/D29408)
 


== Input ==
== Input ==
=== No configurable gestures ===
No configurable mouse gestures; X has the ability to accept fake input events to allow programs such as Easystroke. With the new security model of Wayland, such a program would need to be part of the compositor.
X has the ability to accept fake input events to allow programs such as Easystroke. With the new security model of Wayland, such a program would need to be part of the compositor.
 
No XModmap; we lack a functionality like XModmap to remap keys.


=== No XModmap ===
We lack a functionality like XModmap to remap keys.


== Plasma ==
== Plasma ==
=== Native Wayland windows are not restored ===
Session restoring does not include Wayland native windows. Our sessions management recover engine is based on the [https://www.x.org/releases/X11R7.7/doc/libSM/xsmp.html X Session Management Protocol] and there is apparently currently no generic concept to do it on Wayland. But on Qt it's plugin-able and GNOME has according to [https://wiki.gnome.org/Projects/SessionManagement/GnomeSession their wiki] an own implementation for some time.
Session restoring does not include Wayland native windows. Our sessions management recover engine is based on the [https://www.x.org/releases/X11R7.7/doc/libSM/xsmp.html X Session Management Protocol] and there is apparently currently no generic concept to do it on Wayland. But on Qt it's plugin-able and GNOME has according to [https://wiki.gnome.org/Projects/SessionManagement/GnomeSession their wiki] an own implementation for some time.


=== No window thumbnails ===
No window thumbnails; we don't yet have an API for this.
We don't have an API yet for window thumbnails.
 
No window move on empty area in breeze; This broke with switch to XdgShellV6. Needs new API added to Qt (native interface), KWayland and Breeze.
 
No activities.
 
Panel remains on top of full screen video: https://bugs.kde.org/show_bug.cgi?id=421132
 
Keyboard Layout indicator system tray item doesn't work: https://bugs.kde.org/show_bug.cgi?id=390079


=== No window move on empty area in breeze ===
Top panel overlaps KRunner: https://bugs.kde.org/show_bug.cgi?id=389964 (will be fixed with https://invent.kde.org/plasma/kwin/-/merge_requests/21)
Broke with switch to XdgShellV6. Needs new API added to Qt (native interface), KWayland and Breeze.


=== No activities ===
Top panel overlaps Yakuake: https://bugs.kde.org/show_bug.cgi?id=408468
Activities are probably not a must-have feature, but anyway this is annoying for those who got accustomed to them on X11.

Revision as of 17:00, 26 May 2020

This page tracks the Wayland showstoppers throughout the stack.

KWin/compositing/window management

No vertical / horizontal maximize of Wayland native clients. KWin uses NetWM modes internally to do this. Works with Xwayland clients. Would also work for Wayland clients, just the state cannot be exported to Wayland (c.f. Quick tiling).

Task Switchers are sometimes black and unusable: https://bugs.kde.org/show_bug.cgi?id=415798

XWayland windows are upscaled and look blurry and ugly in HiDPI mode: https://bugs.kde.org/show_bug.cgi?id=389191

Cursor lags under high CPU load: https://bugs.kde.org/show_bug.cgi?id=421131

Cursor is small when hovering over Firefox: https://bugs.kde.org/show_bug.cgi?id=421133

KDE app windows don't remember maximized state: https://bugs.kde.org/show_bug.cgi?id=409919

Can't dismiss a popup by clicking another window of the same application: https://bugreports.qt.io/browse/QTBUG-83972


No remote support

We don't have an API yet for remote support. Even if we had one, things like TeamViewer would not work any more (Partly fixed since we now have an API for screencast using a separate KWayland interface. There is also already support in xdg-desktop-portals for convenience of other apps and general support in Flatpaks. What's still missing is an API for remote input.)


NVIDIA

The NVIDIA blob uses a custom EGL extension which Plasma 5.16 added support for. It requires setting the KWIN_DRM_USE_EGL_STREAMS=1 environment variable to activate.

Other aspects of the "Wayland experience" with NVIDIA such as XWayland compatibility are outside of our influence.

Partly fixed: Requires manual activation.


Clipboard

No clipboard manager protocol (for e.g. Klipper and clipboard plasmoid) and no clipboard sync with KDE Connect: https://phabricator.kde.org/T4449 (will be fixed with https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1)

Dragging-and-dropping a file to https://imgur.com in Firefox brings down the whole session: https://bugs.kde.org/show_bug.cgi?id=421130


Screenshots

Spectacle is annoying and missing features on Wayland:


Input

No configurable mouse gestures; X has the ability to accept fake input events to allow programs such as Easystroke. With the new security model of Wayland, such a program would need to be part of the compositor.

No XModmap; we lack a functionality like XModmap to remap keys.


Plasma

Session restoring does not include Wayland native windows. Our sessions management recover engine is based on the X Session Management Protocol and there is apparently currently no generic concept to do it on Wayland. But on Qt it's plugin-able and GNOME has according to their wiki an own implementation for some time.

No window thumbnails; we don't yet have an API for this.

No window move on empty area in breeze; This broke with switch to XdgShellV6. Needs new API added to Qt (native interface), KWayland and Breeze.

No activities.

Panel remains on top of full screen video: https://bugs.kde.org/show_bug.cgi?id=421132

Keyboard Layout indicator system tray item doesn't work: https://bugs.kde.org/show_bug.cgi?id=390079

Top panel overlaps KRunner: https://bugs.kde.org/show_bug.cgi?id=389964 (will be fixed with https://invent.kde.org/plasma/kwin/-/merge_requests/21)

Top panel overlaps Yakuake: https://bugs.kde.org/show_bug.cgi?id=408468