Commit Graph

1040 Commits

Author SHA1 Message Date
Mike Conley
ffe9f710be Bug 1801678 - Refactor OverflowableToolbar to turn #webExtList into a memoizing getter. r=Gijs
The WebExtension overflow list is created lazily because the panel itself is lazy, and only gets
inserted the first time it is needed. Originally, I had written a separate function `#getWebExtList()`
to do the work of forcing the WebExtension overflow list to de-lazify, and then hold a reference
to it in #webExtList.

It turns out, that's a bit of a footgun. More than once, I've used #webExtList directly, forgetting
that the value might turn out to be `null` because the list hasn't delazified yet.

In order to smooth out that rough edge, this patch makes `#webExtList` a memoizing (evalutes once,
caches the return value for subsequent calls) getter so that anything that uses it doesn't have
to worry about the lazification. The reference member is now called #webExtListRef, and I've
added documentation about how it's probably best not to use it directly.

Differential Revision: https://phabricator.services.mozilla.com/D162585
2022-11-24 18:51:19 +00:00
Mike Conley
1337c13918 Bug 1798377 - Don't display the overflow button unless there's at least 1 item overflowed with non-zero width. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D162576
2022-11-24 18:51:18 +00:00
Mark Banner
5d1820b074 Bug 1799314 - Convert consumers of testing modules to import ES modules direct (browser/). r=Gijs,settings-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D161914
2022-11-17 12:00:30 +00:00
Mike Conley
add2b05551 Bug 1798896 - Test Unified Extension behaviours for CustomizableUI.jsm. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D161843
2022-11-17 02:00:00 +00:00
Mike Conley
e32c1a7d15 Bug 1798896 - Test Unified Extension upgrade and downgrade behavior. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D161842
2022-11-17 01:59:59 +00:00
Emilio Cobos Álvarez
07c539563d Bug 1799580 - Remove display: -moz-popup. r=TYLin
We already rely on it applying only to XULPopupElement's. Make it
explicit and remove the CSS value.

Differential Revision: https://phabricator.services.mozilla.com/D161552
2022-11-09 20:38:04 +00:00
Csoregi Natalia
4e859d7b1a Backed out 3 changesets (bug 1799343, bug 1799580) for causing failures on /browser_history_after_appMenu.js. CLOSED TREE
Backed out changeset 63c270ba91ad (bug 1799343)
Backed out changeset 713e6f0fbd20 (bug 1799580)
Backed out changeset 42d1b8742662 (bug 1799343)
2022-11-09 21:26:06 +02:00
Emilio Cobos Álvarez
80aaaacfe0 Bug 1799580 - Remove display: -moz-popup. r=TYLin
We already rely on it applying only to XULPopupElement's. Make it
explicit and remove the CSS value.

Differential Revision: https://phabricator.services.mozilla.com/D161552
2022-11-09 14:19:22 +00:00
Cristian Tuns
0e3ee79a08 Backed out 2 changesets (bug 1799580, bug 1799343) for causing mochitest failures on win7 CLOSED TREE
Backed out changeset fb0df93a4719 (bug 1799580)
Backed out changeset 493c9ca00c91 (bug 1799343)
2022-11-09 07:15:51 -05:00
Emilio Cobos Álvarez
f496edbc02 Bug 1799580 - Remove display: -moz-popup. r=TYLin
We already rely on it applying only to XULPopupElement's. Make it
explicit and remove the CSS value.

Differential Revision: https://phabricator.services.mozilla.com/D161552
2022-11-09 09:17:22 +00:00
Mike Conley
c712b0d4e1 Bug 1798814 - Prevent non-extension buttons from entering the AREA_ADDONS area. r=cmkm
Differential Revision: https://phabricator.services.mozilla.com/D161096
2022-11-08 14:51:41 +00:00
Mike Conley
c759904dae Bug 1797836 - Part 2: Update CUI to have a general TYPE_PANEL instead of TYPE_MENU_PANEL. r=desktop-theme-reviewers,dao,sclements
Long ago, the menu panel in was a customizable area that users could drag things into.

That changed back around 2017 in bug 1354117 when the Photon redesign was built. The
menu panel become a static menu, but we also made it possible to permanently move things
to the overflow panel of the nav-bar.

