Window can get lost on non-existent monitor when extending and unplugging
Affected version
- OS: Fedora 39
- Gnome: 45.1 (Wayland session)
- Display Mgr: Wayland
- Yes
Bug summary
When plugging into an external monitor and extending the display, if a window is left on the external display, it may get stuck off screen when unplugging from the monitor.
Steps to reproduce
- Plug into external monitor, extend the screen.
- Open Firefox, browse to a video and play it
- Maximize the video on the external monitor
- Unplug the monitor and lock the screen
- Unlock the screen and open / close the overview
- Observe the firefox window will appear in the overview, but will move off screen when closing the overview
Steps to recover from the undesirable state
- Open the overview
- Grab the firefox window in the overview
- Drag the firefox window onto a different workspace
- Close the overview
- Observe the firefox window is now back on the notebook's display and is visible again
What happened
When unplugging the monitor firefox stayed off screen at the original coordinates as if the monitor was still plugged in.
What did you expect to happen
Unplugging from the monitor usually restores the windows back onto the laptop display and attempts to scale them back to the internal display's settings.
Relevant logs, screenshots, screencasts etc.
I looked through dmesg
and journalctl
but could not find much relevant information on the window states.
The only thing I could find related to gnome-shell or mutter was:
Nov 19 18:48:01 hostname gnome-shell[2611]: meta_window_set_stack_position_no_sync: assertion 'window->stack_position >= 0' failed
Nov 19 18:47:48 hostname gnome-shell[2611]: meta_window_set_stack_position_no_sync: assertion 'window->stack_position >= 0' failed
Please let me know if there is a better log I can find and I will work to reproduce the issues again while screen casting.