summaryrefslogtreecommitdiff
path: root/mozilla-1158076-2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'mozilla-1158076-2.patch')
-rw-r--r--mozilla-1158076-2.patch184
1 files changed, 0 insertions, 184 deletions
diff --git a/mozilla-1158076-2.patch b/mozilla-1158076-2.patch
deleted file mode 100644
index 16079b3..0000000
--- a/mozilla-1158076-2.patch
+++ /dev/null
@@ -1,184 +0,0 @@
-diff --git a/widget/gtk/nsLookAndFeel.h b/widget/gtk/nsLookAndFeel.h
---- a/widget/gtk/nsLookAndFeel.h
-+++ b/widget/gtk/nsLookAndFeel.h
-@@ -76,13 +76,14 @@ protected:
- nscolor sTextSelectedBackground;
- nscolor sMozScrollbar;
- #if (MOZ_WIDGET_GTK == 3)
- nscolor sInfoBarText;
- #endif
- char16_t sInvisibleCharacter;
- float sCaretRatio;
- bool sMenuSupportsDrag;
-+ bool mInitialized;
-
-- void Init();
-+ void EnsureInit();
- };
-
- #endif
-
-diff --git a/widget/gtk/nsLookAndFeel.cpp b/widget/gtk/nsLookAndFeel.cpp
---- a/widget/gtk/nsLookAndFeel.cpp
-+++ b/widget/gtk/nsLookAndFeel.cpp
-@@ -45,19 +45,19 @@ using mozilla::LookAndFeel;
- (int)((c).blue*255), (int)((c).alpha*255)))
-
- nsLookAndFeel::nsLookAndFeel()
- : nsXPLookAndFeel(),
- #if (MOZ_WIDGET_GTK == 2)
- mStyle(nullptr),
- #endif
- mDefaultFontCached(false), mButtonFontCached(false),
-- mFieldFontCached(false), mMenuFontCached(false)
-+ mFieldFontCached(false), mMenuFontCached(false),
-+ mInitialized(false)
- {
-- Init();
- }
-
- nsLookAndFeel::~nsLookAndFeel()
- {
- #if (MOZ_WIDGET_GTK == 2)
- g_object_unref(mStyle);
- #endif
- }
-@@ -219,16 +219,18 @@ GetBorderColors(GtkStyleContext* aContex
- *aDarkColor = GDK_RGBA_TO_NS_RGBA(darkColor);
- return ret;
- }
- #endif
-
- nsresult
- nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor)
- {
-+ EnsureInit();
-+
- #if (MOZ_WIDGET_GTK == 3)
- GdkRGBA gdk_color;
- #endif
- nsresult res = NS_OK;
-
- switch (aID) {
- // These colors don't seem to be used for anything anymore in Mozilla
- // (except here at least TextSelectBackground and TextSelectForeground)
-@@ -670,16 +672,21 @@ nsLookAndFeel::GetIntImpl(IntID aID, int
- break;
- }
-
- res = nsXPLookAndFeel::GetIntImpl(aID, aResult);
- if (NS_SUCCEEDED(res))
- return res;
- res = NS_OK;
-
-+ // We use delayed initialization by EnsureInit() here
-+ // to make sure mozilla::Preferences is available (Bug 115807).
-+ // eIntID_UseAccessibilityTheme is requested before user preferences
-+ // are read, and so EnsureInit(), which depends on preference values,
-+ // is deliberately delayed until required.
- switch (aID) {
- case eIntID_CaretBlinkTime:
- {
- GtkSettings *settings;
- gint blink_time;
- gboolean blink;
-
- settings = gtk_settings_get_default ();
-@@ -832,16 +839,17 @@ nsLookAndFeel::GetIntImpl(IntID aID, int
- case eIntID_IMESelectedRawTextUnderlineStyle:
- case eIntID_IMESelectedConvertedTextUnderline:
- aResult = NS_STYLE_TEXT_DECORATION_STYLE_NONE;
- break;
- case eIntID_SpellCheckerUnderlineStyle:
- aResult = NS_STYLE_TEXT_DECORATION_STYLE_WAVY;
- break;
- case eIntID_MenuBarDrag:
-+ EnsureInit();
- aResult = sMenuSupportsDrag;
- break;
- case eIntID_ScrollbarButtonAutoRepeatBehavior:
- aResult = 1;
- break;
- case eIntID_SwipeAnimationEnabled:
- aResult = 0;
- break;
-@@ -872,16 +880,17 @@ nsLookAndFeel::GetFloatImpl(FloatID aID,
- switch (aID) {
- case eFloatID_IMEUnderlineRelativeSize:
- aResult = 1.0f;
- break;
- case eFloatID_SpellCheckerUnderlineRelativeSize:
- aResult = 1.0f;
- break;
- case eFloatID_CaretAspectRatio:
-+ EnsureInit();
- aResult = sCaretRatio;
- break;
- default:
- aResult = -1.0;
- res = NS_ERROR_FAILURE;
- }
- return res;
- }
-@@ -1052,21 +1061,25 @@ nsLookAndFeel::GetFontImpl(FontID aID, n
- }
-
- aFontName = *cachedFontName;
- aFontStyle = *cachedFontStyle;
- return true;
- }
-
- void
--nsLookAndFeel::Init()
-+nsLookAndFeel::EnsureInit()
- {
- GdkColor colorValue;
- GdkColor *colorValuePtr;
-
-+ if (mInitialized)
-+ return;
-+ mInitialized = true;
-+
- #if (MOZ_WIDGET_GTK == 2)
- NS_ASSERTION(!mStyle, "already initialized");
- // GtkInvisibles come with a refcount that is not floating
- // (since their initialization code calls g_object_ref_sink) and
- // their destroy code releases that reference (which means they
- // have to be explicitly destroyed, since calling unref enough
- // to cause destruction would lead to *another* unref).
- // However, this combination means that it's actually still ok
-@@ -1445,16 +1458,17 @@ nsLookAndFeel::Init()
-
- gtk_widget_destroy(window);
- }
-
- // virtual
- char16_t
- nsLookAndFeel::GetPasswordCharacterImpl()
- {
-+ EnsureInit();
- return sInvisibleCharacter;
- }
-
- void
- nsLookAndFeel::RefreshImpl()
- {
- nsXPLookAndFeel::RefreshImpl();
-
-@@ -1463,15 +1477,15 @@ nsLookAndFeel::RefreshImpl()
- mFieldFontCached = false;
- mMenuFontCached = false;
-
- #if (MOZ_WIDGET_GTK == 2)
- g_object_unref(mStyle);
- mStyle = nullptr;
- #endif
-
-- Init();
-+ mInitialized = false;
- }
-
- bool
- nsLookAndFeel::GetEchoPasswordImpl() {
- return false;
- }
bgstack15