davidedmundson requested changes to this revision.
davidedmundson added inline comments.
This revision now requires changes to proceed.
INLINE COMMENTS
> screenmapper.cpp:65
> +
> +void ScreenMapper::handleScreenAdded(QScreen *screen)
> +{
I don't think you want to track QScreens.
We need to handle the case of overlapping (cloned) screens.
You'll have two QScreen objects, two screen pool IDs, but only one desktop
view. (and thus only one folder view).
If we were previously spanned, and then go into clone, we need Folderview to
act like there's only one screen attached. I don't think this will.
We need the same logic here, that ShellCorona has for creating DesktopViews.
This either means we do it like you're doing, then copy and paste
ShellCorona::isOutputRedundant here.
or the much neater solution for your problem, would be to move the overlap
detection from ShellCorona to ScreenPool, then use that as the canonical source
of screens attached which you can then use here with it all in sync.
(I sort of started that in the p-w branch davidedmundson/screenpool_changes)
REPOSITORY
R119 Plasma Desktop
REVISION DETAIL
https://phabricator.kde.org/D8493
To: amantia, #plasma, ervin, mlaurent, dvratil, hein, aacid, davidedmundson
Cc: davidedmundson, broulik, mart, plasma-devel, ZrenBot, progwolff,
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol