Commit Graph
976508 Commits
Author SHA1 Message Date
velzie 64edeacd89 singlethreaded 2026-06-18 15:27:14 -04:00
velzie ecc7470465 jit phase 4 milestone 2026-06-18 10:26:40 -04:00
velzie 7770f4a67e jit part 3 2026-06-17 22:35:25 -04:00
velzie fc436df400 jit phase 2 2026-06-17 18:21:29 -04:00
velzie a2347993cb bgr swap fix 2026-06-17 15:18:32 -04:00
velzie 7dd8e3d2f8 wr and jit pt 1 2026-06-16 19:20:10 -04:00
velzie d97b3e7295 offscreenc 2026-06-16 13:08:21 -04:00
velzie 3c52c7efd7 fix lto 2026-06-15 23:12:03 -04:00
velzie 96283a9fd7 ptio fix 2026-06-15 22:41:04 -04:00
velzie 673a67963e initial commit for wasm work 2026-06-15 19:20:19 -04:00
Silaghi 74aa8fda9f Revert "Bug 2039709 - Use RemoteClient sync API to update models cache when remote settings updates r=ngrato,tetchart,tgiles" for causinf bc failures at browser_aiFeatures_smart_window_telemetry.js
This reverts commit 8fd8a72381.
2026-06-12 19:39:16 +00:00
Olivia Hall c4826e7401 Bug 2035830 - [Telemetry] Add Labs dialog and toggle telemetry r=android-reviewers,Roger
This patch adds the following Firefox Labs telemetry:
    * toggle_button_pressed w/slug_id and enabled - the user interacted with the toggle button on an item
    * toggled_dialog - w/slug_id did_user_confirm the dialog was accepted on items requiring restart
    * restore_defaults_button_pressed - the user interacted with the restore button
    * restore_defaults_dialog w/items_changed_count and did_user_confirm - the user confirmed the restart

Differential Revision: https://phabricator.services.mozilla.com/D305929
2026-06-12 19:36:55 +00:00
Olivia Hall 60441f9bb2 Bug 2035830 - [Telemetry] Add feedback and empty state telemetry to Labs r=android-reviewers,Roger
This patch adds the following Firefox Labs telemetry:
    * share_feedback_opened w/slug_id - the user clicked the share feedback link on a Labs item
    * empty_state_shown - the empty state was shown, no Labs items active

Differential Revision: https://phabricator.services.mozilla.com/D305730
2026-06-12 19:36:53 +00:00
Dre Grant afa3756b53 Bug 2040009 - Create useWidgetTelemetry hook. r=joel
Introduces a shared React hook for function-component newtab widgets so
they stop hand-building telemetry payloads. The hook covers all four
widget telemetry action types (WIDGETS_IMPRESSION, WIDGETS_USER_EVENT,
WIDGETS_ENABLED, WIDGETS_ERROR), reads widget_name from the widget's
WIDGET_REGISTRY entry, and tracks widget_size via a ref so dispatches
always reflect the latest value (with per-call override).

API:
- impressionRef: callback ref. Observes on assignment so widgets that
  conditionally render the target still get observed.
- recordImpression({ size }): manual one-shot fire sharing the observer's
  impressionFired guard.
- recordUserAction(action, { source, value, size, alsoToMain, legacy }):
  alsoToMain switches routing from OnlyToMain to AlsoToMain (for the
  Lists task-complete path); legacy co-dispatches a configured
  legacyUserEventType with { userAction }.
- recordEnabled(enabled, { source, size })
- recordError(errorType, { size })

Constructor options legacyImpressionTypes (array) and legacyUserEventType
bridge the Bug 2012779 transition: while WIDGETS_TIMER_* / WIDGETS_LISTS_*
legacy events still exist alongside the unified events, FocusTimer and
Lists pass the matching legacy action types so the hook emits both.
Co-dispatches fire legacy first, unified second to match the pre-hook
dispatch order.

Scope: function-component widgets under content-src/components/Widgets/.
The class-based mini Weather at content-src/components/Weather/Weather.jsx
is intentionally out of scope - its legacy WEATHER_* actions with custom
payloads would require a non-hook payload helper.

No callers yet; webpack drops the hook from the bundle until a widget
imports it. Bundle is unchanged in this commit. Widget migrations follow
in separate commits.

Differential Revision: https://phabricator.services.mozilla.com/D300850
2026-06-12 19:36:31 +00:00
Tymur Boiko 6ea8b4832a Bug 2047016 - DOM Media - Fix null deref in GetVideoFrameSurface for Vulkan direct-export path. r=alwu
Guard the hw_frames_ctx dereference in GetVideoFrameSurface before reading
hwdeviceType. On the Vulkan direct-export path, frameForPool is a fresh
av_frame_alloc() populated by av_hwframe_map(), which does not set
hw_frames_ctx, causing a null dereference. The deref is used only for
diagnostic logging, so initialise hwdeviceType to AV_HWDEVICE_TYPE_NONE
and skip the lookup when hw_frames_ctx is null.

Differential Revision: https://phabricator.services.mozilla.com/D306411
2026-06-12 19:36:04 +00:00
Tymur Boiko 8ae09d669e Bug 2046425 - DOM Media - Fix null deref in FFmpegDescToVA for V4L2 frames. r=alwu
Guard the hw_frames_ctx dereference in FFmpegDescToVA inside the
non-DRM_PRIME branch. V4L2 frames have a null hw_frames_ctx, so when
CreateImageV4L2 calls GetVideoFrameSurface with a non-DRM_PRIME format
the unconditional deref crashes at address 0x8. The deref is used only
for diagnostic logging so skip it when hw_frames_ctx is null.

Differential Revision: https://phabricator.services.mozilla.com/D306435
2026-06-12 19:35:42 +00:00
Greg Stoll 9487654084 Bug 2014567 - record what site permission got installed in telemetry r=extension-reviewers,rpl
Differential Revision: https://phabricator.services.mozilla.com/D306451
2026-06-12 19:35:20 +00:00
PKhant78 b0ac1c45e4 Bug 2008877 - Rename --color-gray-05 to --color-gray-0 r=fterdal,desktop-theme-reviewers,frontend-codestyle-reviewers,tgiles,Standard8,mconley,tabbrowser-reviewers,omc-reviewers,urlbar-reviewers,aminomancer,nsharpley,emilio
Differential Revision: https://phabricator.services.mozilla.com/D279809
2026-06-12 19:34:48 +00:00
Randell Jesup 68dafcaae3 Bug 2046797: Poll XInput gamepads by their XInput user index, not array position. r=jstutte
PollXInput passed the mGamepads array index to XInputGetState instead of
the device's stored XInput user index. With a single controller these
coincide, but when a DirectInput/raw-input device occupies an earlier array
slot (e.g. a Logitech pad in DirectInput mode alongside an Xbox 360), the
XInput controller's array index no longer matches its XInput slot. After
unplug/replug, array compaction shifts indices and the XInput controller
gets polled on the wrong slot, so it stops reporting input.

Differential Revision: https://phabricator.services.mozilla.com/D306166
2026-06-12 19:34:26 +00:00
Rebecca King 45a1bc1d96 Bug 2047020 - Apply bold font weight for Recommended label in locations subview - r=ip-protection-reviewers,mhynson
Differential Revision: https://phabricator.services.mozilla.com/D306433
2026-06-12 19:34:03 +00:00
Release Engineering Landoscript 1244ad8295 No Bug - Bumping Mobile l10n changesets r=release a=l10n-bump DONTBUILD CLOSED TREE
ach -> de08fabbbf27854d45a434d00002d0a7179f7a64
an -> de08fabbbf27854d45a434d00002d0a7179f7a64
ar -> de08fabbbf27854d45a434d00002d0a7179f7a64
ast -> de08fabbbf27854d45a434d00002d0a7179f7a64
az -> de08fabbbf27854d45a434d00002d0a7179f7a64
be -> de08fabbbf27854d45a434d00002d0a7179f7a64
bg -> de08fabbbf27854d45a434d00002d0a7179f7a64
bn -> de08fabbbf27854d45a434d00002d0a7179f7a64
br -> de08fabbbf27854d45a434d00002d0a7179f7a64
bs -> de08fabbbf27854d45a434d00002d0a7179f7a64
ca -> de08fabbbf27854d45a434d00002d0a7179f7a64
cak -> de08fabbbf27854d45a434d00002d0a7179f7a64
cs -> de08fabbbf27854d45a434d00002d0a7179f7a64
cy -> de08fabbbf27854d45a434d00002d0a7179f7a64
da -> de08fabbbf27854d45a434d00002d0a7179f7a64
de -> de08fabbbf27854d45a434d00002d0a7179f7a64
dsb -> de08fabbbf27854d45a434d00002d0a7179f7a64
el -> de08fabbbf27854d45a434d00002d0a7179f7a64
en-CA -> de08fabbbf27854d45a434d00002d0a7179f7a64
en-GB -> de08fabbbf27854d45a434d00002d0a7179f7a64
eo -> de08fabbbf27854d45a434d00002d0a7179f7a64
es-AR -> de08fabbbf27854d45a434d00002d0a7179f7a64
es-CL -> de08fabbbf27854d45a434d00002d0a7179f7a64
es-ES -> de08fabbbf27854d45a434d00002d0a7179f7a64
es-MX -> de08fabbbf27854d45a434d00002d0a7179f7a64
et -> de08fabbbf27854d45a434d00002d0a7179f7a64
eu -> de08fabbbf27854d45a434d00002d0a7179f7a64
fa -> de08fabbbf27854d45a434d00002d0a7179f7a64
ff -> de08fabbbf27854d45a434d00002d0a7179f7a64
fi -> de08fabbbf27854d45a434d00002d0a7179f7a64
fr -> de08fabbbf27854d45a434d00002d0a7179f7a64
fy-NL -> de08fabbbf27854d45a434d00002d0a7179f7a64
ga-IE -> de08fabbbf27854d45a434d00002d0a7179f7a64
gd -> de08fabbbf27854d45a434d00002d0a7179f7a64
gl -> de08fabbbf27854d45a434d00002d0a7179f7a64
gn -> de08fabbbf27854d45a434d00002d0a7179f7a64
gu-IN -> de08fabbbf27854d45a434d00002d0a7179f7a64
he -> de08fabbbf27854d45a434d00002d0a7179f7a64
hi-IN -> de08fabbbf27854d45a434d00002d0a7179f7a64
hr -> de08fabbbf27854d45a434d00002d0a7179f7a64
hsb -> de08fabbbf27854d45a434d00002d0a7179f7a64
hu -> de08fabbbf27854d45a434d00002d0a7179f7a64
hy-AM -> de08fabbbf27854d45a434d00002d0a7179f7a64
ia -> de08fabbbf27854d45a434d00002d0a7179f7a64
id -> de08fabbbf27854d45a434d00002d0a7179f7a64
is -> de08fabbbf27854d45a434d00002d0a7179f7a64
it -> de08fabbbf27854d45a434d00002d0a7179f7a64
ja -> de08fabbbf27854d45a434d00002d0a7179f7a64
ka -> de08fabbbf27854d45a434d00002d0a7179f7a64
kab -> de08fabbbf27854d45a434d00002d0a7179f7a64
kk -> de08fabbbf27854d45a434d00002d0a7179f7a64
km -> de08fabbbf27854d45a434d00002d0a7179f7a64
kn -> de08fabbbf27854d45a434d00002d0a7179f7a64
ko -> de08fabbbf27854d45a434d00002d0a7179f7a64
lij -> de08fabbbf27854d45a434d00002d0a7179f7a64
lo -> de08fabbbf27854d45a434d00002d0a7179f7a64
lt -> de08fabbbf27854d45a434d00002d0a7179f7a64
ltg -> de08fabbbf27854d45a434d00002d0a7179f7a64
lv -> de08fabbbf27854d45a434d00002d0a7179f7a64
meh -> de08fabbbf27854d45a434d00002d0a7179f7a64
mix -> de08fabbbf27854d45a434d00002d0a7179f7a64
ml -> de08fabbbf27854d45a434d00002d0a7179f7a64
mr -> de08fabbbf27854d45a434d00002d0a7179f7a64
ms -> de08fabbbf27854d45a434d00002d0a7179f7a64
my -> de08fabbbf27854d45a434d00002d0a7179f7a64
nb-NO -> de08fabbbf27854d45a434d00002d0a7179f7a64
ne-NP -> de08fabbbf27854d45a434d00002d0a7179f7a64
nl -> de08fabbbf27854d45a434d00002d0a7179f7a64
nn-NO -> de08fabbbf27854d45a434d00002d0a7179f7a64
oc -> de08fabbbf27854d45a434d00002d0a7179f7a64
pa-IN -> de08fabbbf27854d45a434d00002d0a7179f7a64
pl -> de08fabbbf27854d45a434d00002d0a7179f7a64
pt-BR -> de08fabbbf27854d45a434d00002d0a7179f7a64
pt-PT -> de08fabbbf27854d45a434d00002d0a7179f7a64
rm -> de08fabbbf27854d45a434d00002d0a7179f7a64
ro -> de08fabbbf27854d45a434d00002d0a7179f7a64
ru -> de08fabbbf27854d45a434d00002d0a7179f7a64
sk -> de08fabbbf27854d45a434d00002d0a7179f7a64
sl -> de08fabbbf27854d45a434d00002d0a7179f7a64
son -> de08fabbbf27854d45a434d00002d0a7179f7a64
sq -> de08fabbbf27854d45a434d00002d0a7179f7a64
sr -> de08fabbbf27854d45a434d00002d0a7179f7a64
sv-SE -> de08fabbbf27854d45a434d00002d0a7179f7a64
ta -> de08fabbbf27854d45a434d00002d0a7179f7a64
te -> de08fabbbf27854d45a434d00002d0a7179f7a64
th -> de08fabbbf27854d45a434d00002d0a7179f7a64
tl -> de08fabbbf27854d45a434d00002d0a7179f7a64
tr -> de08fabbbf27854d45a434d00002d0a7179f7a64
trs -> de08fabbbf27854d45a434d00002d0a7179f7a64
uk -> de08fabbbf27854d45a434d00002d0a7179f7a64
ur -> de08fabbbf27854d45a434d00002d0a7179f7a64
uz -> de08fabbbf27854d45a434d00002d0a7179f7a64
vi -> de08fabbbf27854d45a434d00002d0a7179f7a64
wo -> de08fabbbf27854d45a434d00002d0a7179f7a64
xh -> de08fabbbf27854d45a434d00002d0a7179f7a64
zam -> de08fabbbf27854d45a434d00002d0a7179f7a64
zh-CN -> de08fabbbf27854d45a434d00002d0a7179f7a64
zh-TW -> de08fabbbf27854d45a434d00002d0a7179f7a64
2026-06-12 18:47:18 +00:00
Release Engineering Landoscript 3485f0913c No Bug - Bumping Firefox l10n changesets r=release a=l10n-bump DONTBUILD CLOSED TREE
ach -> de08fabbbf27854d45a434d00002d0a7179f7a64
af -> de08fabbbf27854d45a434d00002d0a7179f7a64
an -> de08fabbbf27854d45a434d00002d0a7179f7a64
ar -> de08fabbbf27854d45a434d00002d0a7179f7a64
ast -> de08fabbbf27854d45a434d00002d0a7179f7a64
az -> de08fabbbf27854d45a434d00002d0a7179f7a64
be -> de08fabbbf27854d45a434d00002d0a7179f7a64
bg -> de08fabbbf27854d45a434d00002d0a7179f7a64
bn -> de08fabbbf27854d45a434d00002d0a7179f7a64
bo -> de08fabbbf27854d45a434d00002d0a7179f7a64
bqi -> de08fabbbf27854d45a434d00002d0a7179f7a64
br -> de08fabbbf27854d45a434d00002d0a7179f7a64
brx -> de08fabbbf27854d45a434d00002d0a7179f7a64
bs -> de08fabbbf27854d45a434d00002d0a7179f7a64
ca -> de08fabbbf27854d45a434d00002d0a7179f7a64
ca-valencia -> de08fabbbf27854d45a434d00002d0a7179f7a64
cak -> de08fabbbf27854d45a434d00002d0a7179f7a64
ckb -> de08fabbbf27854d45a434d00002d0a7179f7a64
cs -> de08fabbbf27854d45a434d00002d0a7179f7a64
cy -> de08fabbbf27854d45a434d00002d0a7179f7a64
da -> de08fabbbf27854d45a434d00002d0a7179f7a64
de -> de08fabbbf27854d45a434d00002d0a7179f7a64
dsb -> de08fabbbf27854d45a434d00002d0a7179f7a64
el -> de08fabbbf27854d45a434d00002d0a7179f7a64
en-CA -> de08fabbbf27854d45a434d00002d0a7179f7a64
en-GB -> de08fabbbf27854d45a434d00002d0a7179f7a64
eo -> de08fabbbf27854d45a434d00002d0a7179f7a64
es-AR -> de08fabbbf27854d45a434d00002d0a7179f7a64
es-CL -> de08fabbbf27854d45a434d00002d0a7179f7a64
es-ES -> de08fabbbf27854d45a434d00002d0a7179f7a64
es-MX -> de08fabbbf27854d45a434d00002d0a7179f7a64
et -> de08fabbbf27854d45a434d00002d0a7179f7a64
eu -> de08fabbbf27854d45a434d00002d0a7179f7a64
fa -> de08fabbbf27854d45a434d00002d0a7179f7a64
ff -> de08fabbbf27854d45a434d00002d0a7179f7a64
fi -> de08fabbbf27854d45a434d00002d0a7179f7a64
fr -> de08fabbbf27854d45a434d00002d0a7179f7a64
fur -> de08fabbbf27854d45a434d00002d0a7179f7a64
fy-NL -> de08fabbbf27854d45a434d00002d0a7179f7a64
ga-IE -> de08fabbbf27854d45a434d00002d0a7179f7a64
gd -> de08fabbbf27854d45a434d00002d0a7179f7a64
gl -> de08fabbbf27854d45a434d00002d0a7179f7a64
gn -> de08fabbbf27854d45a434d00002d0a7179f7a64
gu-IN -> de08fabbbf27854d45a434d00002d0a7179f7a64
he -> de08fabbbf27854d45a434d00002d0a7179f7a64
hi-IN -> de08fabbbf27854d45a434d00002d0a7179f7a64
hr -> de08fabbbf27854d45a434d00002d0a7179f7a64
hsb -> de08fabbbf27854d45a434d00002d0a7179f7a64
hu -> de08fabbbf27854d45a434d00002d0a7179f7a64
hy-AM -> de08fabbbf27854d45a434d00002d0a7179f7a64
hye -> de08fabbbf27854d45a434d00002d0a7179f7a64
ia -> de08fabbbf27854d45a434d00002d0a7179f7a64
id -> de08fabbbf27854d45a434d00002d0a7179f7a64
is -> de08fabbbf27854d45a434d00002d0a7179f7a64
it -> de08fabbbf27854d45a434d00002d0a7179f7a64
ja -> de08fabbbf27854d45a434d00002d0a7179f7a64
ja-JP-mac -> de08fabbbf27854d45a434d00002d0a7179f7a64
ka -> de08fabbbf27854d45a434d00002d0a7179f7a64
kab -> de08fabbbf27854d45a434d00002d0a7179f7a64
kk -> de08fabbbf27854d45a434d00002d0a7179f7a64
km -> de08fabbbf27854d45a434d00002d0a7179f7a64
kn -> de08fabbbf27854d45a434d00002d0a7179f7a64
ko -> de08fabbbf27854d45a434d00002d0a7179f7a64
lij -> de08fabbbf27854d45a434d00002d0a7179f7a64
lo -> de08fabbbf27854d45a434d00002d0a7179f7a64
lt -> de08fabbbf27854d45a434d00002d0a7179f7a64
ltg -> de08fabbbf27854d45a434d00002d0a7179f7a64
lv -> de08fabbbf27854d45a434d00002d0a7179f7a64
meh -> de08fabbbf27854d45a434d00002d0a7179f7a64
mk -> de08fabbbf27854d45a434d00002d0a7179f7a64
ml -> de08fabbbf27854d45a434d00002d0a7179f7a64
mr -> de08fabbbf27854d45a434d00002d0a7179f7a64
ms -> de08fabbbf27854d45a434d00002d0a7179f7a64
my -> de08fabbbf27854d45a434d00002d0a7179f7a64
nb-NO -> de08fabbbf27854d45a434d00002d0a7179f7a64
ne-NP -> de08fabbbf27854d45a434d00002d0a7179f7a64
nl -> de08fabbbf27854d45a434d00002d0a7179f7a64
nn-NO -> de08fabbbf27854d45a434d00002d0a7179f7a64
oc -> de08fabbbf27854d45a434d00002d0a7179f7a64
pa-IN -> de08fabbbf27854d45a434d00002d0a7179f7a64
pl -> de08fabbbf27854d45a434d00002d0a7179f7a64
pt-BR -> de08fabbbf27854d45a434d00002d0a7179f7a64
pt-PT -> de08fabbbf27854d45a434d00002d0a7179f7a64
rm -> de08fabbbf27854d45a434d00002d0a7179f7a64
ro -> de08fabbbf27854d45a434d00002d0a7179f7a64
ru -> de08fabbbf27854d45a434d00002d0a7179f7a64
sat -> de08fabbbf27854d45a434d00002d0a7179f7a64
sc -> de08fabbbf27854d45a434d00002d0a7179f7a64
scn -> de08fabbbf27854d45a434d00002d0a7179f7a64
sco -> de08fabbbf27854d45a434d00002d0a7179f7a64
si -> de08fabbbf27854d45a434d00002d0a7179f7a64
sk -> de08fabbbf27854d45a434d00002d0a7179f7a64
skr -> de08fabbbf27854d45a434d00002d0a7179f7a64
sl -> de08fabbbf27854d45a434d00002d0a7179f7a64
son -> de08fabbbf27854d45a434d00002d0a7179f7a64
sq -> de08fabbbf27854d45a434d00002d0a7179f7a64
sr -> de08fabbbf27854d45a434d00002d0a7179f7a64
sv-SE -> de08fabbbf27854d45a434d00002d0a7179f7a64
szl -> de08fabbbf27854d45a434d00002d0a7179f7a64
ta -> de08fabbbf27854d45a434d00002d0a7179f7a64
te -> de08fabbbf27854d45a434d00002d0a7179f7a64
tg -> de08fabbbf27854d45a434d00002d0a7179f7a64
th -> de08fabbbf27854d45a434d00002d0a7179f7a64
tl -> de08fabbbf27854d45a434d00002d0a7179f7a64
tr -> de08fabbbf27854d45a434d00002d0a7179f7a64
trs -> de08fabbbf27854d45a434d00002d0a7179f7a64
uk -> de08fabbbf27854d45a434d00002d0a7179f7a64
ur -> de08fabbbf27854d45a434d00002d0a7179f7a64
uz -> de08fabbbf27854d45a434d00002d0a7179f7a64
vi -> de08fabbbf27854d45a434d00002d0a7179f7a64
wo -> de08fabbbf27854d45a434d00002d0a7179f7a64
xh -> de08fabbbf27854d45a434d00002d0a7179f7a64
zh-CN -> de08fabbbf27854d45a434d00002d0a7179f7a64
zh-TW -> de08fabbbf27854d45a434d00002d0a7179f7a64
2026-06-12 18:47:16 +00:00
Silaghi 83d996466a Revert "Bug 2046194 - Show snackbar on top of the menu r=android-reviewers,jonalmeida" for causing fenix-lints failures at MenuDialogFragment.kt
This reverts commit b0f26b6b7a.
2026-06-12 18:18:14 +00:00
Daniel Minor 23b5ae1162 Bug 2046939 - Update Test262; r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D305966
2026-06-12 18:02:31 +00:00
ffxbld ba74c46f11 No Bug, mozilla-central repo-update remote-settings tld-suffixes mobile-experiments ct-logs - r=release-managers,RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D306473
2026-06-12 18:02:07 +00:00
Thomas Wisniewski 41d78d98ee Bug 2044288 - add a desktop-only CSS webcompat intervention for www.kuaishou.com; r=ksenia,webcompat-reviewers,dholbert
Differential Revision: https://phabricator.services.mozilla.com/D306467
2026-06-12 18:01:45 +00:00
Thomas Wisniewski dbda30fd3e Bug 2046875 - add a CSS webcompat intervention for Google Search's World Cup 2026 mini-games; r=ksenia,webcompat-reviewers,dholbert
Differential Revision: https://phabricator.services.mozilla.com/D306466
2026-06-12 18:01:43 +00:00
Bryan Johns 8fd8a72381 Bug 2039709 - Use RemoteClient sync API to update models cache when remote settings updates r=ngrato,tetchart,tgiles
Differential Revision: https://phabricator.services.mozilla.com/D300637
2026-06-12 18:01:18 +00:00
scottdowne 96b53af654 Bug 2047216 - Newtab sports widget move opening watch modal links to new tab r=Dre
Differential Revision: https://phabricator.services.mozilla.com/D306459
2026-06-12 18:00:55 +00:00
unifolia 01f230ae37 Bug 2043323 - Prevent Fx Suggest navigation results from appearing as Ask items r=urlbar-reviewers,czhou,mak
Differential Revision: https://phabricator.services.mozilla.com/D305277
2026-06-12 18:00:33 +00:00
mike a b0f26b6b7a Bug 2046194 - Show snackbar on top of the menu r=android-reviewers,jonalmeida
Differential Revision: https://phabricator.services.mozilla.com/D304672
2026-06-12 18:00:13 +00:00
Ed Lee d6cfeff29a Bug 2041178 - extend expiry of the genai chatbot glean to 166 r=omarg
bump by a year except for 2 unused events deleted

Differential Revision: https://phabricator.services.mozilla.com/D306383
2026-06-12 17:59:47 +00:00
Maxx Crawford 2ee9365d0c Bug 2047209 - Spin the sports live-refresh button while a refresh is in flight. r=thecount
The refresh button's only feedback was its disabled state. Spin the icon on click so the action reads as "working": start on click, stop when fresh /live data lands, with a 2s minimum so a fast response doesn't flicker and the 15s cooldown as a safety cap. Gated behind prefers-reduced-motion.

Differential Revision: https://phabricator.services.mozilla.com/D306453
2026-06-12 17:59:24 +00:00
Reem H 1ac52b29fd Bug 2044939 - Add refresh button to sports widget. r=maxx
Differential Revision: https://phabricator.services.mozilla.com/D306089
2026-06-12 17:59:21 +00:00
Omar Gonzalez 2ca0f66da7 Bug 2045362 - fix intermittent test failure in sidebar toggle keybinding in Smart Window r=yjamora
Differential Revision: https://phabricator.services.mozilla.com/D306337
2026-06-12 17:59:00 +00:00
Stephen Thompson 63ead8c91c Bug 2041529 - Add-ons Manager Nova icons r=extension-reviewers,desktop-theme-reviewers,rpl,dao
Displays the Nova iconography when `browser.nova.enabled` is true.

