Scaling issues with Chrome Wayland on external monitors on GNOME 46
Affected version
- Fedora 40 Beta
- GNOME/Mutter 46.0
- Wayland session (X.org unaffected)
- Intel Core i5-11320H + Intel Xe Graphics (TGL GT2)
Bug summary
Chrome Wayland exhibits various scaling issues with external monitors hooked up to my laptop:
- Maximised Chrome windows on an external monitor (tested with 4K and 1080p, 200% scale) are rendered at 1/4th of the size they should be
Note that enabling scale-monitor-framebuffer
fixes this issue. I think this might be related to direct scanout, because taking a screenshot (which opens the overlay) or dragging any other window onto the TV causes the display to pop to full size again. Pictures are attached below.
- Maximised Chrome windows on an external monitor (1080p, 100% scale) are momentarily scaled incorrectly before snapping into place
This issue occurs regardless of scale-monitor-framebuffer
. I suspect direct scanout for this issue as well, because when I start screen recording, it only shows a white boundary instead of the window being brokenly scaled. I've attached both a video and screen capture below.
These bugs are also reproducible with Electron/Wayland apps, and do not occur with Chrome/Xwayland or Electron/Xwayland. Let me know if I should open 2 separate issues.
Steps to reproduce
- Ensure Chrome is maximised.
- Move it to the secondary monitor (4K/1080p at 200% scale with
scale-monitor-framebuffer
off, or 1080p at 100% scale) - Note: You can also open Chrome on the secondary monitor and maximise it there for the same effect.
What happened
In the former case, Chrome is rendered at 1/4th the size it should be. In the latter case, it is momentarily distorted before snapping into the correct size.
What did you expect to happen
Chrome should be rendered at the correct size in both cases.
Relevant logs, screenshots, screencasts etc.
My laptop's display is 1080p with 100% scale, for reference if it is important.