Set extend mode after plugging a new monitor (BugFix)#1286
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1286 +/- ##
==========================================
+ Coverage 44.10% 44.27% +0.17%
==========================================
Files 358 364 +6
Lines 38765 38897 +132
Branches 6571 6584 +13
==========================================
+ Hits 17096 17222 +126
- Misses 21006 21007 +1
- Partials 663 668 +5
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
17bb5a8 to
09ce2b2
Compare
Hook25
left a comment
There was a problem hiding this comment.
A few changes below, but I've tried both this and the "original" script on my machine and it doesn't seem to work with i3 (unsurprisingly, as it doesn't use Mutter). My question is, how limiting is this? We do use Checkbox on non-mutter platforms as well (like Mir for example). Could this be a problem? Is it possible to somehow calculate the OBJECT_PATH, NAME and INTERFACE to "fix" this?
a65290e to
254ce02
Compare
With the current implementation, relying on xrandr and gnome-randr, we are covering everything X11 + Gnome Wayland. With the latest few commits I re-included support for X11 via Got part of the Both handlers inherit from the same abstract class so that the interface is the same and the EDID test itself doesn't care about the actual system. Tested on:
|
Hook25
left a comment
There was a problem hiding this comment.
+1, ty for having updated this
* Change: replaced xrandr/gnome-randr with dbus signals for EDID test * Change: moved monitor config dbus to checkbox support * Fix: tests for edid cycle * fixup! Fix: tests for edid cycle * Add: reference to original script * Change: renamed Gnome Monitor class and files * Add: abstract class for monitor config handlers * Add: xrandr parser * Fix: gnome class name * Change: helper to return the proper monitor config * Add: tests for xrandr parser * Change: preferred mode for dbus as well * Change: moved named tuple back to xrandr * Fix: moved more zapper-related function under the CM * Fix: sorted dictionary * Fix: docstrings and another test * Fix: removed get max function
Description
The Zapper EDID cycling job is failing on laptops because Mirror mode is making the external monitor match the internal display resolution. Like this:
gnome-randrcan't be used for applying monitor configurations, and in general having two utilities (xrandr and gnome-randr) for x11 and wayland doesn't help with maintainability of this test.This PR relies on DBus and Mutter to retrieve the current monitor configuration and apply extended mode every time we switch EDID.
Resolved issues
Resolves ZAP-677
Documentation
Up to date
Tests
Tested on 202302-31240
side-loading the providerrunning from source. Previously failing like above (ref).