feat(wayland): add plugin for wlroots based compositors

Authored by romangg on Apr 20 2020, 9:21 PM.


Group Reviewers

Adds a plugin that uses the Wrapland library to interact with compositors
supporting the wlr_output_management_unstable_v1 protocol.

If the backend plugin is available at runtime the interface is instantiated in
parallel with other interfaces and whichever interface has success in
retrieving a management global first is used while the other ones are deleted.

Building this plugin is optionally and requires upcoming Wrapland release
version 0.519.0.

Test Plan

Tested on sway and in Plasma session.

Diff Detail

R110 KScreen Library
No Linters Available
No Unit Test Coverage
Build Status
Buildable 25562
Build 25580: arc lint + arc unit
romangg created this revision.Apr 20 2020, 9:21 PM
Restricted Application added a project: Plasma. · View Herald TranscriptApr 20 2020, 9:21 PM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
romangg requested review of this revision.Apr 20 2020, 9:21 PM

Test on sway.

  • I noticed one issue with that. KScreen is not at all styled in a sway session. Kai helped me out with that. I needed to set the env var XDG_CURRENT_DESKTOP=KDE. I find this rather a broken concept for people in other sessions to go through to have proper styling of our Plasma apps. Is there something which can be done in KScreen to have proper styling from the start? Just set the env var in case it is not already set?
  • One other question is how layouts can be automatically applied in other sessions. Do users in such sessions need to start kded such that the KScreen daemon runs through it? Is that even possible?
romangg abandoned this revision.May 8 2020, 3:50 PM

Will become an external plugin with libkscreen Wayland headers being exported now.