Firefox Tomorrow

TL;DR

5 new features, 2 fixes, 37 other changes. Highlight: Migrating from another browser? Now you can bring over payment methods you've saved in Chrome-based browsers to Firefox.

New 5 items
  1. 01

    Migrating from another browser? Now you can bring over payment methods you've saved in Chrome-based browsers to Firefox.

  2. 02

    Hardware video decoding is now enabled for Intel GPUs on Linux.

  3. 03

    The Tab Manager dropdown now features close buttons, so you can close tabs more quickly.

  4. 04

    We've refreshed and streamlined the user interface for importing data in from other browsers.

  5. 05

    Users without platform support for H264 video decoding can now fallback to Cisco's OpenH264 plugin for playback.

Fixed 2 items
  1. 01

    Windows Magnifier now follows the text cursor correctly when the Firefox title bar is visible.

  2. 02

    Windows users on low-end/USB wifi drivers and with OS geolocation disabled can now approve geolocation on a case by case basis without causing system-wide network instability.

Changed 4 items
  1. 01

    Undo and redo are now available in Password fields.

  2. 02

    On Linux, middle clicks on the new tab button will now open the xclipboard contents in the new tab. If the xclipboard content is a URL then that URL is opened, any other text is opened with your default search provider.

  3. 03

    For users with a Firefox Colorways built-in theme, the theme will be automatically migrated to the same theme hosted on addons.mozilla.org for Firefox profiles that have disabled add-ons auto-updates. This will allow users to keep their Colorways theme when they are later removed from Firefox installer files.

  4. 04

    Certain Firefox users may come across a message in the extensions panel indicating that their add-ons are not allowed on the site currently open. We have introduced a new back-end feature to only allow some extensions monitored by Mozilla to run on specific websites for various reasons, including security concerns.

Security 1 item
  1. 01

    Various security fixes.

Enterprise 1 item
  1. 01

    You can find information about policy updates and enterprise specific bug fixes in the Firefox for Enterprise 115 Release Notes .

Developer 7 items
  1. 01

    Developer Information

  2. 02

    In web development, we rely on third-party libraries which you may not be interested in while debugging. These can be ignored. Ignoring them means that breakpoints will not get hit and they are skipped during stepping. You can now choose to Hide ignore-listed sources in the Developer Tools source tree ( bug ). Ignored sources are also skipped by JavaScript tracing feature ( bug ).

  3. 03

    We have introduced a new option, devtools.f12_enabled , that can be utilized to prevent the accidental use of the F12 key, which opens the DevTools toolbox ( bug ).

  4. 04

    With the release of Firefox 115, we are pleased to welcome the developers who contributed their first code change to Firefox in this release, 8 of whom were brand new volunteers! Please join us in thanking each of these diligent and enthusiastic individuals, and take a look at their contributions: Anton Bobrov: 1833330

  5. 05

    To support its deprecation from Manifest V3 extensions, manifest key property browser_style defaults to false in options_ui and sidebar_action for Manifest V3 extensions ( Firefox bug 1830710 ). See Manifest v3 migration for information about transitioning from browser_style in Manifest V3 extensions.

  6. 06

    The commands.onChanged event, which enables web extensions to listen for changes to command shortcuts, has been added ( Firefox bug 1801531 ).

  7. 07

    Support has been added for storage.session , which provides the ability to store data in memory for the duration of the browser session ( Firefox bug 1823713 ).

Web Platform 24 items
  1. 01

    The builtin editor now behaves similarly to other browsers with contenteditable and designMode when splitting a node, e.g. typing Enter to split a paragraph, and also when joining two nodes, e.g. typing Backspace at the start of a paragraph to join the paragraph and the previous one. When a node is split, the builtin editor creates a new node after the original one instead of before, i.e. creates the right node instead of the left node. Similarly, when two nodes are joined, the builtin editor deletes the latter node and moves its children to the end of the preceding node instead of deleting the former node and moving its child to the start of the following node.

  2. 02

    WebRTC application developers can now specify a target in milliseconds of media for the jitter buffer to hold. Altering the target value allows applications to control the tradeoff between playout delay and the risk of running out of audio or video frames due to network jitter.

  3. 03

    Change array by copy provides additional methods on Array.prototype and TypedArray.prototype to enable changes on the array by returning a new copy of it with the change.

  4. 04

    The animation-composition property is now supported, allowing a declarative way to define the composite operation used when multiple animations affect the same property simultaneously.

  5. 05

    Added the URL.canParse() function to allow easy and fast checking if URLs are valid and parseable.

  6. 06

    IndexedDB is now also supported in private browsing without memory limits thanks to encrypted storage on disk. The temporary keys to decrypt the information are held in RAM only and all stored information is purged at the normal end of a private browsing session from disk.

  7. 07

    Supports conditions are now supported in CSS import rules @import supports(...)

  8. 08

    The modulepreload keyword for the rel attribute of the <link> element is now supported. This allows early (and asynchronous) fetching of module scripts and their dependencies in parallel, which are then stored in the document's module map ( Firefox bug 1425310 ).

  9. 09

    The CSS animation-composition property is now supported by default. You can use this property to specify the composite operation to use when multiple animations affect the same property simultaneously. ( Firefox bug 1823862 ).

  10. 10

    The supports-conditions in the CSS @import at-rule supports() function is now supported by default. This feature allows stylesheets to be imported only if the specified feature is supported in the user's browser. ( Firefox bug 1830779 ).

  11. 11

    The Array.fromAsync() static method is now supported. The method asynchronously returns a new, shallow-copied Array instance from an async iterable , iterable , or array-like object ( Firefox bug 1795816 ).

  12. 12

    The Array and TypedArray methods Array.toReversed() , Array.toSorted() , Array.toSpliced() , Array.with() , TypedArrays.toReversed() , TypedArrays.toSorted() , and TypedArrays.with() are now supported. These methods return a new array with elements that have been shallow copied (similarly named methods without the to prefix modify the array elements in place). ( Firefox bug 1811057 ).

  13. 13

    The Sec-Purpose HTTP fetch metadata request header is now included in requests to Prefetch resources. This allows servers to provide any special handling that might be needed, such as adjusting the caching expiry for the request ( Firefox bug 1836328 ).

  14. 14

    The Response.json() static method is now supported, making it easier to construct Response objects for returning JSON data. The method will be useful for service workers and any other code that needs to respond to browser requests with JSON data ( Firefox bug 1758943 ).

  15. 15

    The URL.canParse() static method can now be used to parse and validate an absolute URL, or a relative URL and base URL. This provides a fast and easy way to check if URLs are valid, instead of constructing them within a try...catch block and handling exceptions. ( Firefox bug 1823354 ).

  16. 16

    The URLSearchParams.has() and URLSearchParams.delete() methods now support the optional value argument. This allows matching a search parameter on both the name and value , making it possible to work with query strings that contain multiple search parameters that have the same name. ( Firefox bug 1831587 ).

  17. 17

    The RTCRtpReceiver.jitterBufferTarget attribute is now supported, allowing a WebRTC application to influence the tradeoff between playout delay and the risk of running out of audio or video frames due to network jitter. ( Firefox bug 1592988 ).

  18. 18

    The deprecated mozPreservesPitch alias of HTMLMediaElement.preservesPitch has been disabled by default, and may be fully removed in a future release ( Firefox bug 1831205 ).

  19. 19

    The payload now always includes stack traces for responses and events without capping it after the first 50 "throw" usages in a realm ( Firefox bug 1791715 ).

  20. 20

    When using input.performActions , any ongoing wheel transaction is now reset at the end of the command to not retain state and to not leak into following actions within the same tab ( Firefox bug 1821733 ).

  21. 21

    When using a pointerMove action with input.performActions , an invalid element origin now correctly raises a "no such error" failure ( Firefox bug 1832028 ).

  22. 22

    A race condition for the initial page load has been fixed that could appear when directly interacting with a newly opened tab or window ( Firefox bug 1832891 ).

  23. 23

    Both the commands WebDriver:GetComputedLabel and WebDriver:GetComputedRole now correctly wait for the requested accessibility object for an element to exist if it just got inserted into the DOM ( Firefox bug 1828816 ).

  24. 24

    All instances of Window.setTimeout() in our privileged code running in content processes now use a variant timer that is not affected by the throttling of the timers in case the given tab for automation is in the background.