![]() Registered Member ![]()
|
Does anyone know how KDE generates the [ScreenConnectors] section of plasmashellrc? I've been digging online for hours but have found no documentation on how plasmashellrc is generated within KDE. I have found out it is not through the kscreen background service. Is it directly from Xorg in some fashion? Is there some way to keep plasmashell from updating this section (make it static)?
P.S. I am in search of this information in a quest to solve the issue posted on the Manjaro forums here: https://forum.manjaro.org/t/plasmashell-multi-monitor-unwanted-screen-reorder-on-wake-displaced-panels, and it seems like I am not the only one with this problem trying to find this out https://www.reddit.com/r/kdeneon/comments/biyx46/plasmashellrc_and_multimonitor/ |
![]() Registered Member ![]()
|
See the ScreenPool constructor in plasma-workspace:shell/screenpool.cpp for the initial load of the ScreenConnectors config:
ScreenPool::save() looks like it sets up a timer that will sync m_configGroup to disk every 30s. |
![]() Registered Member ![]()
|
Might try switching out the QScreen::name() usages with QScreen::serialNumber() (or possibly a string-ified manufacturer()/model()/serialNumber() tuple) since the QXcbScreen implementation actually does the right thing and parses out the EDID serial number from XRandr.
EDIT: Don't forget to fix up ScreenPool callers that use QScreen::name() like ShellCorona::load() too. |
![]() Registered Member ![]()
|
That approach seems to work pretty well. |
Registered users: Bing [Bot], Google [Bot], Yahoo [Bot]