Preliminary Checks
What happened?
Zen exhibits visible tearing on rapidly-changing GPU surfaces — primarily <video> and slippy-map canvases (Komoot, RideWithGPS) when panning — while page chrome and static content render cleanly. The same machine, same Wayland session, same Mesa, and same Firefox base version (149) running stock Firefox shows no tearing. Software WebRender substantially reduces the tearing but does not eliminate it on map sites, and tearing in fullscreen video remains unacceptable. I have not found any pref combination that produces tear-free rendering in Zen on this hardware.
Pref configurations tested:
| Config |
gfx.webrender.software |
gfx.webrender.compositor |
widget.dmabuf.disabled |
widget.wayland.explicit-sync.enabled |
Result |
| Zen defaults (hardware WebRender, Zen-baked compositor=false) |
false |
false |
false |
true |
Heavy tearing on maps and video |
| Hardware WebRender + Firefox-stock compositor |
false |
true |
false |
true |
Worse tearing than Zen defaults |
| Hardware WebRender + DMA-BUF/explicit-sync forced off |
false |
false |
true |
false |
Heavy tearing (similar to defaults) |
| Software WebRender (current workaround) |
true |
false |
true |
false |
Tearing reduced on maps but still visible when panning; fullscreen video tearing remains unacceptable |
Eliminated as causes:
- Profile state. Fresh profile via
--ProfileManager, no extensions, no Mods, default prefs — tears identically.
- Profile-baked omni.ja pref differences. I extracted
defaults/preferences/firefox.js from Zen 1.19.11b's browser/omni.ja and from Flatpak Firefox 150's, and diffed them. The only GPU-relevant difference was gfx.webrender.compositor, which Zen ships as false. Forcing it to true (the Firefox-stock value) made tearing worse, not better.
- Flatpak runtime / xdg-desktop-portal GPU path. Flatpak Firefox 150 from Flathub renders Komoot, RideWithGPS, and
<video> cleanly with hardware WebRender on the same machine and Flatpak runtime stack. Splits Flatpak/sandbox out of the suspect list.
- GPU / Mesa / Wayland / kernel. Native Firefox 149 (Fedora
firefox-149.0.2-1.fc43.aarch64) renders cleanly with hardware WebRender. Same kernel, same Mesa, same compositor — only Zen tears.
By elimination, the cause appears to live in Zen's build itself — custom Gecko patches, compile-time flags, or build-level differences against upstream Firefox 149. I cannot rule this in or out from the user side; it would need someone with access to the Zen build configuration to compare WebRender / compositor / Wayland-related patches against stock Firefox 149.
Environment: Fedora 43, kernel 6.19.13-400.asahi.fc43.aarch64+16k, Apple Silicon via Asahi Linux (aarch64), Asahi Mesa, Wayland/GNOME.
Troubleshooting and the bisect documented above were performed with the assistance of Claude Code.
Expected behavior
Map canvases (Komoot, RideWithGPS) and <video> surfaces render without tearing when panning or playing, matching stock Firefox 149 on the same machine.
Actual behavior
Horizontal/diagonal frame-discontinuity tearing is visible on map canvases when panning and on <video> surfaces during playback; no pref combination eliminates it.
Steps to reproduce
- Install Zen 1.19.11b on Asahi Linux (aarch64) under Wayland (Fedora 43, GNOME).
- Launch Zen with default settings, or with
--ProfileManager and create a fresh profile (no extensions, no Mods).
- Visit https://www.komoot.com/ or https://ridewithgps.com/ and open any route map.
- Pan the map by click-dragging or scroll-zooming.
- Observe horizontal/diagonal tearing on the map canvas.
- For comparison, open YouTube and play any video fullscreen — tearing is visible there too.
- Repeat steps 3–6 in stock Firefox 149 on the same machine — no tearing.
Screenshots and videos
Version
1.19.11b
What platform are you seeing the problem on?
Linux (Flatpak)
What component is this issue related to?
Performance
Relevant log output if applicable
Preliminary Checks
What happened?
Zen exhibits visible tearing on rapidly-changing GPU surfaces — primarily
<video>and slippy-map canvases (Komoot, RideWithGPS) when panning — while page chrome and static content render cleanly. The same machine, same Wayland session, same Mesa, and same Firefox base version (149) running stock Firefox shows no tearing. Software WebRender substantially reduces the tearing but does not eliminate it on map sites, and tearing in fullscreen video remains unacceptable. I have not found any pref combination that produces tear-free rendering in Zen on this hardware.Pref configurations tested:
gfx.webrender.softwaregfx.webrender.compositorwidget.dmabuf.disabledwidget.wayland.explicit-sync.enabledEliminated as causes:
--ProfileManager, no extensions, no Mods, default prefs — tears identically.defaults/preferences/firefox.jsfrom Zen 1.19.11b'sbrowser/omni.jaand from Flatpak Firefox 150's, and diffed them. The only GPU-relevant difference wasgfx.webrender.compositor, which Zen ships asfalse. Forcing it totrue(the Firefox-stock value) made tearing worse, not better.<video>cleanly with hardware WebRender on the same machine and Flatpak runtime stack. Splits Flatpak/sandbox out of the suspect list.firefox-149.0.2-1.fc43.aarch64) renders cleanly with hardware WebRender. Same kernel, same Mesa, same compositor — only Zen tears.By elimination, the cause appears to live in Zen's build itself — custom Gecko patches, compile-time flags, or build-level differences against upstream Firefox 149. I cannot rule this in or out from the user side; it would need someone with access to the Zen build configuration to compare WebRender / compositor / Wayland-related patches against stock Firefox 149.
Environment: Fedora 43, kernel 6.19.13-400.asahi.fc43.aarch64+16k, Apple Silicon via Asahi Linux (aarch64), Asahi Mesa, Wayland/GNOME.
Troubleshooting and the bisect documented above were performed with the assistance of Claude Code.
Expected behavior
Map canvases (Komoot, RideWithGPS) and
<video>surfaces render without tearing when panning or playing, matching stock Firefox 149 on the same machine.Actual behavior
Horizontal/diagonal frame-discontinuity tearing is visible on map canvases when panning and on
<video>surfaces during playback; no pref combination eliminates it.Steps to reproduce
--ProfileManagerand create a fresh profile (no extensions, no Mods).Screenshots and videos
Version
1.19.11b
What platform are you seeing the problem on?
Linux (Flatpak)
What component is this issue related to?
Performance
Relevant log output if applicable