D14542: KCM using new virtual desktops DBus interface
David Edmundson
noreply at phabricator.kde.org
Thu Nov 1 18:15:47 GMT 2018
davidedmundson requested changes to this revision.
davidedmundson added a comment.
This revision now requires changes to proceed.
I understand what you're doing with the syncing now, it makes sense in principle.
Can you copy-paste what you typed to me into the code.
INLINE COMMENTS
> desktopsmodel.cpp:202
> +
> + m_desktops[desktopIndex] = id;
> + m_names[id] = name;
this is setting it to the value it already is
> desktopsmodel.cpp:251
> + s_virtualDesktopsInterface,
> + QStringLiteral("removeDesktop"));
> +
If I have 3 desktops with 3 IDs
id1 -> desktop1
id2 -> desktop2
id3 -> desktop3
and I delete desktop2
Here I delete 3 and then sync the names, leaving me with:
id1 -> desktop1
id2 -> desktop3
it looks fine within the confines of this KCM, but as soon as we rely on those IDs for external use (even just the fact that a user might have his windows on id3 and none on id2) it'll fall apart.
----------
When you make the change sending insert/remove instead of renaming we'll need to make sure we do removal before insertion.
desktopCreated relies on the index of the newly created desktop to be in the same place as m_desktops has it.
If we insert first, the position will be off as the server will still have the about-to-be-deleted entries
REPOSITORY
R108 KWin
REVISION DETAIL
https://phabricator.kde.org/D14542
To: hein, mart, davidedmundson, ltoscano, zzag
Cc: davidedmundson, broulik, plasma-devel, kwin, mkulinski, ragreen, jackyalcine, Pitel, iodelay, bwowk, ZrenBot, ngraham, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20181101/2e8f9d81/attachment.html>
More information about the Plasma-devel
mailing list