Accepting request 593016 from home:badshah400:branches:mozilla:Factory

- Add back mozilla-enable-csd.patch: New rebased version from Fedora for version 59.0.x.

OBS-URL: https://build.opensuse.org/request/show/593016
OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=646
This commit is contained in:
Wolfgang Rosenauer 2018-04-03 07:38:15 +00:00 committed by Git OBS Bridge
parent 1595d2c3dc
commit 5e0222bbda
3 changed files with 104 additions and 0 deletions

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Mon Apr 2 00:55:45 UTC 2018 - badshah400@gmail.com
- Add back mozilla-enable-csd.patch: New rebased version from
Fedora for version 59.0.x.
-------------------------------------------------------------------
Tue Mar 27 14:07:11 UTC 2018 - schwab@suse.de

View File

@ -153,6 +153,7 @@ Patch8: mozilla-bmo256180.patch
Patch9: mozilla-bmo1005535.patch
Patch10: mozilla-i586-DecoderDoctorLogger.patch
Patch11: mozilla-i586-domPrefs.patch
Patch12: mozilla-enable-csd.patch
# Firefox/browser
Patch101: firefox-kde.patch
Patch102: firefox-branded-icons.patch
@ -268,6 +269,7 @@ cd $RPM_BUILD_DIR/mozilla
%patch10 -p1
%patch11 -p1
%endif
%patch12 -p1
# Firefox
%patch101 -p1
%patch102 -p1

96
mozilla-enable-csd.patch Normal file
View File

@ -0,0 +1,96 @@
Index: mozilla/browser/base/moz.build
===================================================================
--- mozilla.orig/browser/base/moz.build
+++ mozilla/browser/base/moz.build
@@ -60,7 +60,7 @@ DEFINES['APP_LICENSE_BLOCK'] = '%s/conte
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk3', 'cocoa'):
DEFINES['CONTEXT_COPY_IMAGE_CONTENTS'] = 1
-if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'cocoa'):
+if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'cocoa', 'gtk3'):
DEFINES['CAN_DRAW_IN_TITLEBAR'] = 1
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk3'):
Index: mozilla/toolkit/modules/moz.build
===================================================================
--- mozilla.orig/toolkit/modules/moz.build
+++ mozilla/toolkit/modules/moz.build
@@ -265,7 +265,7 @@ EXTRA_JS_MODULES.sessionstore += [
'sessionstore/Utils.jsm',
]
-if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'cocoa'):
+if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'cocoa', 'gtk3'):
DEFINES['CAN_DRAW_IN_TITLEBAR'] = 1
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk3'):
Index: mozilla/widget/gtk/nsWindow.cpp
===================================================================
--- mozilla.orig/widget/gtk/nsWindow.cpp
+++ mozilla/widget/gtk/nsWindow.cpp
@@ -6857,9 +6857,62 @@ nsWindow::GetCSDSupportLevel() {
if (sCSDSupportLevel != CSD_SUPPORT_UNKNOWN) {
return sCSDSupportLevel;
}
-
- // Disabled due to Bug 1440461
- sCSDSupportLevel = CSD_SUPPORT_NONE;
+
+ const char* currentDesktop = getenv("XDG_CURRENT_DESKTOP");
+ if (currentDesktop) {
+ if (strstr(currentDesktop, "GNOME") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FULL;
+ } else if (strstr(currentDesktop, "XFCE") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+ } else if (strstr(currentDesktop, "X-Cinnamon") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FULL;
+ } else if (strstr(currentDesktop, "KDE") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+ } else if (strstr(currentDesktop, "LXDE") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+ } else if (strstr(currentDesktop, "openbox") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+ } else if (strstr(currentDesktop, "i3") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_NONE;
+ } else if (strstr(currentDesktop, "MATE") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+ } else if (strstr(currentDesktop, "Unity") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+ } else if (strstr(currentDesktop, "Pantheon") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FULL;
+ } else if (strstr(currentDesktop, "LXQt") != nullptr) {
+ sCSDSupportLevel = CSD_SUPPORT_FULL;
+ } else {
+// Release or beta builds are not supposed to be broken
+// so disable titlebar rendering on untested/unknown systems.
+#if defined(RELEASE_OR_BETA)
+ sCSDSupportLevel = CSD_SUPPORT_NONE;
+#else
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+#endif
+ }
+ } else {
+ sCSDSupportLevel = CSD_SUPPORT_NONE;
+ }
+
+ // We don't support CSD_SUPPORT_FULL on Wayland
+ if (!GDK_IS_X11_DISPLAY(gdk_display_get_default()) &&
+ sCSDSupportLevel == CSD_SUPPORT_FULL) {
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+ }
+
+ // Allow MOZ_GTK_TITLEBAR_DECORATION to override our heuristics
+ const char* decorationOverride = getenv("MOZ_GTK_TITLEBAR_DECORATION");
+ if (decorationOverride) {
+ if (strcmp(decorationOverride, "none") == 0) {
+ sCSDSupportLevel = CSD_SUPPORT_NONE;
+ } else if (strcmp(decorationOverride, "client") == 0) {
+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
+ } else if (strcmp(decorationOverride, "system") == 0) {
+ sCSDSupportLevel = CSD_SUPPORT_FULL;
+ }
+ }
+
return sCSDSupportLevel;
}