From 6151dca6eac269a8dc4ca23552360aa7856eb9db Mon Sep 17 00:00:00 2001 From: SpockMan02 Date: Wed, 27 Jun 2018 03:25:34 -0700 Subject: Undo Mozilla Bug 1302937; Reinstate -moz-mac-lion-theme media query --- widget/LookAndFeel.h | 14 ++++++++++++-- widget/cocoa/nsLookAndFeel.mm | 31 +++++++++++++++++-------------- widget/gtk/nsLookAndFeel.cpp | 35 ++++++++++++++++++----------------- widget/windows/nsLookAndFeel.cpp | 1 + 4 files changed, 48 insertions(+), 33 deletions(-) (limited to 'widget') diff --git a/widget/LookAndFeel.h b/widget/LookAndFeel.h index cf84b3308..60ebc2782 100644 --- a/widget/LookAndFeel.h +++ b/widget/LookAndFeel.h @@ -250,7 +250,7 @@ public: * should return NS_ERROR_NOT_IMPLEMENTED when queried for this metric. */ eIntID_WindowsAccentColorApplies, - + /* * A Boolean value to determine whether the Windows accent color * is considered dark and should get bright text/controls. @@ -313,6 +313,16 @@ public: */ eIntID_MacGraphiteTheme, + /* + * A Boolean value to determine whether the Mac OS X Lion-specific theming + * should be used. + * + * The value of this metric is not used on non-Mac platforms. These + * platforms should return NS_ERROR_NOT_IMPLEMENTED when queried for this + * metric. + */ + eIntID_MacLionTheme, + /* * A Boolean value to determine whether the Mac OS X Yosemite-specific theming * should be used. @@ -412,7 +422,7 @@ public: */ eIntID_ScrollbarFadeBeginDelay, eIntID_ScrollbarFadeDuration, - + /** * Distance in pixels to offset the context menu from the cursor * on open. diff --git a/widget/cocoa/nsLookAndFeel.mm b/widget/cocoa/nsLookAndFeel.mm index cbee90f58..0b68cd0e4 100644 --- a/widget/cocoa/nsLookAndFeel.mm +++ b/widget/cocoa/nsLookAndFeel.mm @@ -67,19 +67,19 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor &aColor) NS_OBJC_BEGIN_TRY_ABORT_BLOCK_NSRESULT; nsresult res = NS_OK; - + switch (aID) { case eColorID_WindowBackground: aColor = NS_RGB(0xff,0xff,0xff); break; case eColorID_WindowForeground: - aColor = NS_RGB(0x00,0x00,0x00); + aColor = NS_RGB(0x00,0x00,0x00); break; case eColorID_WidgetBackground: aColor = NS_RGB(0xdd,0xdd,0xdd); break; case eColorID_WidgetForeground: - aColor = NS_RGB(0x00,0x00,0x00); + aColor = NS_RGB(0x00,0x00,0x00); break; case eColorID_WidgetSelectBackground: aColor = NS_RGB(0x80,0x80,0x80); @@ -107,7 +107,7 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor &aColor) break; case eColorID__moz_menuhover: aColor = GetColorFromNSColor([NSColor alternateSelectedControlColor]); - break; + break; case eColorID_TextSelectForeground: GetColor(eColorID_TextSelectBackground, aColor); if (aColor == 0x000000) @@ -147,9 +147,9 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor &aColor) // css2 system colors http://www.w3.org/TR/REC-CSS2/ui.html#system-colors // // It's really hard to effectively map these to the Appearance Manager properly, - // since they are modeled word for word after the win32 system colors and don't have any - // real counterparts in the Mac world. I'm sure we'll be tweaking these for - // years to come. + // since they are modeled word for word after the win32 system colors and don't have any + // real counterparts in the Mac world. I'm sure we'll be tweaking these for + // years to come. // // Thanks to mpt26@student.canterbury.ac.nz for the hardcoded values that form the defaults // if querying the Appearance Manager fails ;) @@ -161,7 +161,7 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor &aColor) break; } // Otherwise fall through and return the regular button text: - + case eColorID_buttontext: case eColorID__moz_buttonhovertext: aColor = GetColorFromNSColor([NSColor controlTextColor]); @@ -267,13 +267,13 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor &aColor) break; case eColorID__moz_mac_menushadow: aColor = NS_RGB(0xA3,0xA3,0xA3); - break; + break; case eColorID__moz_mac_menutextdisable: aColor = NS_RGB(0x98,0x98,0x98); - break; + break; case eColorID__moz_mac_menutextselect: aColor = GetColorFromNSColor([NSColor selectedMenuItemTextColor]); - break; + break; case eColorID__moz_mac_disabledtoolbartext: aColor = GetColorFromNSColor([NSColor disabledControlTextColor]); break; @@ -307,7 +307,7 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor &aColor) res = NS_ERROR_FAILURE; break; } - + return res; NS_OBJC_END_TRY_ABORT_BLOCK_NSRESULT; @@ -322,7 +322,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) if (NS_SUCCEEDED(res)) return res; res = NS_OK; - + switch (aID) { case eIntID_CaretBlinkTime: aResult = 567; @@ -411,6 +411,9 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) case eIntID_MacGraphiteTheme: aResult = [NSColor currentControlTint] == NSGraphiteControlTint; break; + case eIntID_MacLionTheme: + aResult = 1; + break; case eIntID_MacYosemiteTheme: aResult = nsCocoaFeatures::OnYosemiteOrLater(); break; @@ -473,7 +476,7 @@ nsLookAndFeel::GetFloatImpl(FloatID aID, float &aResult) if (NS_SUCCEEDED(res)) return res; res = NS_OK; - + switch (aID) { case eFloatID_IMEUnderlineRelativeSize: aResult = 2.0f; diff --git a/widget/gtk/nsLookAndFeel.cpp b/widget/gtk/nsLookAndFeel.cpp index d2b82e495..7a95f81c6 100644 --- a/widget/gtk/nsLookAndFeel.cpp +++ b/widget/gtk/nsLookAndFeel.cpp @@ -51,7 +51,7 @@ nsLookAndFeel::nsLookAndFeel() mDefaultFontCached(false), mButtonFontCached(false), mFieldFontCached(false), mMenuFontCached(false) { - Init(); + Init(); } nsLookAndFeel::~nsLookAndFeel() @@ -266,7 +266,7 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor) break; case eColorID_WindowForeground: case eColorID_WidgetForeground: - case eColorID_TextForeground: + case eColorID_TextForeground: case eColorID_captiontext: // text in active window caption, size box, and scrollbar arrow box (!) case eColorID_windowtext: case eColorID__moz_dialogtext: @@ -303,7 +303,7 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor) // not used? aColor = GDK_COLOR_TO_NS_RGB(mStyle->base[GTK_STATE_NORMAL]); break; - case eColorID_TextForeground: + case eColorID_TextForeground: // not used? aColor = GDK_COLOR_TO_NS_RGB(mStyle->text[GTK_STATE_NORMAL]); break; @@ -415,7 +415,7 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor) // inactive window caption GtkStyleContext *style = ClaimStyleContext(MOZ_GTK_WINDOW); gtk_style_context_get_background_color(style, - GTK_STATE_FLAG_INSENSITIVE, + GTK_STATE_FLAG_INSENSITIVE, &gdk_color); aColor = GDK_RGBA_TO_NS_RGBA(gdk_color); ReleaseStyleContext(style); @@ -509,7 +509,7 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor) break; case eColorID__moz_dragtargetzone: aColor = GDK_COLOR_TO_NS_RGB(mStyle->bg[GTK_STATE_SELECTED]); - break; + break; case eColorID__moz_buttondefault: // default button border color aColor = GDK_COLOR_TO_NS_RGB(mStyle->black); @@ -552,8 +552,8 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor) } case eColorID__moz_buttonhoverface: { GtkStyleContext *style = ClaimStyleContext(MOZ_GTK_BUTTON); - gtk_style_context_get_background_color(style, - GTK_STATE_FLAG_PRELIGHT, + gtk_style_context_get_background_color(style, + GTK_STATE_FLAG_PRELIGHT, &gdk_color); aColor = GDK_RGBA_TO_NS_RGBA(gdk_color); ReleaseStyleContext(style); @@ -637,7 +637,7 @@ static int32_t ConvertGTKStepperStyleToMozillaScrollArrowStyle(GtkWidget* aWidge { if (!aWidget) return mozilla::LookAndFeel::eScrollArrowStyle_Single; - + return CheckWidgetStyle(aWidget, "has-backward-stepper", mozilla::LookAndFeel::eScrollArrow_StartBackward) | @@ -654,7 +654,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) { nsresult res = NS_OK; - // Set these before they can get overrided in the nsXPLookAndFeel. + // Set these before they can get overrided in the nsXPLookAndFeel. switch (aID) { case eIntID_ScrollButtonLeftMouseButtonAction: aResult = 0; @@ -686,7 +686,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) "gtk-cursor-blink-time", &blink_time, "gtk-cursor-blink", &blink, nullptr); - + if (blink) aResult = (int32_t) blink_time; else @@ -708,11 +708,11 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) entry = gtk_entry_new(); g_object_ref_sink(entry); settings = gtk_widget_get_settings(entry); - g_object_get(settings, + g_object_get(settings, "gtk-entry-select-on-focus", &select_on_focus, nullptr); - + if(select_on_focus) aResult = 1; else @@ -773,7 +773,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) "gtk-dnd-drag-threshold", &threshold, nullptr); g_object_ref_sink(box); - + aResult = threshold; } break; @@ -818,6 +818,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) #endif break; case eIntID_MacGraphiteTheme: + case eIntID_MacLionTheme: aResult = 0; res = NS_ERROR_NOT_IMPLEMENTED; break; @@ -1082,7 +1083,7 @@ nsLookAndFeel::Init() gtk_widget_destroy(widget); g_object_unref(widget); - + // tooltip foreground and background GtkStyle *style = gtk_rc_get_style_by_paths(gtk_settings_get_default(), "gtk-tooltips", "GtkWindow", @@ -1116,7 +1117,7 @@ nsLookAndFeel::Init() if (style) { sMenuBackground = GDK_COLOR_TO_NS_RGB(style->bg[GTK_STATE_NORMAL]); } - + style = gtk_widget_get_style(menuitem); if (style) { sMenuHover = GDK_COLOR_TO_NS_RGB(style->bg[GTK_STATE_PRELIGHT]); @@ -1225,7 +1226,7 @@ nsLookAndFeel::Init() gtk_container_add(GTK_CONTAINER(window), parent); gtk_container_add(GTK_CONTAINER(parent), entry); gtk_container_add(GTK_CONTAINER(parent), textView); - + #if (MOZ_WIDGET_GTK == 2) gtk_widget_set_style(button, nullptr); gtk_widget_set_style(label, nullptr); @@ -1348,7 +1349,7 @@ nsLookAndFeel::Init() sComboBoxText = GDK_RGBA_TO_NS_RGBA(color); ReleaseStyleContext(style); - // Menubar text and hover text colors + // Menubar text and hover text colors style = ClaimStyleContext(MOZ_GTK_MENUBARITEM); gtk_style_context_get_color(style, GTK_STATE_FLAG_NORMAL, &color); sMenuBarText = GDK_RGBA_TO_NS_RGBA(color); diff --git a/widget/windows/nsLookAndFeel.cpp b/widget/windows/nsLookAndFeel.cpp index 06eee3771..97f81abfd 100644 --- a/widget/windows/nsLookAndFeel.cpp +++ b/widget/windows/nsLookAndFeel.cpp @@ -423,6 +423,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) } case eIntID_MacGraphiteTheme: + case eIntID_MacLionTheme: aResult = 0; res = NS_ERROR_NOT_IMPLEMENTED; break; -- cgit v1.2.3