Skip to content

[gui] Top bar flicker on resize while notification present #4590

@tobe2098

Description

@tobe2098

Describe the bug
While the GUI has the bottom right notification (for example, downloading an image), maximizing the size of the GUI may put the window in a "bad state" where the top flickers continuously until the next resize event.

To Reproduce
How, and what happened?

  1. Open GUI.
  2. Launch a VM you do not have an image for.
  3. Resize the window to the full screen (drag to the top)

Expected behavior
No flickering.

Logs

2025-12-19 17:43:24.397489 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:43:24.397546 DEBUG Saving window size Size(1920.0, 1001.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:43:26.201372 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:43:26.201438 DEBUG Saving window size Size(1680.0, 1003.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:43:31.664417 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:43:31.664480 DEBUG Saving window size Size(1920.0, 1001.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:43:33.617903 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:43:33.618007 DEBUG Saving window size Size(1680.0, 1003.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:43:35.682511 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:43:35.682571 DEBUG Saving window size Size(1680.0, 1003.0) for screen size Size(1920.0, 1048.0)
^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A2025-12-19 17:43:52.665611 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:43:52.665693 DEBUG Saving window size Size(1920.0, 1001.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:43:54.650400 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:43:54.650506 DEBUG Saving window size Size(1680.0, 1003.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:44:01.149137 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:44:01.149219 DEBUG Saving window size Size(1920.0, 1001.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:44:02.199390 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:44:02.199470 DEBUG Saving window size Size(960.0, 477.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:44:05.551404 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:44:05.551489 DEBUG Saving window size Size(1680.0, 1003.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:44:07.148714 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:44:07.148879 DEBUG Saving window size Size(1920.0, 1001.0) for screen size Size(1920.0, 1048.0)
2025-12-19 17:44:09.168801 DEBUG Got Screen{frame: Rect.fromLTRB(0.0, 0.0, 1920.0, 1080.0), scaleFactor: 1.0, visibleFrame: Rect.fromLTRB(0.0, 32.0, 1920.0, 1080.0)}
2025-12-19 17:44:09.168961 DEBUG Saving window size Size(1680.0, 1003.0) for screen size Size(1920.0, 1048.0)

Additional info

  • OS: Ubuntu 24.04
  • Compositor: X11
  • CPU architecture or model: x86
  • multipass version: edge
Screencast.from.2025-12-19.17-45-32.webm

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions