Firefox/Meeting/2-August-2024
Friends of the Firefox team
Resolved bugs (excluding employees)
Script to find new contributors from bug list
Volunteers that fixed more than one bug
- Gabriel Lee [:gabrielchl]
- Jonas Jenwald [:Snuffleupagus]
- Louis Mascari
New contributors (🌟 = first patch)
- 🌟 Gabriel Lee [:gabrielchl] updated about:translations to show translating message when loading translations and fixed uncaught error when detect language is selected in about:translations
- 🌟 JL cached startup time value by calling it in the initialize function
- 🌟 Joseph Liang fixed PiP button visibility on hulu.com
- Isaac Lee updated fxview-tab-list stories to correctly render the meatball button
- Louis Mascari improved formatting of about:license and removed the old button story in Storybook
- 🌟 Matthew applied browser.tabs.allow_transparent_browser pref to sidebar browsers
- Balarama Raju updated remote./* to use pprint for assertion messages
General triage
Project Updates
Add-ons / Web Extensions
Addon Manager & about:addons
- Host permissions subsumed by optional host permissions and granted by the user on permissions.request() calls are now going to still be listed for the entire browsing session after the users have revoked them from the Desktop and Android add-ons manager UI - Bug 1899674
WebExtensions Framework
MV3 host permissions:
The notification dot (shown on the extensions button and/or on the extension browser action toolbar button) is not going to be shown anymore when the current tab url is matching only MV3 optional host permissions - Bug 1905931
Fixed potential race between notification dot internals and extensions startup - Bug 1905392
- Fixed a browser desktop UI accessibility issue hit by users when an extension sidebar panel is opened (regressed in Firefox 127, fixed in Firefox >= 128) - Bug 1905771
- Fixed race condition that could potentially lead to issues with event page respawning behaviors - Bug 1905153
WebExtension APIs
- Align browser.runtime.getURL() result when called with a non-extension absolute urls as agreed with other vendors in the WebExtensions W3C Community Group - Bug 1795082
- Improved error messages logged on invalid application paths found in native messaging manifests - Bug 1908201
DevTools
DevTools Toolbox
- Masayuki Nakano fixed usage of setPointerCapture in a few places where we were passing an undefined pointerId (#1907489, #1907490, #1907494)
- Boris Chiou fixed an issue that allowed us to re-enable showing @starting-style rules in the Inspector (#1905035)
- Nicolas Chevobbe made it simpler to add attributes in the markup view (#1173057)
- Nicolas Chevobbe prevented RDM UA/dpr/Touch simulation to be reset when resizing the viewport (#1894949)
Alexandre Poirot moved the tracer toggle button to the toolbox (#1873060)
Alexandre Poirot added a new side panel in the Debugger to display JS Trace (#1885054) and documented it (#1908704)
This will likely evolve in the next weeks, you can check this META bug to see what's planned
- Hubert Boma Manilla is tackling the last bugs migrating the Debugger to CodeMirror 6 (#1893355, #1907259, #1903700, #1907260)
- Nicolas Chevobbe fixed the Debugger preview tooltip for bracket property access on this (e.g. this[x].y ) (#1906587)
WebDriver BiDi
External:
Andrew Nicols fixed a bug where the SendElementKeys command in WebDriver classic (http) would unnecessarily scroll elements into view, even if they were already visible in the viewport. (#1906095)
Balarama Raju reviewed and updated all the error messages for WebDriver classic and BiDi to make sure they all used pretty printing when necessary, and that they all looked consistent. Those messages are displayed to clients when they use commands with invalid or unexpected arguments, so it's important to make sure the error messages are clear and understandable. (#1788437)
Updates:
Sasha removed a restriction for our initial implementation for the network.setCacheBehavior command, to allow clients to set the cache behavior both globally and for specific contexts. Previously, we only allowed clients to use one or the other. Now you can for instance disable the network cache for all contexts as a default setting, but still enable the cache in some of them. (#1905307)
Sasha fixed a bug with the user prompt events on Android. When several user prompts were displayed simultaneously, we were always picking the first one to emit new events. (#1902264)
Julian updated the vendored puppeteer version to 22.13.0, which is the first puppeteer release for which Firefox with WebDriver BiDi is passing 100% of the prioritized puppeteer unit tests.(#1907533)
Henrik fixed a bug with the unsupportedPromptBehavior capability, which could only be used on WebDriver classic sessions (or classic + BiDi). It can now be used on BiDi-only sessions, such as the one used by puppeteer. (#1907935)
Lint, Docs and Workflow
Transition to ESLint flat config
.eslintignore has now been replaced by .eslintrc-ignores.js and changed to a common JS module. This makes it easier to work with flat config, since it'll be an ES module there.
Picture-in-Picture
- Thanks to niklas for resolving uncaught exception: unknown (can’t convert to string) errors whenever we close the PiP window for sites using custom PiP wrappers (Bug 1816756)
Search
Cleanup of the previous search configuration after having switched to v2 is now under way.
- Moritz has removed most of the old code, including various add-on related support files for tests that are no longer required.
- Standard8 has simplified most of the search service related tests - we no longer need to start the add-on manager by default, and when we do, our test utils will do it for you.
Places
Marco improved shutdown handling in PlacesFrecencyRecalculator.
Address Bar
Yazan fixed an issue where omnibox keywords (add-on customized behaviour in address bar) could be triggered when in search mode.
Marco improved handling of copying and editing the scheme parts of URLs.