Bug 1938683 - Don't support menulist-button as a proper widget. r=dshin

Use it only to enable the combobox dropmarker. This matches wpt and
blink.

Differential Revision: https://phabricator.services.mozilla.com/D240314
This commit is contained in:
Emilio Cobos Álvarez
2025-03-04 15:21:34 +00:00
parent 149e87e8ce
commit 3d1806d8f8
108 changed files with 21 additions and 276 deletions

View File

@@ -2083,8 +2083,7 @@ bool nsLayoutUtils::AuthorSpecifiedBorderBackgroundDisablesTheming(
aAppearance == StyleAppearance::Textfield ||
aAppearance == StyleAppearance::Textarea ||
aAppearance == StyleAppearance::Listbox ||
aAppearance == StyleAppearance::Menulist ||
aAppearance == StyleAppearance::MenulistButton;
aAppearance == StyleAppearance::Menulist;
}
static SVGTextFrame* GetContainingSVGTextFrame(const nsIFrame* aFrame) {

View File

@@ -94,11 +94,15 @@ a11y::AccType nsComboboxControlFrame::AccessibleType() {
bool nsComboboxControlFrame::HasDropDownButton() const {
const nsStyleDisplay* disp = StyleDisplay();
// FIXME(emilio): Blink also shows this for menulist-button and such... Seems
// more similar to our mac / linux implementation.
return disp->EffectiveAppearance() == StyleAppearance::Menulist &&
(!IsThemed(disp) ||
PresContext()->Theme()->ThemeNeedsComboboxDropmarker());
switch (disp->EffectiveAppearance()) {
case StyleAppearance::MenulistButton:
return true;
case StyleAppearance::Menulist:
return !IsThemed(disp) ||
PresContext()->Theme()->ThemeNeedsComboboxDropmarker();
default:
return false;
}
}
nscoord nsComboboxControlFrame::DropDownButtonISize() {

View File

@@ -1530,9 +1530,10 @@ struct MOZ_NEEDS_MEMMOVABLE_MEMBERS nsStyleDisplay {
return mDefaultAppearance;
case mozilla::StyleAppearance::MenulistButton:
// `appearance: menulist-button` should behave like `auto` on all
// elements except for drop down selects, but since we have very little
// difference between menulist and menulist-button handling, we don't
// bother.
// elements except for drop down selects.
if (mDefaultAppearance == mozilla::StyleAppearance::Menulist) {
return mAppearance;
}
return mDefaultAppearance;
default:
return mAppearance;

View File

@@ -1,2 +0,0 @@
[appearance-menulist-button-002.tentative.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-background-attachment-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-background-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-border-block-start-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-border-block-start-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-border-block-start-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-border-image-source-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-border-top-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-border-top-left-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-border-top-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[grouped-kind-of-widget-fallback-border-top-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-background-attachment-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-background-clip-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-background-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-background-image-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-background-origin-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-background-position-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-background-size-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-block-end-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-block-end-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-block-end-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-block-start-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-block-start-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-block-start-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-bottom-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-bottom-left-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-bottom-right-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-bottom-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-bottom-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-end-end-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-end-start-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-image-outset-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-image-repeat-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-image-slice-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-image-source-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-image-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-inline-end-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-inline-end-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-inline-end-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-inline-start-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-inline-start-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-inline-start-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-left-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-left-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-left-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-right-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-right-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-right-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-start-end-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-start-start-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-top-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-top-left-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-top-right-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-top-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-dropdown-box-border-top-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-background-attachment-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-background-clip-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-background-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-background-image-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-background-origin-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-background-position-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-background-size-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-block-end-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-block-end-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-block-end-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-block-start-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-block-start-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-block-start-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-bottom-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-bottom-left-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-bottom-right-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-bottom-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-bottom-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-end-end-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-end-start-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-image-outset-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-image-repeat-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-image-slice-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-image-source-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-image-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-inline-end-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-inline-end-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-inline-end-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-inline-start-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-inline-start-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-inline-start-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-left-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-left-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-left-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-right-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-right-style-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-right-width-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-start-end-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-start-start-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-top-color-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-top-left-radius-001.html]
expected: FAIL

View File

@@ -1,2 +0,0 @@
[kind-of-widget-fallback-select-menulist-button-border-top-right-radius-001.html]
expected: FAIL

Some files were not shown because too many files have changed in this diff Show More