Bug 1428676 Part 1 - Add a value menulist-button-orig to -moz-appearance. r?mats draft
authorLouis Chang <lochang@mozilla.com>
Fri, 12 Jan 2018 17:17:24 +0800
changeset 719524 09c00e0caeca162c5df19fd1571130d4ddb2bd33
parent 719161 ce10966048090963a237a650483b8f7cc3d0056f
child 719525 ae3791ef15310dd9dfe84c4edad144112a7a2aa2
push id95280
push userlochang@mozilla.com
push dateFri, 12 Jan 2018 09:19:41 +0000
reviewersmats
bugs1428676
milestone59.0a1
Bug 1428676 Part 1 - Add a value menulist-button-orig to -moz-appearance. r?mats MozReview-Commit-ID: IiV3xXizfN9
devtools/client/sourceeditor/codemirror/codemirror.bundle.js
devtools/client/sourceeditor/codemirror/mode/css/css.js
devtools/shared/css/generated/properties-db.js
gfx/src/nsThemeConstants.h
layout/style/nsCSSKeywordList.h
layout/style/nsCSSProps.cpp
--- a/devtools/client/sourceeditor/codemirror/codemirror.bundle.js
+++ b/devtools/client/sourceeditor/codemirror/codemirror.bundle.js
@@ -12946,17 +12946,17 @@ var CodeMirror =
 	    "lower-greek", "lower-hexadecimal", "lower-latin", "lower-norwegian",
 	    "lower-roman", "lowercase", "ltr", "luminosity", "malayalam", "match", "matrix", "matrix3d",
 	    "media-controls-background", "media-current-time-display",
 	    "media-fullscreen-button", "media-mute-button", "media-play-button",
 	    "media-return-to-realtime-button", "media-rewind-button",
 	    "media-seek-back-button", "media-seek-forward-button", "media-slider",
 	    "media-sliderthumb", "media-time-remaining-display", "media-volume-slider",
 	    "media-volume-slider-container", "media-volume-sliderthumb", "medium",
-	    "menu", "menulist", "menulist-button", "menulist-text",
+	    "menu", "menulist", "menulist-button", "menulist-button-orig", "menulist-text",
 	    "menulist-textfield", "menutext", "message-box", "middle", "min-intrinsic",
 	    "mix", "mongolian", "monospace", "move", "multiple", "multiply", "myanmar", "n-resize",
 	    "narrower", "ne-resize", "nesw-resize", "no-close-quote", "no-drop",
 	    "no-open-quote", "no-repeat", "none", "normal", "not-allowed", "nowrap",
 	    "ns-resize", "numbers", "numeric", "nw-resize", "nwse-resize", "oblique", "octal", "opacity", "open-quote",
 	    "optimizeLegibility", "optimizeSpeed", "oriya", "oromo", "outset",
 	    "outside", "outside-shape", "overlay", "overline", "padding", "padding-box",
 	    "painted", "page", "paused", "persian", "perspective", "plus-darker", "plus-lighter",
--- a/devtools/client/sourceeditor/codemirror/mode/css/css.js
+++ b/devtools/client/sourceeditor/codemirror/mode/css/css.js
@@ -636,17 +636,17 @@ CodeMirror.defineMode("css", function(co
     "lower-greek", "lower-hexadecimal", "lower-latin", "lower-norwegian",
     "lower-roman", "lowercase", "ltr", "luminosity", "malayalam", "match", "matrix", "matrix3d",
     "media-controls-background", "media-current-time-display",
     "media-fullscreen-button", "media-mute-button", "media-play-button",
     "media-return-to-realtime-button", "media-rewind-button",
     "media-seek-back-button", "media-seek-forward-button", "media-slider",
     "media-sliderthumb", "media-time-remaining-display", "media-volume-slider",
     "media-volume-slider-container", "media-volume-sliderthumb", "medium",
-    "menu", "menulist", "menulist-button", "menulist-text",
+    "menu", "menulist", "menulist-button", "menulist-button-orig", "menulist-text",
     "menulist-textfield", "menutext", "message-box", "middle", "min-intrinsic",
     "mix", "mongolian", "monospace", "move", "multiple", "multiply", "myanmar", "n-resize",
     "narrower", "ne-resize", "nesw-resize", "no-close-quote", "no-drop",
     "no-open-quote", "no-repeat", "none", "normal", "not-allowed", "nowrap",
     "ns-resize", "numbers", "numeric", "nw-resize", "nwse-resize", "oblique", "octal", "opacity", "open-quote",
     "optimizeLegibility", "optimizeSpeed", "oriya", "oromo", "outset",
     "outside", "outside-shape", "overlay", "overline", "padding", "padding-box",
     "painted", "page", "paused", "persian", "perspective", "plus-darker", "plus-lighter",
--- a/devtools/shared/css/generated/properties-db.js
+++ b/devtools/shared/css/generated/properties-db.js
@@ -242,16 +242,17 @@ exports.CSS_PROPERTIES = {
       "menuarrow",
       "menubar",
       "menucheckbox",
       "menuimage",
       "menuitem",
       "menuitemtext",
       "menulist",
       "menulist-button",
+      "menulist-button-orig",
       "menulist-text",
       "menulist-textfield",
       "menupopup",
       "menuradio",
       "menuseparator",
       "meterbar",
       "meterchunk",
       "none",
@@ -3452,16 +3453,17 @@ exports.CSS_PROPERTIES = {
       "menuarrow",
       "menubar",
       "menucheckbox",
       "menuimage",
       "menuitem",
       "menuitemtext",
       "menulist",
       "menulist-button",
+      "menulist-button-orig",
       "menulist-text",
       "menulist-textfield",
       "menupopup",
       "menuradio",
       "menuseparator",
       "message-box",
       "meterbar",
       "meterchunk",
--- a/gfx/src/nsThemeConstants.h
+++ b/gfx/src/nsThemeConstants.h
@@ -190,18 +190,22 @@ enum ThemeWidgetType : uint8_t {
   NS_THEME_TEXTFIELD_MULTILINE,
 
   // A searchfield
   NS_THEME_SEARCHFIELD,
 
   // A dropdown list.
   NS_THEME_MENULIST,
 
+  // A dropdown list when pref layout.css.webkit-appearance.enabled is true,
+  // else the dropdown button(s) that open up a dropdown list.
+  NS_THEME_MENULIST_BUTTON,
+
   // The dropdown button(s) that open up a dropdown list.
-  NS_THEME_MENULIST_BUTTON,
+  NS_THEME_MENULIST_BUTTON_ORIG,
 
   // The text part of a dropdown list, to left of button
   NS_THEME_MENULIST_TEXT,
 
   // An editable textfield with a dropdown list (a combobox)
   NS_THEME_MENULIST_TEXTFIELD,
 
   // A slider
--- a/layout/style/nsCSSKeywordList.h
+++ b/layout/style/nsCSSKeywordList.h
@@ -709,16 +709,17 @@ CSS_KEY(radiomenuitem, radiomenuitem)
 CSS_KEY(menucheckbox, menucheckbox)
 CSS_KEY(menuradio, menuradio)
 CSS_KEY(menuseparator, menuseparator)
 CSS_KEY(menuarrow, menuarrow)
 CSS_KEY(menuimage, menuimage)
 CSS_KEY(menuitemtext, menuitemtext)
 CSS_KEY(menulist, menulist)
 CSS_KEY(menulist-button, menulist_button)
+CSS_KEY(menulist-button-orig, menulist_button_orig)
 CSS_KEY(menulist-text, menulist_text)
 CSS_KEY(menulist-textfield, menulist_textfield)
 CSS_KEY(meterbar, meterbar)
 CSS_KEY(meterchunk, meterchunk)
 CSS_KEY(minimal-ui, minimal_ui)
 CSS_KEY(range, range)
 CSS_KEY(range-thumb, range_thumb)
 CSS_KEY(sans-serif, sans_serif)
--- a/layout/style/nsCSSProps.cpp
+++ b/layout/style/nsCSSProps.cpp
@@ -804,16 +804,17 @@ const KTableEntry nsCSSProps::kAppearanc
   { eCSSKeyword_scrollbarthumb_horizontal,    NS_THEME_SCROLLBARTHUMB_HORIZONTAL },
   { eCSSKeyword_scrollbarthumb_vertical,      NS_THEME_SCROLLBARTHUMB_VERTICAL },
   { eCSSKeyword_textfield,              NS_THEME_TEXTFIELD },
   { eCSSKeyword_textfield_multiline,    NS_THEME_TEXTFIELD_MULTILINE },
   { eCSSKeyword_caret,                  NS_THEME_CARET },
   { eCSSKeyword_searchfield,            NS_THEME_SEARCHFIELD },
   { eCSSKeyword_menulist,               NS_THEME_MENULIST },
   { eCSSKeyword_menulist_button,        NS_THEME_MENULIST_BUTTON },
+  { eCSSKeyword_menulist_button_orig,   NS_THEME_MENULIST_BUTTON_ORIG },
   { eCSSKeyword_menulist_text,          NS_THEME_MENULIST_TEXT },
   { eCSSKeyword_menulist_textfield,     NS_THEME_MENULIST_TEXTFIELD },
   { eCSSKeyword_range,                  NS_THEME_RANGE },
   { eCSSKeyword_range_thumb,            NS_THEME_RANGE_THUMB },
   { eCSSKeyword_scale_horizontal,       NS_THEME_SCALE_HORIZONTAL },
   { eCSSKeyword_scale_vertical,         NS_THEME_SCALE_VERTICAL },
   { eCSSKeyword_scalethumb_horizontal,  NS_THEME_SCALETHUMB_HORIZONTAL },
   { eCSSKeyword_scalethumb_vertical,    NS_THEME_SCALETHUMB_VERTICAL },