Skip to content
Commit 43ca3339 authored by Marco Martin's avatar Marco Martin
Browse files

ScreenPool as the source of truth of QScreen info

index desktop views by qscreen instead of id, making ScreenPool
the single source of truth for the mapping between screen names
and ids. This is less error prone and easier to consistency check
(if view->screenToFollow() is ever different to its has key it will
assert)
The whole logic of screen management is moved to ScreenPool.
ShellCorona will have to never call QGuiApp->screens, but only trust what ScreenPool it's telling it

Also adds an autotests on screenpool which makes a fake wayland server which sends screen added/removed/changed events
parent cb4d53bd
Pipeline #141091 passed with stage
in 8 minutes and 32 seconds
  • Developer

    This commit makes Plasmashell idle at 100% CPU for me, even with zero widgets and a blank color wallpaper. Plasma Desktop as well as Plasma Mobile are both affected.

    valgrind shows that it's just hitting the event loop constantly.

  • Author Developer

    ugh, can't reproduce :/ can you also try to run it in hotspot to see its dump?

    Edited by Marco Martin
  • Developer

    To close the loop here, we debugged and Marco fixed this with c384aa88.

0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment