Updated to 75.0
This commit is contained in:
parent
2f14c4ee29
commit
96352c5572
@ -1,11 +1,12 @@
|
|||||||
diff -up firefox-63.0.1/intl/locale/LocaleService.cpp.old firefox-63.0.1/intl/locale/LocaleService.cpp
|
diff -up firefox-75.0/intl/locale/LocaleService.cpp.locale-debug firefox-75.0/intl/locale/LocaleService.cpp
|
||||||
--- firefox-63.0.1/intl/locale/LocaleService.cpp.old 2018-11-14 13:34:16.338285161 +0100
|
--- firefox-75.0/intl/locale/LocaleService.cpp.locale-debug 2020-04-06 22:42:20.196799809 +0200
|
||||||
+++ firefox-63.0.1/intl/locale/LocaleService.cpp 2018-11-14 13:34:21.438270308 +0100
|
+++ firefox-75.0/intl/locale/LocaleService.cpp 2020-04-06 22:43:02.522530317 +0200
|
||||||
@@ -708,7 +708,6 @@ LocaleService::GetDefaultLocale(nsACStri
|
@@ -372,8 +372,6 @@ LocaleService::GetDefaultLocale(nsACStri
|
||||||
|
// just use our hard-coded default below.
|
||||||
GetGREFileContents("update.locale", &locale);
|
GetGREFileContents("update.locale", &locale);
|
||||||
locale.Trim(" \t\n\r");
|
locale.Trim(" \t\n\r");
|
||||||
// This should never be empty.
|
- // This should never be empty.
|
||||||
- MOZ_ASSERT(!locale.IsEmpty());
|
- MOZ_ASSERT(!locale.IsEmpty());
|
||||||
if (SanitizeForBCP47(locale, true)) {
|
if (CanonicalizeLanguageId(locale)) {
|
||||||
mDefaultLocale.Assign(locale);
|
mDefaultLocale.Assign(locale);
|
||||||
}
|
}
|
||||||
|
17
firefox.spec
17
firefox.spec
@ -117,13 +117,13 @@ ExcludeArch: s390x
|
|||||||
|
|
||||||
Summary: Mozilla Firefox Web browser
|
Summary: Mozilla Firefox Web browser
|
||||||
Name: firefox
|
Name: firefox
|
||||||
Version: 74.0.1
|
Version: 75.0
|
||||||
Release: 3%{?nss_tag}%{?dist}
|
Release: 1%{?nss_tag}%{?dist}
|
||||||
URL: https://www.mozilla.org/firefox/
|
URL: https://www.mozilla.org/firefox/
|
||||||
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
||||||
Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz
|
Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz
|
||||||
%if %{with langpacks}
|
%if %{with langpacks}
|
||||||
Source1: firefox-langpacks-%{version}%{?pre_version}-20200404.tar.xz
|
Source1: firefox-langpacks-%{version}%{?pre_version}-20200406.tar.xz
|
||||||
%endif
|
%endif
|
||||||
Source2: cbindgen-vendor.tar.xz
|
Source2: cbindgen-vendor.tar.xz
|
||||||
Source10: firefox-mozconfig
|
Source10: firefox-mozconfig
|
||||||
@ -183,15 +183,11 @@ Patch412: mozilla-1337988.patch
|
|||||||
Patch415: Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch
|
Patch415: Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch
|
||||||
Patch417: bug1375074-save-restore-x28.patch
|
Patch417: bug1375074-save-restore-x28.patch
|
||||||
Patch422: mozilla-1580174-webrtc-popup.patch
|
Patch422: mozilla-1580174-webrtc-popup.patch
|
||||||
Patch423: mozilla-1620973.patch
|
|
||||||
Patch424: mozilla-1615098.patch
|
|
||||||
Patch425: mozilla-1623106.patch
|
Patch425: mozilla-1623106.patch
|
||||||
|
|
||||||
# Wayland specific upstream patches
|
# Wayland specific upstream patches
|
||||||
Patch574: firefox-pipewire.patch
|
Patch574: firefox-pipewire.patch
|
||||||
Patch575: mozilla-1609538.patch
|
|
||||||
Patch576: mozilla-1623060.patch
|
Patch576: mozilla-1623060.patch
|
||||||
Patch577: mozilla-1624745.patch
|
|
||||||
Patch578: mozilla-1627469.patch
|
Patch578: mozilla-1627469.patch
|
||||||
|
|
||||||
# PGO/LTO patches
|
# PGO/LTO patches
|
||||||
@ -390,8 +386,6 @@ This package contains results of tests executed during build.
|
|||||||
#%patch241 -p1 -b .kiosk-workaround
|
#%patch241 -p1 -b .kiosk-workaround
|
||||||
%patch242 -p1 -b .gnome-shell-search-fixes
|
%patch242 -p1 -b .gnome-shell-search-fixes
|
||||||
|
|
||||||
%patch423 -p1 -b .1620973
|
|
||||||
%patch424 -p1 -b .1615098
|
|
||||||
%patch425 -p1 -b .1623106
|
%patch425 -p1 -b .1623106
|
||||||
|
|
||||||
%patch402 -p1 -b .1196777
|
%patch402 -p1 -b .1196777
|
||||||
@ -401,9 +395,7 @@ This package contains results of tests executed during build.
|
|||||||
|
|
||||||
# Wayland specific upstream patches
|
# Wayland specific upstream patches
|
||||||
%patch574 -p1 -b .firefox-pipewire
|
%patch574 -p1 -b .firefox-pipewire
|
||||||
%patch575 -p1 -b .mozilla-1609538
|
|
||||||
%patch576 -p1 -b .mozilla-1623060
|
%patch576 -p1 -b .mozilla-1623060
|
||||||
%patch577 -p1 -b .mozilla-1624745
|
|
||||||
%patch578 -p1 -b .mozilla-1627469
|
%patch578 -p1 -b .mozilla-1627469
|
||||||
|
|
||||||
# PGO patches
|
# PGO patches
|
||||||
@ -971,6 +963,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|||||||
#---------------------------------------------------------------------
|
#---------------------------------------------------------------------
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Apr 06 2020 Martin Stransky <stransky@redhat.com> - 75.0-1
|
||||||
|
- Updated to 75.0
|
||||||
|
|
||||||
* Mon Apr 06 2020 Martin Stransky <stransky@redhat.com> - 74.0.1-3
|
* Mon Apr 06 2020 Martin Stransky <stransky@redhat.com> - 74.0.1-3
|
||||||
- Added fix for mozbz#1627469
|
- Added fix for mozbz#1627469
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
diff -up firefox-71.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-71.0/extensions/pref/autoconfig/src/nsReadConfig.cpp
|
diff -up firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp
|
||||||
--- firefox-71.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 2019-11-26 01:02:21.000000000 +0100
|
--- firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 2020-04-03 21:34:41.000000000 +0200
|
||||||
+++ firefox-71.0/extensions/pref/autoconfig/src/nsReadConfig.cpp 2019-11-26 10:47:04.316154398 +0100
|
+++ firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp 2020-04-06 22:40:02.760674871 +0200
|
||||||
@@ -246,8 +246,20 @@ nsresult nsReadConfig::openAndEvaluateJS
|
@@ -244,8 +244,20 @@ nsresult nsReadConfig::openAndEvaluateJS
|
||||||
if (NS_FAILED(rv)) return rv;
|
if (NS_FAILED(rv)) return rv;
|
||||||
|
|
||||||
rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
|
rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
|
||||||
@ -23,10 +23,10 @@ diff -up firefox-71.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 fi
|
|||||||
} else {
|
} else {
|
||||||
nsAutoCString location("resource://gre/defaults/autoconfig/");
|
nsAutoCString location("resource://gre/defaults/autoconfig/");
|
||||||
location += aFileName;
|
location += aFileName;
|
||||||
diff -up firefox-71.0/modules/libpref/Preferences.cpp.1170092 firefox-71.0/modules/libpref/Preferences.cpp
|
diff -up firefox-75.0/modules/libpref/Preferences.cpp.1170092 firefox-75.0/modules/libpref/Preferences.cpp
|
||||||
--- firefox-71.0/modules/libpref/Preferences.cpp.1170092 2019-11-26 01:02:25.000000000 +0100
|
--- firefox-75.0/modules/libpref/Preferences.cpp.1170092 2020-04-06 22:40:02.761674865 +0200
|
||||||
+++ firefox-71.0/modules/libpref/Preferences.cpp 2019-11-26 10:47:04.316154398 +0100
|
+++ firefox-75.0/modules/libpref/Preferences.cpp 2020-04-06 22:40:57.675325227 +0200
|
||||||
@@ -4472,6 +4472,9 @@ nsresult Preferences::InitInitialObjects
|
@@ -4468,6 +4468,9 @@ nsresult Preferences::InitInitialObjects
|
||||||
//
|
//
|
||||||
// Thus, in the omni.jar case, we always load app-specific default
|
// Thus, in the omni.jar case, we always load app-specific default
|
||||||
// preferences from omni.jar, whether or not `$app == $gre`.
|
// preferences from omni.jar, whether or not `$app == $gre`.
|
||||||
@ -35,11 +35,11 @@ diff -up firefox-71.0/modules/libpref/Preferences.cpp.1170092 firefox-71.0/modul
|
|||||||
+ // - /etc/firefox/pref/*.js
|
+ // - /etc/firefox/pref/*.js
|
||||||
|
|
||||||
nsresult rv = NS_ERROR_FAILURE;
|
nsresult rv = NS_ERROR_FAILURE;
|
||||||
nsZipFind* findPtr;
|
UniquePtr<nsZipFind> find;
|
||||||
diff -up firefox-71.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-71.0/toolkit/xre/nsXREDirProvider.cpp
|
diff -up firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-75.0/toolkit/xre/nsXREDirProvider.cpp
|
||||||
--- firefox-71.0/toolkit/xre/nsXREDirProvider.cpp.1170092 2019-11-26 01:02:29.000000000 +0100
|
--- firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 2020-04-03 21:35:39.000000000 +0200
|
||||||
+++ firefox-71.0/toolkit/xre/nsXREDirProvider.cpp 2019-11-26 10:49:40.076095714 +0100
|
+++ firefox-75.0/toolkit/xre/nsXREDirProvider.cpp 2020-04-06 22:40:02.761674865 +0200
|
||||||
@@ -61,6 +61,7 @@
|
@@ -60,6 +60,7 @@
|
||||||
#endif
|
#endif
|
||||||
#ifdef XP_UNIX
|
#ifdef XP_UNIX
|
||||||
# include <ctype.h>
|
# include <ctype.h>
|
||||||
@ -47,7 +47,7 @@ diff -up firefox-71.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-71.0/tool
|
|||||||
#endif
|
#endif
|
||||||
#ifdef XP_IOS
|
#ifdef XP_IOS
|
||||||
# include "UIKitDirProvider.h"
|
# include "UIKitDirProvider.h"
|
||||||
@@ -526,6 +527,21 @@ nsXREDirProvider::GetFile(const char* aP
|
@@ -533,6 +534,21 @@ nsXREDirProvider::GetFile(const char* aP
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -69,7 +69,7 @@ diff -up firefox-71.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-71.0/tool
|
|||||||
if (NS_FAILED(rv) || !file) return NS_ERROR_FAILURE;
|
if (NS_FAILED(rv) || !file) return NS_ERROR_FAILURE;
|
||||||
|
|
||||||
if (ensureFilePermissions) {
|
if (ensureFilePermissions) {
|
||||||
@@ -842,6 +858,16 @@ nsresult nsXREDirProvider::GetFilesInter
|
@@ -845,6 +861,16 @@ nsresult nsXREDirProvider::GetFilesInter
|
||||||
|
|
||||||
LoadDirIntoArray(mXULAppDir, kAppendPrefDir, directories);
|
LoadDirIntoArray(mXULAppDir, kAppendPrefDir, directories);
|
||||||
|
|
||||||
@ -86,9 +86,9 @@ diff -up firefox-71.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-71.0/tool
|
|||||||
rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile));
|
rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile));
|
||||||
} else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) {
|
} else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) {
|
||||||
// NS_APP_CHROME_DIR_LIST is only used to get default (native) icons
|
// NS_APP_CHROME_DIR_LIST is only used to get default (native) icons
|
||||||
diff -up firefox-71.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-71.0/xpcom/io/nsAppDirectoryServiceDefs.h
|
diff -up firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h
|
||||||
--- firefox-71.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2019-11-26 01:02:30.000000000 +0100
|
--- firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2020-04-03 21:35:39.000000000 +0200
|
||||||
+++ firefox-71.0/xpcom/io/nsAppDirectoryServiceDefs.h 2019-11-26 10:47:04.317154398 +0100
|
+++ firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h 2020-04-06 22:40:02.761674865 +0200
|
||||||
@@ -60,6 +60,7 @@
|
@@ -60,6 +60,7 @@
|
||||||
#define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL"
|
#define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL"
|
||||||
#define NS_APP_PREFS_OVERRIDE_DIR \
|
#define NS_APP_PREFS_OVERRIDE_DIR \
|
||||||
|
@ -1,69 +0,0 @@
|
|||||||
diff -up firefox-74.0/widget/gtk/mozcontainer.cpp.mozilla-1609538 firefox-74.0/widget/gtk/mozcontainer.cpp
|
|
||||||
--- firefox-74.0/widget/gtk/mozcontainer.cpp.mozilla-1609538 2020-03-02 23:04:56.000000000 +0100
|
|
||||||
+++ firefox-74.0/widget/gtk/mozcontainer.cpp 2020-03-04 12:26:05.561668537 +0100
|
|
||||||
@@ -164,13 +164,15 @@ void moz_container_move(MozContainer* co
|
|
||||||
|
|
||||||
// wl_subsurface_set_position is actually property of parent surface
|
|
||||||
// which is effective when parent surface is commited.
|
|
||||||
- wl_surface* parent_surface =
|
|
||||||
- moz_gtk_widget_get_wl_surface(GTK_WIDGET(container));
|
|
||||||
- if (parent_surface) {
|
|
||||||
- wl_subsurface_set_position(container->subsurface, container->subsurface_dx,
|
|
||||||
- container->subsurface_dy);
|
|
||||||
- wl_surface_commit(parent_surface);
|
|
||||||
- container->surface_position_needs_update = false;
|
|
||||||
+ wl_subsurface_set_position(container->subsurface, container->subsurface_dx,
|
|
||||||
+ container->subsurface_dy);
|
|
||||||
+ container->surface_position_needs_update = false;
|
|
||||||
+
|
|
||||||
+ GdkWindow* window = gtk_widget_get_window(GTK_WIDGET(container));
|
|
||||||
+ if (window) {
|
|
||||||
+ GdkRectangle rect = (GdkRectangle){.width = gdk_window_get_width(window),
|
|
||||||
+ .height = gdk_window_get_height(window)};
|
|
||||||
+ gdk_window_invalidate_rect(window, &rect, false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -575,11 +577,15 @@ static void moz_container_set_opaque_reg
|
|
||||||
gtk_widget_get_allocation(GTK_WIDGET(container), &allocation);
|
|
||||||
|
|
||||||
// Set region to mozcontainer which does not have any offset
|
|
||||||
- wl_region* region =
|
|
||||||
- CreateOpaqueRegionWayland(0, 0, allocation.width, allocation.height,
|
|
||||||
- container->opaque_region_subtract_corners);
|
|
||||||
- wl_surface_set_opaque_region(container->surface, region);
|
|
||||||
- wl_region_destroy(region);
|
|
||||||
+ if (container->opaque_region_subtract_corners) {
|
|
||||||
+ wl_region* region =
|
|
||||||
+ CreateOpaqueRegionWayland(0, 0, allocation.width, allocation.height,
|
|
||||||
+ container->opaque_region_subtract_corners);
|
|
||||||
+ wl_surface_set_opaque_region(container->surface, region);
|
|
||||||
+ wl_region_destroy(region);
|
|
||||||
+ } else {
|
|
||||||
+ wl_surface_set_opaque_region(container->surface, nullptr);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
struct wl_surface* moz_container_get_wl_surface(MozContainer* container) {
|
|
||||||
diff -up firefox-74.0/widget/gtk/nsWindow.cpp.mozilla-1609538 firefox-74.0/widget/gtk/nsWindow.cpp
|
|
||||||
--- firefox-74.0/widget/gtk/nsWindow.cpp.mozilla-1609538 2020-03-04 12:23:34.365414768 +0100
|
|
||||||
+++ firefox-74.0/widget/gtk/nsWindow.cpp 2020-03-04 12:23:34.368414793 +0100
|
|
||||||
@@ -4866,10 +4866,14 @@ void nsWindow::UpdateTopLevelOpaqueRegio
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
- wl_region* region =
|
|
||||||
- CreateOpaqueRegionWayland(x, y, width, height, aSubtractCorners);
|
|
||||||
- wl_surface_set_opaque_region(surface, region);
|
|
||||||
- wl_region_destroy(region);
|
|
||||||
+ if (!aSubtractCorners) {
|
|
||||||
+ wl_region* region =
|
|
||||||
+ CreateOpaqueRegionWayland(x, y, width, height, aSubtractCorners);
|
|
||||||
+ wl_surface_set_opaque_region(surface, region);
|
|
||||||
+ wl_region_destroy(region);
|
|
||||||
+ } else {
|
|
||||||
+ wl_surface_set_opaque_region(surface, nullptr);
|
|
||||||
+ }
|
|
||||||
|
|
||||||
GdkWindow* window = gtk_widget_get_window(mShell);
|
|
||||||
if (window) {
|
|
@ -1,12 +0,0 @@
|
|||||||
diff -up firefox-74.0/widget/gtk/nsWindow.cpp.1615098 firefox-74.0/widget/gtk/nsWindow.cpp
|
|
||||||
--- firefox-74.0/widget/gtk/nsWindow.cpp.1615098 2020-03-13 09:34:03.623433935 +0100
|
|
||||||
+++ firefox-74.0/widget/gtk/nsWindow.cpp 2020-03-13 09:38:44.382941288 +0100
|
|
||||||
@@ -4879,8 +4879,6 @@ void nsWindow::UpdateTopLevelOpaqueRegio
|
|
||||||
if (window) {
|
|
||||||
gdk_window_invalidate_rect(window, &rect, false);
|
|
||||||
}
|
|
||||||
-
|
|
||||||
- moz_container_update_opaque_region(mContainer, aSubtractCorners);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
@ -1,44 +0,0 @@
|
|||||||
diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js
|
|
||||||
--- a/modules/libpref/init/all.js
|
|
||||||
+++ b/modules/libpref/init/all.js
|
|
||||||
@@ -4018,6 +4018,7 @@
|
|
||||||
#endif
|
|
||||||
#ifdef MOZ_WAYLAND
|
|
||||||
pref("widget.wayland_vsync.enabled", false);
|
|
||||||
+ pref("widget.wayland.use-opaque-region", true);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// All the Geolocation preferences are here.
|
|
||||||
diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
|
|
||||||
--- a/widget/gtk/nsWindow.cpp
|
|
||||||
+++ b/widget/gtk/nsWindow.cpp
|
|
||||||
@@ -333,6 +333,7 @@
|
|
||||||
static bool gGlobalsInitialized = false;
|
|
||||||
static bool gRaiseWindows = true;
|
|
||||||
static bool gUseWaylandVsync = false;
|
|
||||||
+static bool gUseWaylandUseOpaqueRegion = true;
|
|
||||||
static GList* gVisibleWaylandPopupWindows = nullptr;
|
|
||||||
|
|
||||||
#if GTK_CHECK_VERSION(3, 4, 0)
|
|
||||||
@@ -4955,6 +4956,10 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
void nsWindow::UpdateTopLevelOpaqueRegionWayland(bool aSubtractCorners) {
|
|
||||||
+ if (!gUseWaylandUseOpaqueRegion) {
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
wl_surface* surface = moz_gtk_widget_get_wl_surface(GTK_WIDGET(mShell));
|
|
||||||
if (!surface) {
|
|
||||||
return;
|
|
||||||
@@ -6690,6 +6695,9 @@
|
|
||||||
Preferences::GetBool("mozilla.widget.raise-on-setfocus", true);
|
|
||||||
gUseWaylandVsync =
|
|
||||||
Preferences::GetBool("widget.wayland_vsync.enabled", false);
|
|
||||||
+ gUseWaylandUseOpaqueRegion =
|
|
||||||
+ Preferences::GetBool("widget.wayland.use-opaque-region", true);
|
|
||||||
+
|
|
||||||
return NS_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,57 +1,50 @@
|
|||||||
diff -up firefox-74.0/widget/gtk/nsWaylandDisplay.cpp.mozilla-1623060 firefox-74.0/widget/gtk/nsWaylandDisplay.cpp
|
diff -up firefox-75.0/modules/libpref/init/StaticPrefList.yaml.mozilla-1623060 firefox-75.0/modules/libpref/init/StaticPrefList.yaml
|
||||||
--- firefox-74.0/widget/gtk/nsWaylandDisplay.cpp.mozilla-1623060 2020-03-17 14:19:04.394231493 +0100
|
--- firefox-75.0/modules/libpref/init/StaticPrefList.yaml.mozilla-1623060 2020-04-03 21:34:57.000000000 +0200
|
||||||
+++ firefox-74.0/widget/gtk/nsWaylandDisplay.cpp 2020-03-17 14:23:47.445480363 +0100
|
+++ firefox-75.0/modules/libpref/init/StaticPrefList.yaml 2020-04-06 23:03:37.631884410 +0200
|
||||||
@@ -26,15 +26,12 @@ namespace widget {
|
@@ -8600,15 +8600,6 @@
|
||||||
#define DMABUF_BASIC_PREF "widget.wayland_dmabuf_basic_compositor.enabled"
|
type: RelaxedAtomicBool
|
||||||
// Enable dmabuf for WebGL backend
|
value: false
|
||||||
#define DMABUF_WEBGL_PREF "widget.wayland_dmabuf_webgl.enabled"
|
mirror: always
|
||||||
-// See WindowSurfaceWayland::RenderingCacheMode for details.
|
-
|
||||||
-#define CACHE_MODE_PREF "widget.wayland_cache_mode"
|
-# Wayland basic (non-accelerated) compositor cache mode.
|
||||||
|
-# 0 = Default (everything is cached).
|
||||||
|
-# 1 = Cache only missing drawing.
|
||||||
|
-# 2 = No cache
|
||||||
|
-- name: widget.wayland-cache-mode
|
||||||
|
- type: RelaxedAtomicInt32
|
||||||
|
- value: 0
|
||||||
|
- mirror: always
|
||||||
|
#endif
|
||||||
|
|
||||||
bool nsWaylandDisplay::sIsDMABufEnabled = false;
|
#---------------------------------------------------------------------------
|
||||||
int nsWaylandDisplay::sIsDMABufPrefTextState = false;
|
diff -up firefox-75.0/widget/gtk/nsWaylandDisplay.cpp.mozilla-1623060 firefox-75.0/widget/gtk/nsWaylandDisplay.cpp
|
||||||
int nsWaylandDisplay::sIsDMABufPrefBasicCompositorState = false;
|
--- firefox-75.0/widget/gtk/nsWaylandDisplay.cpp.mozilla-1623060 2020-04-03 21:35:43.000000000 +0200
|
||||||
int nsWaylandDisplay::sIsDMABufPrefWebGLState = false;
|
+++ firefox-75.0/widget/gtk/nsWaylandDisplay.cpp 2020-04-06 23:03:37.632884403 +0200
|
||||||
bool nsWaylandDisplay::sIsDMABufConfigured = false;
|
@@ -523,9 +523,6 @@ bool nsWaylandDisplay::IsDMABufVAAPIEnab
|
||||||
-int nsWaylandDisplay::sRenderingCacheModePref = -1;
|
return IsDMABufEnabled() &&
|
||||||
bool nsWaylandDisplay::sIsPrefLoaded = false;
|
StaticPrefs::widget_wayland_dmabuf_vaapi_enabled();
|
||||||
|
}
|
||||||
|
-int nsWaylandDisplay::GetRenderingCacheModePref() {
|
||||||
|
- return StaticPrefs::widget_wayland_cache_mode();
|
||||||
|
-}
|
||||||
|
|
||||||
wl_display* WaylandDisplayGetWLDisplay(GdkDisplay* aGdkDisplay) {
|
void* nsGbmLib::sGbmLibHandle = nullptr;
|
||||||
@@ -423,7 +420,6 @@ nsWaylandDisplay::nsWaylandDisplay(wl_di
|
void* nsGbmLib::sXf86DrmLibHandle = nullptr;
|
||||||
sIsDMABufPrefBasicCompositorState =
|
diff -up firefox-75.0/widget/gtk/nsWaylandDisplay.h.mozilla-1623060 firefox-75.0/widget/gtk/nsWaylandDisplay.h
|
||||||
Preferences::GetBool(DMABUF_BASIC_PREF, false);
|
--- firefox-75.0/widget/gtk/nsWaylandDisplay.h.mozilla-1623060 2020-04-03 21:35:39.000000000 +0200
|
||||||
sIsDMABufPrefWebGLState = Preferences::GetBool(DMABUF_WEBGL_PREF, false);
|
+++ firefox-75.0/widget/gtk/nsWaylandDisplay.h 2020-04-06 23:03:37.632884403 +0200
|
||||||
- sRenderingCacheModePref = Preferences::GetInt(CACHE_MODE_PREF, 0);
|
@@ -93,7 +93,6 @@ class nsWaylandDisplay {
|
||||||
sIsPrefLoaded = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
diff -up firefox-74.0/widget/gtk/nsWaylandDisplay.h.mozilla-1623060 firefox-74.0/widget/gtk/nsWaylandDisplay.h
|
|
||||||
--- firefox-74.0/widget/gtk/nsWaylandDisplay.h.mozilla-1623060 2020-03-17 14:19:04.394231493 +0100
|
|
||||||
+++ firefox-74.0/widget/gtk/nsWaylandDisplay.h 2020-03-17 14:22:49.867838072 +0100
|
|
||||||
@@ -91,9 +91,6 @@ class nsWaylandDisplay {
|
|
||||||
static bool IsDMABufTexturesEnabled();
|
static bool IsDMABufTexturesEnabled();
|
||||||
static bool IsDMABufWebGLEnabled();
|
static bool IsDMABufWebGLEnabled();
|
||||||
|
static bool IsDMABufVAAPIEnabled();
|
||||||
|
- static int GetRenderingCacheModePref();
|
||||||
|
|
||||||
- // See WindowSurfaceWayland::CacheMode for details.
|
|
||||||
- int GetRenderingCacheModePref() { return sRenderingCacheModePref; };
|
|
||||||
-
|
|
||||||
private:
|
private:
|
||||||
bool ConfigureGbm();
|
bool ConfigureGbm();
|
||||||
|
diff -up firefox-75.0/widget/gtk/nsWindow.cpp.mozilla-1623060 firefox-75.0/widget/gtk/nsWindow.cpp
|
||||||
@@ -121,8 +118,7 @@ class nsWaylandDisplay {
|
--- firefox-75.0/widget/gtk/nsWindow.cpp.mozilla-1623060 2020-04-06 23:03:37.627884434 +0200
|
||||||
static int sIsDMABufPrefTextState;
|
+++ firefox-75.0/widget/gtk/nsWindow.cpp 2020-04-06 23:03:37.633884397 +0200
|
||||||
static int sIsDMABufPrefBasicCompositorState;
|
@@ -7925,3 +7925,15 @@ void nsWindow::SetEGLNativeWindowSize(
|
||||||
static int sIsDMABufPrefWebGLState;
|
|
||||||
- static bool sIsDMABufConfigured;
|
|
||||||
- static int sRenderingCacheModePref;
|
|
||||||
+ static bool sIsDMABufConfigured;
|
|
||||||
static bool sIsPrefLoaded;
|
|
||||||
};
|
|
||||||
|
|
||||||
diff -up firefox-74.0/widget/gtk/nsWindow.cpp.mozilla-1623060 firefox-74.0/widget/gtk/nsWindow.cpp
|
|
||||||
--- firefox-74.0/widget/gtk/nsWindow.cpp.mozilla-1623060 2020-03-17 14:19:04.393231499 +0100
|
|
||||||
+++ firefox-74.0/widget/gtk/nsWindow.cpp 2020-03-17 14:19:04.395231487 +0100
|
|
||||||
@@ -7839,3 +7839,15 @@ void nsWindow::SetEGLNativeWindowSize(
|
|
||||||
|
|
||||||
nsWindow* nsWindow::GetFocusedWindow() { return gFocusWindow; }
|
nsWindow* nsWindow::GetFocusedWindow() { return gFocusWindow; }
|
||||||
#endif
|
#endif
|
||||||
@ -67,10 +60,10 @@ diff -up firefox-74.0/widget/gtk/nsWindow.cpp.mozilla-1623060 firefox-74.0/widge
|
|||||||
+ }
|
+ }
|
||||||
+ return size;
|
+ return size;
|
||||||
+}
|
+}
|
||||||
diff -up firefox-74.0/widget/gtk/nsWindow.h.mozilla-1623060 firefox-74.0/widget/gtk/nsWindow.h
|
diff -up firefox-75.0/widget/gtk/nsWindow.h.mozilla-1623060 firefox-75.0/widget/gtk/nsWindow.h
|
||||||
--- firefox-74.0/widget/gtk/nsWindow.h.mozilla-1623060 2020-03-09 14:10:19.000000000 +0100
|
--- firefox-75.0/widget/gtk/nsWindow.h.mozilla-1623060 2020-04-03 21:35:39.000000000 +0200
|
||||||
+++ firefox-74.0/widget/gtk/nsWindow.h 2020-03-17 14:19:04.395231487 +0100
|
+++ firefox-75.0/widget/gtk/nsWindow.h 2020-04-06 23:03:37.632884403 +0200
|
||||||
@@ -291,6 +291,7 @@ class nsWindow final : public nsBaseWidg
|
@@ -293,6 +293,7 @@ class nsWindow final : public nsBaseWidg
|
||||||
int32_t aVertical) override;
|
int32_t aVertical) override;
|
||||||
|
|
||||||
MozContainer* GetMozContainer() { return mContainer; }
|
MozContainer* GetMozContainer() { return mContainer; }
|
||||||
@ -78,9 +71,9 @@ diff -up firefox-74.0/widget/gtk/nsWindow.h.mozilla-1623060 firefox-74.0/widget/
|
|||||||
// GetMozContainerWidget returns the MozContainer even for undestroyed
|
// GetMozContainerWidget returns the MozContainer even for undestroyed
|
||||||
// descendant windows
|
// descendant windows
|
||||||
GtkWidget* GetMozContainerWidget();
|
GtkWidget* GetMozContainerWidget();
|
||||||
diff -up firefox-74.0/widget/gtk/WindowSurfaceWayland.cpp.mozilla-1623060 firefox-74.0/widget/gtk/WindowSurfaceWayland.cpp
|
diff -up firefox-75.0/widget/gtk/WindowSurfaceWayland.cpp.mozilla-1623060 firefox-75.0/widget/gtk/WindowSurfaceWayland.cpp
|
||||||
--- firefox-74.0/widget/gtk/WindowSurfaceWayland.cpp.mozilla-1623060 2020-03-09 14:10:19.000000000 +0100
|
--- firefox-75.0/widget/gtk/WindowSurfaceWayland.cpp.mozilla-1623060 2020-04-03 21:35:43.000000000 +0200
|
||||||
+++ firefox-74.0/widget/gtk/WindowSurfaceWayland.cpp 2020-03-17 14:19:04.394231493 +0100
|
+++ firefox-75.0/widget/gtk/WindowSurfaceWayland.cpp 2020-04-06 23:03:37.632884403 +0200
|
||||||
@@ -527,9 +527,6 @@ WindowSurfaceWayland::WindowSurfaceWayla
|
@@ -527,9 +527,6 @@ WindowSurfaceWayland::WindowSurfaceWayla
|
||||||
mShmBackupBuffer[i] = nullptr;
|
mShmBackupBuffer[i] = nullptr;
|
||||||
mDMABackupBuffer[i] = nullptr;
|
mDMABackupBuffer[i] = nullptr;
|
||||||
@ -232,9 +225,9 @@ diff -up firefox-74.0/widget/gtk/WindowSurfaceWayland.cpp.mozilla-1623060 firefo
|
|||||||
LOGWAYLAND((" mDrawToWaylandBufferDirectly = %d\n",
|
LOGWAYLAND((" mDrawToWaylandBufferDirectly = %d\n",
|
||||||
mDrawToWaylandBufferDirectly));
|
mDrawToWaylandBufferDirectly));
|
||||||
}
|
}
|
||||||
diff -up firefox-74.0/widget/gtk/WindowSurfaceWayland.h.mozilla-1623060 firefox-74.0/widget/gtk/WindowSurfaceWayland.h
|
diff -up firefox-75.0/widget/gtk/WindowSurfaceWayland.h.mozilla-1623060 firefox-75.0/widget/gtk/WindowSurfaceWayland.h
|
||||||
--- firefox-74.0/widget/gtk/WindowSurfaceWayland.h.mozilla-1623060 2020-03-09 14:10:18.000000000 +0100
|
--- firefox-75.0/widget/gtk/WindowSurfaceWayland.h.mozilla-1623060 2020-04-03 21:35:39.000000000 +0200
|
||||||
+++ firefox-74.0/widget/gtk/WindowSurfaceWayland.h 2020-03-17 14:19:04.394231493 +0100
|
+++ firefox-75.0/widget/gtk/WindowSurfaceWayland.h 2020-04-06 23:03:37.631884410 +0200
|
||||||
@@ -261,8 +261,14 @@ class WindowSurfaceWayland : public Wind
|
@@ -261,8 +261,14 @@ class WindowSurfaceWayland : public Wind
|
||||||
nsWindow* mWindow;
|
nsWindow* mWindow;
|
||||||
// Buffer screen rects helps us understand if we operate on
|
// Buffer screen rects helps us understand if we operate on
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
diff --git a/widget/gtk/mozcontainer.cpp b/widget/gtk/mozcontainer.cpp
|
|
||||||
--- a/widget/gtk/mozcontainer.cpp
|
|
||||||
+++ b/widget/gtk/mozcontainer.cpp
|
|
||||||
@@ -624,17 +624,25 @@
|
|
||||||
GdkDisplay* display = gtk_widget_get_display(GTK_WIDGET(container));
|
|
||||||
nsWaylandDisplay* waylandDisplay = WaylandDisplayGet(display);
|
|
||||||
|
|
||||||
+ wl_surface* parent_surface =
|
|
||||||
+ moz_gtk_widget_get_wl_surface(GTK_WIDGET(container));
|
|
||||||
+ if (!parent_surface) {
|
|
||||||
+ return nullptr;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
// Available as of GTK 3.8+
|
|
||||||
struct wl_compositor* compositor = waylandDisplay->GetCompositor();
|
|
||||||
container->surface = wl_compositor_create_surface(compositor);
|
|
||||||
- wl_surface* parent_surface =
|
|
||||||
- moz_gtk_widget_get_wl_surface(GTK_WIDGET(container));
|
|
||||||
- if (!container->surface || !parent_surface) {
|
|
||||||
+ if (!container->surface) {
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
container->subsurface = wl_subcompositor_get_subsurface(
|
|
||||||
waylandDisplay->GetSubcompositor(), container->surface, parent_surface);
|
|
||||||
+ if (!container->subsurface) {
|
|
||||||
+ g_clear_pointer(&container->surface, wl_surface_destroy);
|
|
||||||
+ return nullptr;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
GdkWindow* window = gtk_widget_get_window(GTK_WIDGET(container));
|
|
||||||
gint x, y;
|
|
||||||
|
|
2
sources
2
sources
@ -1,3 +1 @@
|
|||||||
SHA512 (cbindgen-vendor.tar.xz) = a12d9dd45301614f3a7fcd77f61e3f731718fc418fcf84b0ac7363ef4ddd8ff60e057febef917620ac89d2d47d76b8dccfa71405935e346b849b93425732016a
|
SHA512 (cbindgen-vendor.tar.xz) = a12d9dd45301614f3a7fcd77f61e3f731718fc418fcf84b0ac7363ef4ddd8ff60e057febef917620ac89d2d47d76b8dccfa71405935e346b849b93425732016a
|
||||||
SHA512 (firefox-74.0.1.source.tar.xz) = c437c40740bd035ff374b3fa15abaff49dde3f613906f5e018f42dd3e219d32112e8b2e85efd9c0f7a872475640908adb1cf7cdd677b03a39ff435a57c48e6d5
|
|
||||||
SHA512 (firefox-langpacks-74.0.1-20200404.tar.xz) = f67ea5188910200150878b5978e2004ca30bc69ab99ef84702d636a320a6f45cd5555767f99e3e9b31b5227dd940a0888ffc7e8643e797fc1191f6f80a47fc6e
|
|
||||||
|
Loading…
Reference in New Issue
Block a user