Updates 7 existing add-ons icons with the following approach:
1. wraps the existing <path>(s) in a `<g class="proton">`
2. appends the Nova redrawn icon's <path>(s) in a `<g class="nova">`
3. adds a <style> block with rules to show only one group at a time

This is an unorthodox approach. It has several drawbacks:
1. increases individual SVG size
2. increases the time required to render each SVG
3. viewing the SVGs in normal image tools will only show the Proton variant, which is confusing

However, I think this approach is better than alternatives.

1. do not need to add new Nova icon files and CSS rules to use them conditionally
2. SVG uses in XHTML and similar contexts doesn't require special handling
3. this can be undone very easily after Nova is released, leaving only the Nova paths
4. the SVG rendering performance impact is not large, and alternatives would still have non-zero performance impact
5. total size of SVGs is not that much larger than if we added separate Nova icons

Differential Revision: https://phabricator.services.mozilla.com/D301967
2026-06-12 17:58:35 +00:00
Harrison Oglesby 55d7d786a8 Bug 2042953 - Part 2: Scan QR codes from gallery images in Lens camera QR mode r=android-reviewers,petru
Differential Revision: https://phabricator.services.mozilla.com/D303113
2026-06-12 17:58:14 +00:00
Harrison Oglesby f463ba0503 Bug 2042953 - Part 1: Add still-image bitmap decoding to QrAnalyzer r=android-reviewers,petru
Differential Revision: https://phabricator.services.mozilla.com/D303112
2026-06-12 17:58:11 +00:00
Stephen Thompson eb79b1d996 Bug 2041523 - Form Autofill Nova icons r=credential-management-reviewers,dimi
Displays the Nova iconography when `browser.nova.enabled` is true.

