tests/stacking: Add test for strut changes together with monitors changes
We have an issue causing windows to be hidden below struts when monitor changes events happen. While this was easily reproducible in gnome-shell we had not a mutter stacking test checking it. Here it is now. Related: https://gitlab.gnome.org/GNOME/mutter/-/issues/1627 Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3701>
This commit is contained in:
parent
fcdfc4c86f
commit
9374fad2b4
2 changed files with 35 additions and 0 deletions
|
@ -731,6 +731,7 @@ stacking_tests = [
|
|||
'sloppy-focus',
|
||||
'sloppy-focus-pointer-rest',
|
||||
'sloppy-focus-auto-raise',
|
||||
'strut-monitor-changes'
|
||||
]
|
||||
|
||||
foreach stacking_test: stacking_tests
|
||||
|
@ -742,6 +743,7 @@ foreach stacking_test: stacking_tests
|
|||
],
|
||||
is_parallel: false,
|
||||
timeout: 60,
|
||||
should_fail: stacking_test.startswith('fixme-'),
|
||||
)
|
||||
|
||||
if have_installed_tests
|
||||
|
|
33
src/tests/stacking/strut-monitor-changes.metatest
Normal file
33
src/tests/stacking/strut-monitor-changes.metatest
Normal file
|
@ -0,0 +1,33 @@
|
|||
new_client w wayland
|
||||
create w/1 csd
|
||||
|
||||
show w/1
|
||||
wait
|
||||
|
||||
maximize w/1
|
||||
wait_reconfigure w/1
|
||||
assert_position w/1 0 0
|
||||
assert_size w/1 MONITOR_WIDTH MONITOR_HEIGHT
|
||||
|
||||
set_strut 0 0 MONITOR_WIDTH MONITOR_HEIGHT*0.2 top
|
||||
reload_monitors
|
||||
wait_reconfigure w/1
|
||||
assert_position w/1 0 MONITOR_HEIGHT*0.2
|
||||
assert_size w/1 MONITOR_WIDTH MONITOR_HEIGHT*0.8
|
||||
|
||||
reload_monitors
|
||||
add_strut 0 0 MONITOR_WIDTH/2 MONITOR_HEIGHT left
|
||||
|
||||
wait_reconfigure w/1
|
||||
assert_position w/1 MONITOR_WIDTH/2 MONITOR_HEIGHT*0.2
|
||||
assert_size w/1 MONITOR_WIDTH/2 MONITOR_HEIGHT*0.8
|
||||
|
||||
clear_struts left
|
||||
# A Monitor reconfiguration in between strut changes is causing troubles, see:
|
||||
# https://gitlab.gnome.org/GNOME/mutter/-/issues/1627
|
||||
reload_monitors
|
||||
add_strut 0 0 MONITOR_WIDTH/2 MONITOR_HEIGHT left
|
||||
|
||||
wait_reconfigure w/1
|
||||
assert_position w/1 MONITOR_WIDTH/2 MONITOR_HEIGHT*0.2
|
||||
assert_size w/1 MONITOR_WIDTH/2 MONITOR_HEIGHT*0.8
|
Loading…
Reference in a new issue