ITADN

libscreensaver: fix detection of monitor hotplug

#463Pull Requestvamposdecampos 创建于 2024-10-30已合并
V
vamposdecamposcommented
When hot-adding monitors (e.g. DisplayPort), I was seeing unobscured content behind the screensaver. Debug mode revealed: CsScreen received 'monitors-changed' signal from GdkScreen 25675900 Found 2 Xinerama screens on display :0 Monitor 0 is 0,0 1920 x 1080 Monitor 1 is 1920,0 1920 x 1200 Cinnamon Screensaver compiled without Solaris Xinerama support Scale factor of 1 applied. Monitor 0 is 0,0 1920 x 1080 Scale factor of 1 applied. Monitor 1 is 1920,0 1920 x 1200 Screen rect (0,0-3840x1200) and 2 monitor rects (0,0-503284330x1200) DO NOT add up, skipping change notification cinnamon-screensaver This could be caused by `total_monitors` rect being uninitialized; zero it. Might fix #437. Seems like this could fix #460, though the log therein does _not_ say "DO NOT add up". Ref: #437 Ref: #460 Fixes: d23d1ea "Rework behavior surrounding sleep, display changes, fractional scaling."
合并状态:已合并 合并于 2024-11-26 关闭于 2024-11-26 2 条评论