1
0
Fork 0

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:
Marco Trevisan (Treviño) 2023-05-16 16:33:54 +02:00 committed by Marge Bot
parent fcdfc4c86f
commit 9374fad2b4
2 changed files with 35 additions and 0 deletions

View file

@ -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

View 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