It looks like we never updated the area type constant from referring to the old menu panel
though, so it's "TYPE_MENU_PANEL", and registering a node for it happens with
registerMenuPanel. This patch changes to constant to TYPE_PANEL and updates the registration
method to registerPanelNode.

I a check around the codebase as well as GitHub looking to see if there were any
system add-ons or experimental WebExtensions that rely on TYPE_MENU_PANEL / registerMenuPanel,
but I couldn't find any.

Differential Revision: https://phabricator.services.mozilla.com/D161078
2022-11-08 14:51:40 +00:00
Mike Conley
ce84c284ed Bug 1797838 - Add a webExtension property to CustomizableUI widgets for browserAction buttons. r=dao,willdurand
This property, along with the CustomizableUI.isWebExtensionWidget, will make it possible
to distinguish WebExtension-provided widgets without sniffing CSS classes, which is what
we currently do.

In the event that the widget has been destroyed or hasn't yet been created, this will
fallback to looking for the `-browser-action` suffix on the ID. This is mainly for use during
migrations which happen early during CustomizableUI startup, when it's unlikely that the
extensions have finished initializing themselves and creating their widgets yet.

Differential Revision: https://phabricator.services.mozilla.com/D160802
2022-11-02 16:52:59 +00:00
Mike Conley
bd0a2d6a38 Bug 1797155 - Part 2: Make it possible to redirect browser action widgets to the Unified Extension panel on overflow. r=sclements,willdurand
When Unified Extensions is enabled, we want to make it so that any WebExtension browser_actions
overflow into the Unified Extensions panel instead of the default overflow panel.

Depends on D160292

Differential Revision: https://phabricator.services.mozilla.com/D160293
2022-11-01 21:50:56 +00:00
Butkovits Atila
517ae6c72a Backed out 3 changesets (bug 1797155) for causing failures at browser_unified_extensions_overflowable_toolbar.js. CLOSED TREE
Backed out changeset 67f5e4af25b6 (bug 1797155)
Backed out changeset b8a8bd646606 (bug 1797155)
Backed out changeset ec7cdd68c414 (bug 1797155)
2022-11-01 19:33:25 +02:00
Mike Conley
7ba904bf88 Bug 1797155 - Part 2: Make it possible to redirect browser action widgets to the Unified Extension panel on overflow. r=sclements,willdurand
When Unified Extensions is enabled, we want to make it so that any WebExtension browser_actions
overflow into the Unified Extensions panel instead of the default overflow panel.

Differential Revision: https://phabricator.services.mozilla.com/D160293
2022-11-01 16:44:33 +00:00
Marian-Vasile Laza
e32d202d39 Backed out 3 changesets (bug 1797155) for causing bc failures on browser_unified_extensions_overflowable_toolbar.js. CLOSED TREE
Backed out changeset ee3f27f43bc5 (bug 1797155)
Backed out changeset 863603ed770a (bug 1797155)
Backed out changeset 3fbfc3d94e5a (bug 1797155)
2022-10-31 21:29:22 +02:00
Mike Conley
fc80458832 Bug 1797155 - Part 2: Make it possible to redirect browser action widgets to the Unified Extension panel on overflow. r=sclements,willdurand
When Unified Extensions is enabled, we want to make it so that any WebExtension browser_actions
overflow into the Unified Extensions panel instead of the default overflow panel.

Differential Revision: https://phabricator.services.mozilla.com/D160293
2022-10-31 18:05:20 +00:00
Emilio Cobos Álvarez
49a2acb9ce Bug 1797156 - Fix browser_976792_insertNodeInWindow, and fix a couple minor typos.
MANUAL PUSH: Trivial fix CLOSED TREE
2022-10-26 20:07:30 +02:00
Mike Conley
dd68e9ca7e Bug 1797156 - Add a tag to make it easier to run OverflowableToolbar tests on their own. r=sclements,cmkm
Differential Revision: https://phabricator.services.mozilla.com/D160105
2022-10-26 14:40:48 +00:00
Cosmin Sabou
6c2dad886b Bug 1682752 - Disable browser_876926_customize_mode_wrapping.js on linux opt for frequent failures. r=intermittent-reviewers,MasterWayZ DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D159981
2022-10-23 23:34:16 +00:00
Emilio Cobos Álvarez
a354c85b02 Bug 1796199 - Remove script access to XUL layout attributes. r=Gijs
These don't work on emulated flexbox. We only have a couple of uses.

See D159726 for the diagnostic patch I used to catch these.

Differential Revision: https://phabricator.services.mozilla.com/D159727
2022-10-20 08:36:00 +00:00
Butkovits Atila
82536ebfc5 Backed out changeset 39f39360ae48 (bug 1796199) for causing failures at test_panel.xhtml. CLOSED TREE 2022-10-20 00:39:56 +03:00
Emilio Cobos Álvarez
5d4865adb2 Bug 1796199 - Remove script access to XUL layout attributes. r=Gijs
These don't work on emulated flexbox. We only have a couple of uses.

See D159726 for the diagnostic patch I used to catch these.

Differential Revision: https://phabricator.services.mozilla.com/D159727
2022-10-19 19:18:04 +00:00
Mark Banner
5407bdffa8 Bug 1792341 - Migrate more toolkit/modules consumers to use direct ES module import. r=Gijs,webdriver-reviewers,perftest-reviewers,necko-reviewers,geckoview-reviewers,preferences-reviewers,application-update-reviewers,pip-reviewers,credential-management-reviewers,sgalich,owlish,bytesized,AlexandruIonescu,whimboo,mconley,mixedpuppy
Mainly automated changes. Some manual ESLint fixes and whitespace cleanup.

Differential Revision: https://phabricator.services.mozilla.com/D158452
2022-10-18 11:21:26 +00:00
Emilio Cobos Álvarez
c36fff83db Bug 1795260 - Also clear the inNavbar pref so that following test keeps working.
MANUAL PUSH: Trivial orange fix CLOSED TREE
2022-10-17 23:28:10 +02:00
Emilio Cobos Álvarez
299ce96ba4 Bug 1795260 - Test that the searchbar doesn't overflow the toolbar even with a big user-imposed size. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D159521
2022-10-17 20:59:59 +00:00
Alexandre Poirot
bde84f5b65 Bug 1793604 - [devtools] Convert Loader.jsm to ESM. r=perftest-reviewers,geckoview-reviewers,preferences-reviewers,owlish,kshampur,jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D158582
2022-10-14 12:19:42 +00:00
Emilio Cobos Álvarez
1f2ad76857 Bug 1790616 - Minor CSS tweaks that are needed for modern flexbox. r=dao
These fix rendering or test issues with flex emulation, but don't change
rendering without, so can land separately.

Differential Revision: https://phabricator.services.mozilla.com/D159073
2022-10-13 14:38:01 +00:00
William Durand
88081727c8 Bug 1788994 - Fix test cases when the unifiedExtensions pref is enabled by default. r=rpl,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D157185
2022-10-04 08:45:57 +00:00
Mark Banner
a49b8ef78f Bug 1792365 - Convert toolkit/modules consumers to use ES module imports directly. r=webdriver-reviewers,perftest-reviewers,geckoview-reviewers,extension-reviewers,preferences-reviewers,desktop-theme-reviewers,application-update-reviewers,pip-reviewers,credential-management-reviewers,robwu,Gijs,sgalich,bytesized,AlexandruIonescu,dao,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D158094
2022-09-29 06:52:34 +00:00
Emilio Cobos Álvarez
4ab80589c9 Bug 1689816 - Implement <tabpanels> and <deck> without XUL layout. r=Gijs,Jamie,morgan,preferences-reviewers,mconley,TYLin
Gijs for front-end bits, layout for the new CSS properties and the
removal of nsDeckFrame / nsStackLayout, Jamie and Morgan for the a11y
changes.

As discussed in the bug, the main tricky part here is handling a11y
correctly. For <deck>, that's trivial (just use `visibility: hidden` to
hide the panels visually, while removing the unselected panels from the
a11y tree).

For <tabpanels> however we need to do something special. We do want to
hide stuff visually, but we want to preserve the contents in the a11y
tree.

