Skip to content

Window is constantly repainted, resulting in high system utilization #1024

Description

@hulthe

Describe the bug
Window is almost constantly being repainted when displaying the Home view or when showing a Space.
This results in high CPU and GPU usage, and a poor longevity for battery-powered devices.

The repainting seems to be less aggressive (but is still highly noticeable) when a chat is open.

To Reproduce
Steps to reproduce the behavior:

  1. Install commet & log in.
  2. Ensure you have joined at least 1 room.
  3. Have the "Home" view open.
  4. Observe that the window is constantly being repainted. This can be done in a few ways.
    • Check system monitor and observe consistently high CPU/GPU usage.
    • Use a window manager that tells you when a window is being repainted.

Expected behavior
The window should only repaint when something has changed.
Ideally, it should only repaint the individual widgets that have changed, not the entire window.
I don't know much about flutter, but perhaps this blog post can be useful: https://medium.com/@rk0936626/improve-app-performance-by-reducing-unnecessary-redraws-of-widgets-in-flutter-412c09ff26b5

Screenshots
Here is one state where commet is constantly being repainted:

Image

Sadly, Niri doesn't let me screen-record the debug-toggle-damage effect.

Additional context
A notable exception is that the window is repainted much less often when the settings view is opened.

The repaints doesn't seem to be triggered by room updates. I reproduced this with a brand-new account, and was able to observe the constant repainting after creating a new room.

Device Information

Device
Platform: linux
Version: v0.4.2
Git Hash: 2304e82f134bc92de82f22f927b9f7885467ee5b
Detail: flatpak
Build Timestamp: 1777087211085 (April 25, 2026)

System Info
Name: GNOME
Version: 48 (Flatpak runtime)

Display Server: wayland
Desktop Environment: wayland

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions