Firefox 53, available today, includes the following key new features and enhancements.
Quantum Compositor Process on Windows
One of the first pieces of Project Quantum, the Compositor Process, has arrived on Windows. Compositors are responsible for flattening all of the various elements on a webpage into a single image to be drawn on the screen. Firefox can now run its compositor in a completely separate process from the main Firefox program, which means that Firefox will keep running even if the compositor crashes—it can simply restart it.
For more details on how this aspect of Project Quantum reduces crash rates for Firefox users, check out Anthony Hughes’ blog post.
Light and Dark Compact Themes
The “compact” themes that debuted with Firefox Developer Edition are now a standard feature of Firefox. Users can find light and dark variants of this space-saving, square-tabbed theme listed under the “Themes” menu in Customize mode.
New WebExtension Features
WebExtensions are browser add-ons that are designed to work safely and efficiently in Firefox, Chrome, Opera, and Edge, while also supporting powerful features unique to Firefox.
In Firefox 53, WebExtensions gained compatibility with several pre-existing Chrome APIs:
- The browsingData API lets add-ons clear the browser’s cache, cookies, history, downloads, etc. For example, Firefox’s Forget Button could now be implemented as a WebExtension.
- The identity API allows add-ons to request OAuth2 tokens with the consent of the user, making it easier to sign into services within an add-on.
- The storage.sync API allows add-ons to save user preferences to Firefox Sync, where it can be shared and synchronized between devices.
- The webRequest.onBeforeRequest API can now access the request body, in addition to headers.
- The contextMenus API now supports adding menus to browser actions and page actions.
Firefox 53 also supports the following unique APIs:
- Contextual Identities, the basis of the Containers experiment in Test Pilot, can now be created and managed via the contextualIdentities API.
- Context menus can be created on tabs and password fields with the contextMenus API.
- CSS injected into pages with tabs.insertCSS can specify if the new styles should be considered part of the author stylesheet or the user stylesheet, which exist at different levels in the cascading order.
New CSS Features: Positioned Masks and Flow-Root
Firefox 53 supports positioned CSS Masks, which allow authors to partially or fully hide visual elements within a webpage. Masks work by overlaying images or other graphics (like linear gradients) that define which regions of an element should be visible, translucent, or transparent.
Masks can be configured to use either luminance or alpha values for occlusion. When the mode is set to luminance, white pixels in the mask correspond to fully visible pixels in the underlying element, while black pixels in the mask render that area completely transparent. The alpha mode simply uses the mask’s own opacity: transparent pixels in the mask cause transparent pixels in the element.
Many masking properties function similarly to the equivalent
background-* properties. For example,
mask-repeat works just like
background-repeat. To learn more about the available properties, see the documentation on MDN.
The specification also defines methods for clipping based on shapes and vector paths. Firefox 53 has partial support for clipping, and complete support is expected in Firefox 54.
Lastly, Firefox also supports the new
display: flow-root value, which achieves similar results to clearfix, but using a standard CSS value instead of pseudo-elements or other hacks.
A Better Default Media Experience
Alongside many other UI refinements in Firefox 53, the default
<audio> controls got a new, modern look:
Additionally, Firefox 53 includes brand new anti-annoyance technology: By default, HTML5 media will not autoplay until its tab is first activated. Try it by right-clicking on this link and choosing “Open in New Tab.” Notice that the video doesn’t start until you change to that tab.
Edit: Autoplay blocking is scheduled for Firefox 54, not 53. Oops. (Bug 1308154)
Windows users can now select between 32-bit and 64-bit Firefox during installation:
We’ve also removed support for 32-bit Firefox on macOS, and for processors older than Pentium 4 and Opteron on Linux.
About Dan Callahan
Engineer with Mozilla Developer Relations, former Mozilla Persona developer.