Plasma/Wayland Known Significant Issues: Difference between revisions

From KDE Community Wiki
(Remove fixed showstoppers. Merge the two tablet ones. Clarify NVidia.)
(Remove the move by empty area showstopper)
(38 intermediate revisions by 6 users not shown)
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 cross-app window activation/focus protocol. As a result, windows don't get brought forward when activated by another app: https://bugs.kde.org/show_bug.cgi?id=424795
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 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).
* 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
* "Pin/keep open" functionality for Plasma applets does not work: https://bugs.kde.org/show_bug.cgi?id=400317
* Focus is inconsistent for XWayland apps: https://bugs.kde.org/show_bug.cgi?id=400987


=== No remote support ===
== Remote control support incomplete ==
We don't have an API yet for remote support. Even if we had things like TeamViewer would not work any more.
* Our screencasting API handles remote video streaming, but there is no API for remote input, so things like TeamViewer have no way to work (and would need to be ported to use those APIs once they exist).
 
'''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.
 
Other aspects of the "Wayland experience" with NVIDIA such as XWayland compatibility are outside of our influence.
 
'''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


== Input ==
== Input ==
=== No (wacom) Tablet support ===
* 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.
KWin lacks integration the tablet support from libinput. Also QtWayland and KWayland lack wrapping the API for it.
* No XModmap; we lack a functionality like XModmap to remap keys.
 
* Can't type accented characters in native Wayland Qt apps: https://bugs.kde.org/show_bug.cgi?id=411729
=== No configurable 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 ==
== 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 activities.
 
* Session sometimes crashes when changing Global Themes: https://bugs.kde.org/show_bug.cgi?id=422424
=== No window thumbnails ===
We don't have an API yet for window thumbnails.
 
=== No window move on empty area in breeze ===
Broke with switch to XdgShellV6. Needs new API added to Qt (native interface), KWayland and Breeze.


=== No activities ===
== Drag and Drop issues ==
Activities are probably not a must-have feature, but anyway this is annoying for those who got accustomed to them on X11.
* Session crashes when hovering over task manager after dragging an entry in task manager to another virtual desktop: https://bugs.kde.org/show_bug.cgi?id=418683
* plasmashell crashes when dragging a file from Dolphin over a panel: https://bugs.kde.org/show_bug.cgi?id=398440
* Cursor sometimes erroneously displays "no drag possible" icon even when it is possible: https://bugs.kde.org/show_bug.cgi?id=383794
* Can't abort drag-and-drop with the Esc key: https://bugs.kde.org/show_bug.cgi?id=405267

Revision as of 09:16, 28 December 2020

This page tracks the Wayland showstoppers throughout the stack.

KWin/compositing/window management

Remote control support incomplete

  • Our screencasting API handles remote video streaming, but there is no API for remote input, so things like TeamViewer have no way to work (and would need to be ported to use those APIs once they exist).

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.
  • Can't type accented characters in native Wayland Qt apps: https://bugs.kde.org/show_bug.cgi?id=411729

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 activities.
  • Session sometimes crashes when changing Global Themes: https://bugs.kde.org/show_bug.cgi?id=422424

Drag and Drop issues