Updates 2 existing form autofill icons with the following approach:
1. wraps the existing <path>(s) in a `<g class="proton">`
2. appends the Nova redrawn icon's <path>(s) in a `<g class="nova">`
3. adds a <style> block with rules to show only one group at a time

This is an unorthodox approach. It has several drawbacks:
1. increases individual SVG size
2. increases the time required to render each SVG
3. viewing the SVGs in normal image tools will only show the Proton variant, which is confusing

However, I think this approach is better than alternatives.

1. do not need to add new Nova icon files and CSS rules to use them conditionally
2. SVG uses in XHTML and similar contexts doesn't require special handling
3. this can be undone very easily after Nova is released, leaving only the Nova paths
4. the SVG rendering performance impact is not large, and alternatives would still have non-zero performance impact
5. total size of SVGs is not that much larger than if we added separate Nova icons

Differential Revision: https://phabricator.services.mozilla.com/D301966
2026-06-12 17:57:51 +00:00
Stephen Thompson 1a93df5c07 Bug 2041521 - IP Protection Nova icons r=ip-protection-reviewers,kpatenio
Displays the Nova iconography when `browser.nova.enabled` is true.

Updates 1 existing ip-protection icon with the following approach:
1. wraps the existing <path>(s) in a `<g class="proton">`
2. appends the Nova redrawn icon's <path>(s) in a `<g class="nova">`
3. adds a <style> block with rules to show only one group at a time

