Most of the display: block stuff isn't needed anymore because we changed
the blockification behavior in bug 1789123.
.tab-stack, and stacks in general now uses CSS grid so doesn't need that
anymore.
DevTools is the only consumer of <xul:iframe> and width/height was
getting ignored in XUL because flexibility takes precedence, so just
remove the relevant declarations.
Differential Revision: https://phabricator.services.mozilla.com/D157070
I'm a bit baffled about bug 1789877. My best theory so far is that we're
inserting the element a bit deeper in the DOM and that causes us to
reflow slightly more stuff when tab-switching, but...
In any case while going through the code the status panel can be
simplified a bit now, so do that.
Differential Revision: https://phabricator.services.mozilla.com/D156876
Just add some CSS rules to offset the 4px inner margins on panels so
they position flushly with anchor nodes. Also add a rule so we can click
through the shadow box (closing the popup).
Differential Revision: https://phabricator.services.mozilla.com/D156489
This rendering of the tabs with emulated flexbox enabled (modern flexbox
behavior with min-width: auto is giving at least minimum content size).
It doesn't have any negative impact on XUL rendering, so do it
unconditionally.
Differential Revision: https://phabricator.services.mozilla.com/D156383
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
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
And stop using the .plain class. Only padding / appearance /
color-scheme are necessary, no other themes set any other properties
reset by .plain.
Differential Revision: https://phabricator.services.mozilla.com/D155699
Otherwise the selector also matches the `<browser>` inside the tab-modal
dialog for example.
Before bug 1782596 it wasn't honored, because those were not top-level
browsing contexts, but now it is.
Differential Revision: https://phabricator.services.mozilla.com/D155459
This makes it easier to get parity between legacy and regular flex
without having to either have tons of arbitrary attribute selectors in
the xul sheet, nor adding attribute lookup hacks to the html flexbox
layout.
Also, reimplement the remaining supported flex attribute-values (0 and 1)
purely in terms of CSS rules in xul.css (regardless of whether
emulate-moz-box-with-flex is enabled).
In practice these are pretty uncommon and the style attribute does the
trick in every case I've tried.
Add a debug-only assertion to ensure we preserve behavior for now.
Add a new test with another behavior difference between flexbox
emulation and old xul layout because the old reftest now passes. Use
replaced elements, which in modern flex are treated differently.
Differential Revision: https://phabricator.services.mozilla.com/D154394
This makes it easier to get parity between legacy and regular flex
without having to either have tons of arbitrary attribute selectors in
the xul sheet, nor adding attribute lookup hacks to the html flexbox
layout.
Also, reimplement the remaining supported flex attribute-values (0 and 1)
purely in terms of CSS rules in xul.css (regardless of whether
emulate-moz-box-with-flex is enabled).
In practice these are pretty uncommon and the style attribute does the
trick in every case I've tried.
Add a debug-only assertion to ensure we preserve behavior for now.
Add a new test with another behavior difference between flexbox
emulation and old xul layout because the old reftest now passes. Use
replaced elements, which in modern flex are treated differently.
Differential Revision: https://phabricator.services.mozilla.com/D154394
Also, align them properly.
The issue is that we inherit the region margin introduced in bug 1772507, but
we were styling the panel in a way that causes the region to not match the
shadow size.
Simplify a bit the styling so that all the margins add up.
For uplift it'd be simpler to just set the new property to zero, I'll prepare a
patch for that. That would cause the shadows to count as popup contents, but
that's the pre-103 behavior which seems fine.
Differential Revision: https://phabricator.services.mozilla.com/D153856