For that, the easiest fix is introducing a new privileged CSS property
(-moz-subtree-hidden-only-visually), which takes care of not painting
the frame, but marks stuff offscreen in the accessibility tree. This is
not intended to be a property used widely.

Other than that, the changes are relatively straight-forward, though
some of the accessible/mac changes I could get a sanity-check on.

Differential Revision: https://phabricator.services.mozilla.com/D157875
2022-09-27 04:18:16 +00:00
Marian-Vasile Laza
338fc0a451 Backed out changeset 2f74f8f2ed19 (bug 1689816) for causing reftest failures on skip-ink-multiline-position.html. 2022-09-26 23:24:03 +03:00
Emilio Cobos Álvarez
ba878e30c1 Bug 1689816 - Implement <tabpanels> and <deck> without XUL layout. r=Gijs,Jamie,morgan,preferences-reviewers,mconley,TYLin
Gijs for front-end bits, layout for the new CSS properties and the
removal of nsDeckFrame / nsStackLayout, Jamie and Morgan for the a11y
changes.

As discussed in the bug, the main tricky part here is handling a11y
correctly. For <deck>, that's trivial (just use `visibility: hidden` to
hide the panels visually, while removing the unselected panels from the
a11y tree).

For <tabpanels> however we need to do something special. We do want to
hide stuff visually, but we want to preserve the contents in the a11y
tree.

For that, the easiest fix is introducing a new privileged CSS property
(-moz-subtree-hidden-only-visually), which takes care of not painting
the frame, but marks stuff offscreen in the accessibility tree. This is
not intended to be a property used widely.

Other than that, the changes are relatively straight-forward, though
some of the accessible/mac changes I could get a sanity-check on.

Differential Revision: https://phabricator.services.mozilla.com/D157875
2022-09-26 17:40:30 +00:00
Emilio Cobos Álvarez
abab9b2db7 Bug 1788273 - Tweak popup alignment so that it looks good on mirrored wayland popups. r=dao,mak
When these panels had arrows, I guess the bottomcenter topleft alignment
made sense so that you could precisely align the arrow, but that's not
what we do now.

Don't use bottomcenter / leftcenter / rightcenter, since we really want
the sides to align.

This shouldn't change behavior on any platform except Linux + Wayland,
where the alignment looks good now in the case of bug 1784876.

Differential Revision: https://phabricator.services.mozilla.com/D156099
2022-09-02 20:26:29 +00:00
Butkovits Atila
e4a4a23311 Backed out changeset 368a7ce1b104 (bug 1788273) for causing failures at browser_recently_closed_tabs.js. CLOSED TREE 2022-09-02 16:35:55 +03:00
Emilio Cobos Álvarez
72c00adfaa Bug 1788273 - Tweak popup alignment so that it looks good on mirrored wayland popups. r=dao,mak
When these panels had arrows, I guess the bottomcenter topleft alignment
made sense so that you could precisely align the arrow, but that's not
what we do now.

Don't use bottomcenter / leftcenter / rightcenter, since we really want
the sides to align.

This shouldn't change behavior on any platform except Linux + Wayland,
where the alignment looks good now in the case of bug 1784876.