This is an unorthodox approach. It has several drawbacks:
1. increases individual SVG size
2. increases the time required to render each SVG
3. viewing the SVGs in normal image tools will only show the Proton variant, which is confusing

However, I think this approach is better than alternatives.

1. do not need to add new Nova icon files and CSS rules to use them conditionally
2. SVG uses in XHTML and similar contexts doesn't require special handling
3. this can be undone very easily after Nova is released, leaving only the Nova paths
4. the SVG rendering performance impact is not large, and alternatives would still have non-zero performance impact
5. total size of SVGs is not that much larger than if we added separate Nova icons

Differential Revision: https://phabricator.services.mozilla.com/D301965
2026-06-12 17:57:30 +00:00
Giulia Cardieri 73df402aa3 Bug 2046845 - Add gradient borders for Smart Window Nova chat buttons r=mlucks
Add purple gradient border to new chat and close sidebar buttons (inside the smart window chat content) on both default and hover/active states.

Differential Revision: https://phabricator.services.mozilla.com/D306249
2026-06-12 17:57:09 +00:00
Markus Stange e3fb3fa6d3 Bug 2043732 - Use encoding_rs for UTF-8 to UTF-16 string inflation. r=jandem
InflateUTF8StringHelper used a hand-rolled byte-by-byte decoder that
walked the input twice: a counting pass to compute the output length and
a copy pass to emit the chars. Route the char16_t case through a new
InflateUTF8ToNewTwoByteCharsZ helper that allocates srclen + 1 char16_t
and runs a single SIMD pass via encoding_rs
(mozilla::ConvertUtf8toUtf16{,WithoutReplacement}). On invalid UTF-8 in
Throw mode, fall back to the slow validator just to preserve the precise
byte-offset error report. The Latin1 path is unchanged.

This speeds up IOUtils::JsBuffer::IntoString by around 2.5x, so it should
speed up session restore.

Before: https://share.firefox.dev/3POjZVq
After: https://share.firefox.dev/4o5j5AE

Differential Revision: https://phabricator.services.mozilla.com/D303498
2026-06-12 17:56:48 +00:00
Nina Pypchenko 71d64db5f1 Bug 2040519 - Sports widget: Add logic to feed data to display correct translated strings r=thecount,maxx
Adds localised text across the Sports widget's three tabs. The Now tab footer shows "Half time" or "Extra time" for live matches in those states. The Results tab footer shows "Full time" by default, with "• Penalties" added when the match was decided on penalties. The Upcoming tab badge replaces the kickoff time with "Delayed", "Postponed", "Suspended", or "Cancelled" when the status calls for it.

The Results tab always shows one of the localised strings (defaulting to "Full time" for any value that isn't mapped) per the Figma design - before, an unrecognised status would show through as raw text. The Upcoming tab also accepts both "cancelled" (British) and "canceled" (American) spellings, since the API [apparently uses the American form](https://github.com/mozilla-services/merino-py/blob/main/merino/providers/suggest/sports/backends/sportsdata/common/__init__.py#L20).

Differential Revision: https://phabricator.services.mozilla.com/D304294
2026-06-12 17:56:26 +00:00
nickgrato e0a321b9f3 Bug 2040449 - Handle restored chats with incomplete or abandoned browser actions r=omarg,yjamora
Differential Revision: https://phabricator.services.mozilla.com/D304832
2026-06-12 17:56:00 +00:00
Micah Killoran dd289a65b7 Bug 2045137 - Fix invisible autocomplete row text by using --button-background-color-hover. r=credential-management-reviewers,desktop-theme-reviewers,dimi,Itiel
Differential Revision: https://phabricator.services.mozilla.com/D305704
2026-06-12 17:55:39 +00:00
Silaghi de658b99dc Revert "Bug 2023355, Bug 2031615 - Use HTTPS RR for websocket connection, r=necko-reviewers,valentin" for causing wpt failures at onnection-allowlist/tentative/webtransport
This reverts commit 48cf71669b.

Revert "Bug 2031615 - Use Happy Eyeballs to establish webtransport connection, r=necko-reviewers,valentin"

This reverts commit 6d85c5f975.

Revert "Bug 2031615 - Use Happy Eyeballs to establish websocket connection, r=necko-reviewers,valentin"

This reverts commit 0e3c3748fd.
2026-06-12 17:53:19 +00:00
Silaghi 13151bb45d Revert "Bug 2046846 - [WebCompat Reporter v3] Add icon next to the URL text field r=android-reviewers,tthibaud" for causing detect-leaks-arm failures
This reverts commit 9e0812ce71.
2026-06-12 17:05:31 +00:00
agoloman d1b0d1949a Revert "Bug 2039709 - Use RemoteClient sync API to update models cache when remote settings updates r=ngrato,tetchart,tgiles" for causing bc failures @browser_aiwindow_smartbar_telemetry.js.
This reverts commit 538c93db5e.
2026-06-12 16:47:55 +00:00
agoloman 08804d45c0 Bug 2046998 - update wpt metadata 2026-06-12 16:46:08 +00:00
agoloman 92a1614242 Revert "Bug 2042808 - Make LoginManagerStorage.create() async r=credential-management-reviewers,dimi,hsohaney" for causing junit failures @loginSelectRelayUsername.
This reverts commit 66e0c1d488.
2026-06-12 16:30:32 +00:00