BrowserDigest Browser Digest
Back to Blog

Firefox logo

What Changed in Gecko: Firefox 134

GeckoView Engine
📅 Released January 7, 2025 👥 12 new contributors 🎬 HEVC hardware acceleration

Why This Matters

Gecko is the last truly independent browser engine — the only major alternative to Google’s Blink. Every Firefox release ripples through Tor Browser, LibreWolf, Mullvad Browser, and the broader privacy-focused ecosystem. Firefox 134 brings HEVC hardware decoding, two new JavaScript conveniences in RegExp.escape() and Promise.try(), CSS improvements for absolute positioning, and notable DevTools upgrades. Here’s everything.


CSS

align-self, justify-self, and the place-self shorthand now work on absolutely positioned elements (bug 1920160). Previously, these properties only applied in flex and grid contexts. This is a meaningful improvement for layout: centering an absolutely positioned element no longer requires the transform: translate(-50%, -50%) hack.


JavaScript

RegExp.escape() is the kind of utility that should have existed from day one. Pass any string and get back a safely escaped version that can be used as a literal pattern in the RegExp() constructor — no more hand-rolling escape functions (bug 1918235).

Promise.try() wraps any callback — sync or async, returning or throwing — in a Promise. It’s a convenience method that eliminates the new Promise(resolve => resolve(fn())) boilerplate and ensures uniform error handling through .catch() (bug 1917879).

Behind an experimental flag, Intl.DurationFormat is available in Nightly for locale-sensitive duration formatting (bug 1648139).


Web APIs

PushManager.supportedContentEncodings is now available, letting push notification implementers discover which encryption algorithms are supported before encrypting payloads (bug 1497430).

AudioParam.value can now be set during scheduled automation events — previously, the assignment was silently ignored, causing hard-to-debug audio issues (bug 1308435).

ReadableStreamBYOBReader.read() gains an options.min parameter, letting callers specify the minimum number of elements per read — useful for protocols with fixed-size data structures (bug 1864406).

WebRTC simulcast for screen sharing with VP8 is now supported: MediaStreamTrack objects from getDisplayMedia() can be encoded as multiple simulcast layers, improving bandwidth adaptation for screen-shared video (bug 1692873).


Security & Privacy

Firefox 134 follows the HTML spec’s transient user activation model more closely. Popup blocking is now less aggressive in cases where previous versions were overly strict — reducing false-positive blocking prompts while maintaining protection against genuine abuse.


Performance

HEVC (H.265) hardware-accelerated playback is now supported on Windows. This is a major media milestone — HEVC delivers better compression than H.264 at the same quality, and hardware acceleration means lower CPU usage and better battery life for video-heavy workflows.

Linux touchpad hold gestures are now supported: placing 2 fingers on the touchpad interrupts kinetic scrolling, bringing Firefox’s touch behavior in line with other Linux desktop apps.


Developer Tools

Firefox 134 delivers 3 notable DevTools improvements. First, web extension debugging now automatically reloads source code in the Debugger when an extension is reloaded — no more manual refreshes during development.

Second, Debugger log-point values are automatically converted into profiler markers, letting developers annotate the performance timeline directly from the Debugger without touching the Profiler UI.

Third, the Network panel now displays Early Hints (103 HTTP status code) with a dedicated indicator, making it easier to debug preload and preconnect behavior.

WebDriver BiDi added the browser.getClientWindows command (bug 1855025) and initiatorType/destination fields on all network events (bug 1904892). Marionette’s Addon:Install and Addon:Uninstall commands now work on GeckoView (Android) (bug 1806135).


Bottom Line

Video consumers benefit from HEVC hardware decoding on Windows. JavaScript developers get two long-awaited utilities in RegExp.escape() and Promise.try(). CSS layout authors can finally use align-self on absolute elements without hacks. Extension developers get a smoother debugging workflow with auto-reload and profiler integration. And the entire Gecko ecosystem — Tor, LibreWolf, Mullvad — inherits a faster, more capable engine.


Subscribe to BrowserDigest


Sources