Highlights
- Firefox 83 went out yesterday!
- Started investigation into making BrowserNotification look more part of chrome to eventually use as a UI for remote messages (in addition to CFR and what’s new, etc)
- All legacy actors have now been removed! Here’s the latest Fission newsletter: Newsletter #9
- bytesized is working on downloading a new update while one is already staged, which should address a pain point going back more than a decade.
- Search Mode and Tab-to-search were just released in Firefox 83!
- The about:home startup cache has now been enabled by default on nightly
- We shipped v29 of Firefox for iOS! It comes with Widgets that allow you to bring your favourite sites and open tabs directly to your homescreen
Friends of the Firefox team
Resolved bugs (excluding employees)
Fixed more than one bug
- Andrey Bienkowski
- Ben D (:rockingskier)
- Chris Jackson
- Cody Welsh
- Fabien Casters [:vaga]
- Hunter Jones
- Itiel
- Martin Stránský [:stransky]
- Michael Goossens
- Niklas Baumgardner
- Tim Nguyen :ntim
- Tom Schuster [:evilpie]
New contributors (🌟 = first patch)
- akshay1992kalbhor fixed a problem with crash pings having null bytes after module names
- Niklas Baumgardner worked on a number of picture in picture bugs, like opening on the correct monitor, saving the last location and size of the window, and making sure the window is visible after changing the resolution
- Chris Jackson also helped with picture in picture bugs, like removing an experimental toggle, ensuring the description is correct, and fixing the missing padding on the toggle button
- 🌟 Andrey Bienkowski improved the guidelines for commit naming in devtools and cleaned up devtools code
- 🌟 Manekenpix fixed the selected nodes in markup view
- 🌟 Namandude1008 removed an unused caption rep
- 🌟Nerixyz fixed an issue to show the correct icon next to extension sources
- 🌟Seunbayo83 moved the object inspector outside of the reps folder
- Hunter Jones made it possible to have more than one picture-in-picture window and refactored picture in picture to not use a global state
Project Updates
Add-ons / Web Extensions
Addon Manager & about:addons
- Fixed an issue with built themes disappearing for one sessions after upgrading to Firefox 82 (fixed by Bug 1672314, caught due to the recent changes to the theme resource urls introduced in Bug 1660557)
- Some minor follow ups related to the the new verified and mozilla badges in the about:addons extensions list (Bug 1666042, Bug 1666503)
- Itiel contributed an RTL-related followup fix for the optional permissions list part of the about:addons detail view (Bug 1672502, follow up for Bug 1624513)
- ntim contributed some small refactoring for about:addons (Bug 1676292, Bug 1677530), in preparation for completely removing the remaining bits of the legacy XUL-based about:addons page
WebExtensions Framework
- Landed a fix to make sure that the extension messaging Ports are garbage collected when the related extension content is destroyed (Bug 1652925)
- Brad Werth made sure that the extension popups and sidebar panels can be zoomed using the Ctrl-scroll wheel as in the browser tabs (Bug 1634556)
- Mark Banner did make sure we reset/restore the default search engine when an addon did override it and then was uninstalled at early startup (Bug 1643858)
WebExtension APIs
- Tom Schuster extended the browsingData API to support clearing the browsing data for a specific contained tab using a new optional cookieStoreId parameter (Bug 1670811, + follow up fix from Bug 1675643)
Bookmarks
- “Other Bookmarks” Folder in Bookmarks Toolbar – If users have bookmarks stored in Other Bookmarks, a button for it will appear in the bookmarks toolbar (bug). An option to hide this folder from the toolbar is currently in progress (bug).
- Bookmarks are stored in the Bookmarks Toolbar by default – For new users, the default location for storing bookmarks is now in the bookmarks toolbar (bug).
- “Import Bookmarks” Button – New profiles will display an “import” button on the bookmarks toolbar (bug).
- Showing the Bookmarks Toolbar on the New Tab page by default and replacing the Bookmarks Toolbar hide/show toggle – New options for showing the bookmarks toolbar: “Always”, “Never”, and “Only on New Tab” (bug).
- A message describing the Bookmarks Toolbar and linking to the library is shown on the toolbar when it is blank – If there are any bookmarks in the “Bookmarks Toolbar” folder or any other widgets on the toolbar this message will not be shown (the “Other Bookmarks” symlink folder does not count)
Developer Tools
- Network Panel – Introducing top level error component responsible for catching exceptions and rendering details, stack trace + link for filing bugzilla report (bug)
- Performance panel – Building simple on-boarding UI for new performance panel (bug) The new profiler panel is based on Firefox profiler: profiler.firefox.com
- Accessibility Panel – showing tab order on the current page, done by Yura Zenevich (bug), shipped in Firefox 84
- DevTools Fission – Making DevTools Fission compatible
- Fission tests are now enabled on tier 1 (bug)
- Continue making DevTools Fission compatible (wiki with known issues)
- The project has 6 MVP remaining to be completed at Dec 14 – Dec 20
- Marionette Fission – Making Marionette (the automation driver for Firefox) Fission compatible
- The project has 13 MVP remaining to be completed at Nov 09 – Nov 22
- Enabling Marionette new Fission compatible implementation (based on JSWindowActors) fixed an a memory leak and improved performance 15-20% across all platforms (bug).
Installer & Updater
- mhowell is wrapping up work on the semaphore, to prevent multiple instances from updating each other, and to let the user know when Firefox can’t update as a result
- agashlin landed a new uninstall ping, so we should get more information about users explicitly leaving Firefox (as opposed to silently ceasing to use Firefox)
Lint
- Sonia enabled all ESLint rules for widget/tests/*.xhtml – these were files where we had postponed fixing all the eslint issues when moving from xul to xhtml.
- Kris made it so that the ESLint list of services that are accessible via Services.* is now semi-automatically generated.
Password Manager
- Tgiles landed Bug 1613620 – allow to remove/delete all stored logins/passwords
PDFs & Printing
- emalysz updated the print dialog so it stays open if the user cancels choosing a filename for print-to-PDF
- emalysz updated the error handling so it allows changing the destination and cancelling the print if a setting is invalid
- emalysz updated the custom margin settings to account for the printed page orientation
- nordzilla added support for duplex printing (print on both sides)
- emilio fixed a bug where printing using the system dialog failed for about: pages
- emalysz fixed a bug where changing the paper size with custom margins set could result in an error without it being displayed to the user
Performance
- bigiri landed a major refactor of the ASRouter code!
- emalysz is mentoring bugs to help us transition off of OSFile over to IOUtils! Interested contributors are most welcome to pick a bug blocking this meta.
- mconley landed UserInteractions! These let us add BHR annotations for key user interaction flows, which will hopefully let us identify high-priority responsiveness issues from our BHR data.
- dthayer and emalysz have been making the pre-XUL skeleton UI for faster startup responsiveness more comprehensive. This includes drawing the URL bar, toolbar buttons, rounded rects and correct theme colours at startup. We hope to enable this by default in Nightly sometime next week once dthayer is back from PTO.
- This can be turned on by adding a browser.startup.preXulSkeletonUI pref set to true
- Gijs resolved a tabswitch regression caused by recent bookmarks toolbar work, and is investigating some other Talos regressions also caused by that work
- mconley fixed a responsiveness Talos regression for the about:newtab page caused by the about:home startup cache work
Performance Tools
- Added shortcuts for call tree transforms.
- Added a keyboard shortcut panel that is revealed by the shortcut “?”.
- “Profile Info” panel now includes how many physical and logical CPU cores there are on the profiled machine.
Picture-in-Picture
- We’ve introduced an experimental capability for having multiple concurrent Picture-in-Picture player windows. You can enable it in about:preferences#experimental. We’re very curious about how people might use multiple player windows – here’s a form to let us know if you find multiple player windows useful!
- Lots of fixes in the past few weeks from our MSU students:
- Bug 1672401 – PiP description is displayed incorrectly on whereby.com
- Bug 1671588 – PiP window is not visible if enabled right after changing resolution
- Bug 1589680 – Make it possible to have more than one Picture-in-Picture window
- Bug 1545752 – The Picture-in-Picture window opens on main monitor even if the browser is opened on the secondary monitor
- Bug 1578985 – Picture-in-Picture does not remember location and size of the popout windows
Push
- We are working with Ops and QA to coordinate testing (and setting up a staging server) for a major port of the Push Endpoint logic that was completed this past summer from python to Rust. Kudos to our intern mdrobnak for successfully completing this massive project. We expect to deploy to production in early 2021.
Search and Navigation
- We’re running an holdback experiment to measure the impact of the new search mode feature on Release
- We’re also working on various experiments related to vertical search in the Address Bar, both with partners, and with cool utils (weather, calculator, unit conversions)
- Tweaked the tab-to-search onboarding result to not be dismissed too easily; now it requires 3 interactions (simply selecting the result counts as one) – Bug 1675611
- Based on user-testing feedback, mostly to reduce the surprise impact, empty strings in search mode don’t show anymore the last executed searches – Bug 1675537
- Search mode colors are now inverted on the Dark theme – Bug 1671668
- Allow to complete @keywords with the Tab key – Bug 1669526
- Url canonization (CTRL+Enter) does not happen anymore if a CTRL+V just happened and CTRL was not released before pressing Enter – Bug 1661000
- Fixed an issue in both the search bar and the address bar causing the last keyup event to reach content – Bug 1641287, Bug 1673299
- Fixed a regression where single words (like “space”) in search mode could open the “Did you mean to go to space” notification bar in case of a wildcard DNS. – Bug 1672509
Sync
- The tokenserver (which runs python 2.7 and supports Firefox Sync) is being ported to Rust in Q4. You can follow along with progress here.
- A minor change to better work with Spanner was made to our batch commit limit. See the Spanner docs for more details on mutation limits.
User Journey
- Allow setting Firefox as the default browser with a remote message action
- Fixed some tab focus related issues with what’s new panel
WebRTC UI
- The new WebRTC global indicator goes out for macOS and Windows today! \o/
- This means system tray indicator icons for Windows, as well as an always-on-top indicator when sharing a display.
- There are also global mutes for the microphone and camera, but these are off by default.
jdm wrote on
Emma Malysz wrote on