Summary:
The WaylandPrivate::virtualDesktopManagement object is loaded
asyncronously.
It's null until we finish fetching the registry.
A code path could call the desktopNames in that time.
Test Plan:
Had a crash
Couldn't reproduce reliably
Reviewers: #plasma, hein
Reviewed By: #plasma, hein
Subscribers: hein, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D19029
Summary:
PlasmaVirtualDesktop at a protocol level is double buffered.
There's a done() command emitted after property changes. After this the
name might have changed.
Test Plan:
Changed a desktop name (with relevant kwin patch)
Name changed in the pager tooltip
Reviewers: #plasma, hein
Reviewed By: #plasma, hein
Subscribers: zzag, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18512
Summary:
While I think mixing IPC systems in this class is not the way to go
long-term, we have a strong desire to ship a complete user experience
for virtual desktops on Wayland in 5.15. As D17691 has been delayed
and did not make the Frameworks 5 release we can depend on for 5.15,
this is Plan B.
Reviewers: #plasma, davidedmundson, mart
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18290
Summary:
Includes, among other things:
* A refactoring towards supporting more than one desktop per window,
for an eventual virtual desktops / activities merge
* A scheme for process-internal window ids on Wayland as DND payload
so DND in and to the Pager works in the shell
* Implemented various previously missing behavior in WaylandTasksModel
such as implicit moves of windows to the current desktop on various
actions
* Expanded VirtualDesktopInfo API so the Pager can better abstract
over windowing systems
* Implicit internal sharing of VirtualDesktopInfo since there are many
more instances now
* Various cleanups
Still missing:
* Fixing the VirtualDesktops data role in the grouping proxy
* The protocol doesn't have desktop creation/destruction yet, so some
of the related logic is still missing
* Some FIXME TODOs in the code when I was unhappy with the current
KWayland API
This code is largely untested and subject to change.
Depends on D12820 and relates to T4457.
Reviewers: mart, mvourlakos, davidedmundson
Reviewed By: davidedmundson
Subscribers: alexde, anthonyfieroni, zzag, ngraham, abetts, plasma-devel
Tags: #plasma
Maniphest Tasks: T4457
Differential Revision: https://phabricator.kde.org/D13745
Summary: For use by Desktop Pagers using libtaskmanager.
Reviewers: #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D2675