In lieu of the normal, detailed review of WebExtensions API coming out in Firefox 65, I’d like to simply say thank you to everyone for choosing Firefox. Now, more than ever, the web needs people who consciously decide to support an open, private, and safe online ecosystem.
Two weeks ago, nearly every Mozilla employee gathered in Orlando, Florida for the semi-annual all-hands meeting. It was an opportunity to connect with remote teammates, reflect on the past year and begin sharing ideas for the upcoming year. One of the highlights was the plenary talk by Mitchell Baker, Chairwoman of the Mozilla Foundation. If you have not seen it, it is well worth 15 minutes of your time.
Mitchell talks about Firefox continually adapting to a changing internet, shifting its engagement model over time to remain relevant while staying true to its original mission. Near the end, she notes that it is time, once again, for Mozilla and Firefox to evolve, to shift from being merely a gateway to the internet to being an advocate for users on the internet.
Extensions will need to be part of this movement. We started when Firefox migrated to the WebExtensions API (only a short year ago), ensuring that extensions operated with explicit user permissions within a well-defined sandbox. In 2018, we made a concerted effort to not just add new API, but to also highlight when an extension was using those API to control parts of the browser. In 2019, expect to see us sharpen our focus on user privacy, user security, and user agency.
Thank you again for choosing Firefox, you have our deepest gratitude and appreciation. As a famous Mozillian once said, keep on rockin’ the free web.
Highlights of new features and fixes in Firefox 65:
- Fixed the post install panel to no longer hide search opt-in panel
- Right/Middle-clicking on top-level menu item no longer triggers menus.onClicked callback
- Fixed proxy-API (proxy.settings) handling of a default port 80
- Protocol handler prompt is bypassed when unnecessary
- browser.downloads.search now returns 0 byte downloads
- “Manage Extension” and “Remove Extension” are reordered in browserAction context menu
- Custom theme scrollbars properly repaint when switching from a dark theme to a light theme
- Enhanced browser.tabs API to support assigning tab successors
- browser.omnibox supports special characters including forward slash (/), like Chrome
- tabs.onCreated is now called for a tab opened after the last tab is closed with “browser.tabs.closeWindowWithLastTab” = “false”
- moz-extension://URL images is supported on Android
- Using downloads.download() with saveAs=true now works properly
- Browser and page action default to extension icon rather than puzzle piece
A huge thank you to the community contributors in this release, including: Ben Armstrong, Oriol Brufau, Tim Nguyen, Ryan Hendrickson, Sean Burke, Yuki “Piro” Hiroshi, Diego Pino, Jan Henning, Arshad Kazmi, Nicklas Boman.