For speaker permissions, this has the effect of presenting a menulist instead
of a label when a device-specific ALLOW permission is set, providing the
option to the user of changing this to a BLOCK.
A global permission for speaker selection is not currently supported but if it
were implemented and set to BLOCK, then a menulist would be shown for all
sites with permissions set. It would include at least PROMPT and BLOCK
menuitems. This change would mean that the menulist selected item can display
"Allowed" when a device-specific ALLOW permission has already been granted
through a selectAudioOutput() prompt.
_permissionsToChange is modified in _removePermissionFromList() so that
permissions changed then deleted are not added by onApplyChanges().
Differential Revision: https://phabricator.services.mozilla.com/D172085
This is not a new regression: that min-height which effectively prevents
shrinking of this list has been there since ~forever, so probably this
broke, if it broke at all, when we enabled modern flexbox emulation of
these dialogs.
Now that XUL can shrink this gets us the behavior we want (default to
18em, but allow both growing and shrinking).
Fix the sites list as well to behave similarly.
Differential Revision: https://phabricator.services.mozilla.com/D173034
In a setup with:
<hbox>
<something flex="1"/>
<something-else/>
</hbox>
Before bug 1822131 <something flex="1"> ended up with flex-basis: auto,
but was the only thing able to shrink, so <something-else> stayed the
same size.
After that bug however <something-else> is able to shrink too, so both
elements shrink. This wouldn't happen if flex="1" actually worked like
flex: 1 does.
However flex: 1 causes stuff like explicit main sizes to be
(effectively) ignored, so we need to fix up a few cases where now we'd
start flexing too much. For that, add a debug assert to
nsFlexContainerFrame to catch the would-be behavior changes here.
For the most part they're actually no-op since they're setting tiny
sizes, but preferences and devtools needed a couple real fixes.
The profile selection spacer is useless (zero-size).
Hopefully the last xul.css change I need to do :')
Differential Revision: https://phabricator.services.mozilla.com/D172704
This patch adds support only for BLOCK permissions because ALLOW permissions
are double-keyed and will be included via a subsequent patch.
Support for a global BLOCK permission is not added here because of
inconsistencies in the way this interacts with device-specific ALLOW
permissions.
Differential Revision: https://phabricator.services.mozilla.com/D170303
Under Flatpak we cannot determine if the application is set as default handler
for http/https protocols and also the application cannot set the system defaults.
In order to avoid user confusion we hide the defaultBrowserBox which
under flatpak shows always: "Firefox is not your default browser" and the
"Make Default..." button does not make any change to the system.
Differential Revision: https://phabricator.services.mozilla.com/D170590
Done mostly automatically via find/replace following the conversions
specified here:
https://groups.google.com/a/mozilla.org/g/firefox-dev/c/9sGpF1TNbLk/m/QpU3oTUuAgAJ
For the most part I think the "flex: N N" usage could be simplified to
just "flex: N", but I wanted to preserve behavior (-moz-box-flex sets
both flex-grow and flex-shrink).
I changed legacy layout to also look at the order property rather than
-moz-box-ordinal-group because it made splitters and treecols easier (we
don't need to deal with both orders).
Differential Revision: https://phabricator.services.mozilla.com/D171715
Done mostly automatically via find/replace following the conversions
specified here:
https://groups.google.com/a/mozilla.org/g/firefox-dev/c/9sGpF1TNbLk/m/QpU3oTUuAgAJ
For the most part I think the "flex: N N" usage could be simplified to
just "flex: N", but I wanted to preserve behavior (-moz-box-flex sets
both flex-grow and flex-shrink).
I changed legacy layout to also look at the order property rather than
-moz-box-ordinal-group because it made splitters and treecols easier (we
don't need to deal with both orders).
Differential Revision: https://phabricator.services.mozilla.com/D171715
Up until now, we've used the connectedCallback to initialize the MigrationWizard. That's
been fine, except that it requires us to remove and then re-add the element to the DOM
if we want to "reset" it and start over.
This patch adds a method "requestState" to the MigrationWizard that kicks off the
initialization. Embedders can set the `auto-request-state` attribute on the
element if they're happy to just use the connectedCallback.
Finally, this adds an intrinsic width to the entire MigrationWizard element to reduce
flicker when transitioning between states.
Differential Revision: https://phabricator.services.mozilla.com/D171742
The test is checking whether the preferences page has ever been scrolled at
all for any reason, which means the scroll that happens when the setting under
test is focused is causing the failure. But we're really only interested in
what happens when the setting is toggled, not focused, so we should save the
scroll position right before the toggle happens and compare the final position
against that, not just always against zero.
Differential Revision: https://phabricator.services.mozilla.com/D170087