Differential Revision: https://phabricator.services.mozilla.com/D156099
2022-09-02 11:18:54 +00:00
Mark Banner
1e3410cbdd Bug 1782008 - Remove now unnecessary .eslintrc.js files. r=webcompat-reviewers,extension-reviewers,media-playback-reviewers,pip-reviewers,denschub,rpl,alwu,mossop
Differential Revision: https://phabricator.services.mozilla.com/D152736
2022-08-03 11:16:20 +00:00
Ryan VanderMeulen
5a3c54219d Bug 1776496 - Re-enable some passing browser-chrome tests. r=preferences-reviewers,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D150280
2022-06-27 13:57:41 +00:00
Tooru Fujisawa
9ac8a72331 Bug 1772100 - Part 3: Use plain object for lazy getter in browser/components/customizableui/. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D148013
2022-06-10 19:42:59 +00:00
Tooru Fujisawa
f947410342 Bug 1772351 - Part 3: Stop calling XPCOMUtils.defineLazyModuleGetters for AppConstants. r=florian,webdriver-reviewers,whimboo,robwu
Differential Revision: https://phabricator.services.mozilla.com/D148166
2022-06-06 04:42:09 +00:00
Molnar Sandor
4c2b06df41 Backed out 15 changesets (bug 1772313, bug 1772351, bug 1772360) for causing xpc failures in telemetry/tests/unit/test_SocketScalars.js CLOSED TREE
Backed out changeset c8b0a2ed239e (bug 1772360)
Backed out changeset 1922adad6abe (bug 1772351)
Backed out changeset 6d3634cce489 (bug 1772351)
Backed out changeset f03968a9d053 (bug 1772351)
Backed out changeset e7a38ef90fe4 (bug 1772351)
Backed out changeset b389e7654771 (bug 1772313)
Backed out changeset 59a33598ff51 (bug 1772313)
Backed out changeset ab60885a8a93 (bug 1772313)
Backed out changeset aad8efac9d05 (bug 1772313)
Backed out changeset 4378e519a8e7 (bug 1772313)
Backed out changeset 302ac54741f8 (bug 1772313)
Backed out changeset 74c59f9fd51c (bug 1772313)
Backed out changeset 575fb877c56c (bug 1772313)
Backed out changeset 2eaa68f10b19 (bug 1772313)
Backed out changeset 4a8b3ba193dc (bug 1772313)
2022-06-06 07:04:25 +03:00
Tooru Fujisawa
b580e51d8f Bug 1772351 - Part 3: Stop calling XPCOMUtils.defineLazyModuleGetters for AppConstants. r=florian,webdriver-reviewers,whimboo,robwu
Differential Revision: https://phabricator.services.mozilla.com/D148166
2022-06-06 02:49:13 +00:00
Shane Hughes
0c18275326 Bug 1757364 - Fix failure in browser_PanelMultiView_focus.js. r=Gijs
There's an infinite loop in this test in some environments, caused by
PanelMultiView's tree walker methods checking for width/height of all
focusable elements. Since the buttons in the test panel have no labels,
and in some conditions have no padding, they have 0 height, causing the
tree walker to fail to find a focusable element. The patch just gives
the buttons labels.

Differential Revision: https://phabricator.services.mozilla.com/D147201
2022-05-24 16:19:00 +00:00
Cristian Tuns
a392ccb35a Backed out changeset 5029c82449ff (bug 1764081) for causing mochitest failures on browser_locale_changes.js CLOSED TREE 2022-04-28 12:18:15 -04:00
Greg Tatum
6190be5e09 Bug 1764081 - Fix Fluent locale switching in CustomizeUI; r=platform-i18n-reviewers,dminor
This fixes the Fluent live switching, but does not fix the elements
defined by properties files.

Differential Revision: https://phabricator.services.mozilla.com/D144443
2022-04-28 15:21:02 +00:00
Gijs Kruitbosch
edda40141b Bug 1753696 - Automatic rewrite: replace add_task(setup with add_setup in browser mochitest, r=Standard8,webcompat-reviewers,twisniewski
Differential Revision: https://phabricator.services.mozilla.com/D141437
2022-03-30 16:16:42 +00:00
Norisz Fay
e1d7571cc8 Backed out 2 changesets (bug 1753696) for causing multiple dt and bc failures CLOSED TREE
Backed out changeset 67fd9edfbcea (bug 1753696)
Backed out changeset a9d957ea887b (bug 1753696)
2022-03-30 12:17:55 +03:00
Gijs Kruitbosch
1214ac636b Bug 1753696 - Automatic rewrite: replace add_task(setup with add_setup in browser mochitest, r=Standard8,webcompat-reviewers,twisniewski
Differential Revision: https://phabricator.services.mozilla.com/D141437
2022-03-30 08:18:51 +00:00
Mark Banner
d22663f0f9 Bug 1758476 - Remove some unnecessary uses of the target object argument to ChromeUtils.import. r=mossop,webdriver-reviewers,perftest-reviewers,robwu,whimboo,AlexandruIonescu
Differential Revision: https://phabricator.services.mozilla.com/D140518
2022-03-17 22:13:08 +00:00