mart added a comment.
In https://phabricator.kde.org/D3822#71673, @davidedmundson wrote: > Given the only member variable we use is m_screenPool-> shouldn't this just be in ScreenPool? > > Also I don't understand how this is works: > > qxcbconnection::handleXcbEvent > > calls ::filterNativeEvent > before ::handleScreenChange > > which means this code is running before qGuiApp->primaryScreen has updated. the weird thing is that i'm getting a lot of screen change events, so that's probably why it works even if it's called in the wrong order. putting a bit of debug i get this: Name of current primary screen "eDP-1" stored name in screenpool "eDP-1" Name of current primary screen "eDP-1" stored name in screenpool "eDP-1" Name of current primary screen ":0.0" stored name in screenpool "eDP-1" Name of current primary screen "HDMI-1" stored name in screenpool ":0.0" Name of current primary screen "HDMI-1" stored name in screenpool "HDMI-1" can be seen going from the internal screen to the fake one, then from the fake one to the external one REPOSITORY R120 Plasma Workspace REVISION DETAIL https://phabricator.kde.org/D3822 EMAIL PREFERENCES https://phabricator.kde.org/settings/panel/emailpreferences/ To: mart, #plasma, sebas, davidedmundson Cc: plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas