A panel opened from the Firefox Desktop URL bar asking if the user wants to translate the current page. The panel offers to translate the page from German to English.
Categories: News

Firefox Translations and Other Innovations – These Weeks in Firefox: Issue 139


  • New in Nightly – Firefox Translations! Firefox can now often detect if you’re viewing a page written in a language not matching the one matching your locale, and for some languages offer to translate the page for you.
    • A panel opened from the Firefox Desktop URL bar asking if the user wants to translate the current page. The panel offers to translate the page from German to English.

      Ja, bitte!

    • This happens entirely client-side. This means the URL of the page, nor any of the page data ever leaves your computer. The trade-off is the need to download “translation engines”, which can be done at translation-time, or you can manage them yourself in about:preferences:
      • A section of the Firefox Preferences interface is shown with the title "Translations". The section offers to download languages for offline translation. A button is presented to download all languages, and then a series of individual languages are offered: Bulgarian, Catalan, Czech and Dutch are listed before the list goes outside of the screenshotted region.

        Qui è dove è possibile gestire i motori di lingua scaricati.

    • This is the direct successor to the venerable Firefox Translations add-on and builds on the research done with that project.
    • Bonus capability: visit about:translations to translate your own text as well
    • This is ready for Nightly testing. Found a bug? You can file a new one blocking this metabug.
  • New support for Picture-in-Picture captions – thanks to janvi for the patches:
  • Hubert enabled the Firefox Devtools debugger feature to ignore specific lines while debugging, as opposed to ignoring just files (bug)
    • The Debugger in the Firefox Devtools is shown with a context menu opened over a particular line in some JavaScript source code. The bottom entry in the menu is highlighted, and reads "Unignore line".

      Ignoring and unignoring lines makes it easier to step through the code you actually care about debugging!

  • Nicolas enabled the CSS compatibility tooltip feature on Nightly! (bug)
    • The Rules pane of the Firefox DevTools Inspector panel is shown, with several rules struck out, including "-webkit-text-size-adjust: 100%;". A lightbulb icon appears to the right of that rule with a tooltip explaining that "-webkit-text-size-adjust is an experimental property. It is not supported in the following browsers:", followed by a list of browser icons and version numbers.

      This should make it easier for web developers to ensure that their styles will work the way they expect them to for all browsers.


Friends of the Firefox team

Resolved bugs (excluding employees)

Volunteers that fixed more than one bug
  • Gregory Pappas [:gregp]
  • Janvi Bajoria [:janvi01]
  • Magnus Melin [:mkmelin]
New contributors (🌟 = first patch)

Project Updates

Add-ons / Web Extensions

Addon Manager & about:addons
  • As part of the Colorways Migration: in Firefox >= 115, we are allowing Colorways builtin themes to be auto-updated to the corresponding non-builtin Colorway themes hosted on addons.mozilla.org for users not yet migrated because of the extensions.update.autoUpdateDefault pref being set to false (Bug 1830337)
WebExtensions Framework
  • Thanks to Eemeli, the localized strings related to the extension permissions have been migrated to Fluent (Bug 1793557, Bug 1632091)
  • Thanks to :ochameau and :peterv for their work to introduce the nsIConsoleService.callFunctionAndLogException helper in Bug 1810582
    • This new helper is going to be used in a separate followup, Bug 1810582, to make sure we include a full error stack trace when logging the exceptions raised from extension callbacks executed in response to the WebExtensions API events being emitted.
  • Thanks to Kris’ work in Bug 1769763, string labels (anonymized and non-anonymized) can now be associated with the StructureCloneHolder instances (which is going to be very helpful to determine what the StructureCloneHolder instances belongs to in about:memory reports)
  • Thanks to Shane Hughes for reporting and fixing a slightly annoying glitch in the extensions panel (Bug 1810509)
  • Thanks to Gregory Pappas for contributing a nice cleanup of the downloads API internals (Bug 1834338)
WebExtension APIs
  • As part of the browser_style deprecation (started in Firefox 114), in Firefox 115 options_ui.browser_style and sidebar_action.browser_style will default to false for all Manifest Version 3 extensions (Bug 1830710).
  • Thanks to Gregory Pappas for contributing the changes needed to introduce a new browser.commands.onChanged WebExtensions API event, which will allow the extensions to be notified when a users changes a shortcut associated to the extensions commands in about:addons (Bug 1801531)

Developer Tools

  • Contributors
    • Martín González Gómez, extracted the highlighter code used to render the viewport size to a dedicated module. This will make it possible to automatically display this information on resize in a follow up (bug)
    • Sebo added support for custom formatters in the debugger tooltip (bug)
  • Other teams
    • Arai fixed several issues around eager evaluation in the console (bug and bug)
  • Hubert added support for hiding sources based on the source maps x_google_ignoreList  field (bug)
    • The Firefox Debugger panel is shown with the tool's settings panel opened over top. The last item in that settings panel is highlighted and reads "Ignore Known Third-party Scripts".

      More tools to help you focus on the scripts that you actually care to debug!

    • A script titled "original-3.js" from the site "sourcemap-ignore-list.glitch.me" is shown. The source code is displayed, but the syntax highlighting is disabled, as the source is all being ignored for debugging.
  • Hubert added an option to hide the ignored (blackboxed) sources Bug 1824703 – Add an option to hide / show blackboxed sources
    • The Firefox Debugger panel is shown with the tool's settings panel opened over top. The second-last item in that settings panel is checked and highlighted and reads "Hide Ignored Sources"

      This can also help reduce visual clutter in the debugger.

    • The source list in the Firefox Debugger is shown, listing various scripts loaded on the page. At the bottom of the source list is a message that says: "Ignored sources are hidden", followed by a button to "Show all sources".
  • Hubert also fixed a bug where adding a breakpoint would automatically unignore a source (bug)
  • Nicolas updated the links in our compatibility panel to be more explicit and added an MDN icon for links to MDN (bug)
    • The Compatibility pane from the Firefox Inspector Panel is shown. A list of rules is shown, including "scrollbar-color" and "font-smooth". Each rule is a link, followed by an icon representing MDN.
  • Nicolas also fixed more performance issues with the CSS compatibility tooltip (bug)
  • Alex fixed a bug where the icons in the debugger would randomly flicker when selecting a source (bug)
  • Alex addressed a performance regression on the Debugger (bug)
WebDriver BiDi
  • Contributors
    • Victoria Ajala fixed a bug to use the Timer module instead of window.setTimeout in various Remote Protocol modules (bug)
  • Other teams
    • Dan Robertson fixed the actions code to properly end wheel transactions, which allows us to stop disabling dom.event.wheel-event-groups.enabled for our users (bug)
  • Henrik removed the experimental flag from the input.performActions and input.releaseActions commands, which means they are now available to all WebDriver BiDi users (bug)
  • Julian fixed a bug where we would raise the incorrect exception when using a non-element Node as the origin of an action (bug)


  • Eemeli continues to burn down our .properties strings. We’re down to 4200 .properties strings (we had ~4400 at the start of this month)
    • A graph from arewefluentyet.com is shown, showing the proportion of strings in the mozilla-central repository that are of the Fluent type, and of the .properties type. The x-axis is the date, and the y-axis is the count of strings by type. May 28th is the date selected in the graph, and a tooltip appears showing 6990 Fluent strings and 4200 .properties strings in the code on that date.

ESMification status

  • ESMified status:
    • browser: 71%
    • toolkit: 88%
    • Total:  85.3% (up from 81.6%)
  • #esmification on Matrix
  • Migration Document (with a walkthrough!)

Lint, Docs and Workflow

Migration Improvements

  • hjones and mconley have been working on a mechanism to help people migrate off of old devices to new devices
    • There’s a Help menu item, starting in Firefox 114, “Switching to a new device”, which sends the user to this SUMO page.
    • We’ve built a “setup assistant” to walk the user through creating a Firefox Account and setting up sync. Finally, the user is presented with a URL to download a version of Firefox that, after install, is configured to first present the user with a Firefox Account login prompt during onboarding (for Firefox 114+).
    • We hope this will help people easily and securely move their data from old computers to newer ones.
  • Thanks to tgiles and mstriemer, we’ve got patches up to add support for importing history from Safari and importing bookmarks from HTML files (and JSON files)!
    • Special thanks to Evan Liang from CalState LA for getting us started on the Safari patch
  • mconley landed a patch to get payment method import working for Chrome-based browsers
    • Special thanks to Zach Harris from CalState LA for getting us started on that patch
  • mconley fixed a performance issue with importing form history entries from Chrome-based browsers


Search and Navigation

  • Daisuke has been working on an experiment to test Addon suggestions in the urlbar – see bugs 1833750, 1833760, 1833966
  • Drew has switched the result menu in the urlbar to use native context menu on mac – see bug 1831760
  • Mark updated the Gule sider search engine url – see bug 1834066
  • James and Stephanie have worked on various new recordings and bug fixes to search telemetry – see bugs 1816733, 1816738, 1823683, 1833245
  • Daisuke fixed pasted strings being overwritten – see bug 1834218

One comment on “Firefox Translations and Other Innovations – These Weeks in Firefox: Issue 139”

Post a comment

  1. Boneless4325 wrote on

    Is there any ETA for this? Translations are THE most important feature of an open web. I would really need this ASAP. The only reason I keep going back to Safari on iOS is because nothing else reliably translates pages for me atm.


Leave a Reply

Your email address will not be published. Required fields are marked *