diff options
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | PKGBUILD | 33 | ||||
-rw-r--r-- | mozconfig | 2 | ||||
-rw-r--r-- | mozilla-bmo1744896.patch | 62 | ||||
-rw-r--r-- | mozilla-bmo1745560.patch | 32 | ||||
-rw-r--r-- | revert_dav1d_changes.patch.xz | bin | 0 -> 199816 bytes | |||
-rw-r--r-- | unity-menubar.patch | 4 |
7 files changed, 142 insertions, 19 deletions
@@ -1,8 +1,8 @@ # Generated by mksrcinfo v8 -# Fri Nov 26 10:02:20 UTC 2021 +# Sun Jan 2 15:57:46 UTC 2022 pkgbase = firefox-kde-opensuse pkgdesc = Standalone web browser from mozilla.org with OpenSUSE patch, integrate better with KDE - pkgver = 94.0.2 + pkgver = 95.0.2 pkgrel = 1 url = https://github.com/openSUSE/firefox-maintenance arch = i686 @@ -59,18 +59,18 @@ pkgbase = firefox-kde-opensuse optdepends = networkmanager: Location detection via available WiFi networks optdepends = speech-dispatcher: Text-to-Speech optdepends = pulseaudio: Audio support - provides = firefox=94.0.2 + provides = firefox=95.0.2 conflicts = firefox options = !emptydirs - source = hg+https://hg.mozilla.org/mozilla-unified#tag=FIREFOX_94_0_2_RELEASE + source = hg+https://hg.mozilla.org/mozilla-unified#tag=FIREFOX_95_0_2_RELEASE source = mozconfig source = firefox.desktop source = vendor.js source = kde.js - source = firefox-branded-icons-f41e1b2623e162339286610070c059afe5106c25.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/f41e1b2623e162339286610070c059afe5106c25/firefox/firefox-branded-icons.patch - source = firefox-kde-f41e1b2623e162339286610070c059afe5106c25.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/f41e1b2623e162339286610070c059afe5106c25/firefox/firefox-kde.patch - source = mozilla-kde-f41e1b2623e162339286610070c059afe5106c25.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/f41e1b2623e162339286610070c059afe5106c25/mozilla-kde.patch - source = mozilla-nongnome-proxies-f41e1b2623e162339286610070c059afe5106c25.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/f41e1b2623e162339286610070c059afe5106c25/mozilla-nongnome-proxies.patch + source = firefox-branded-icons-7c17f3c4df7423951b09c407183c30ba47c60cd5.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/7c17f3c4df7423951b09c407183c30ba47c60cd5/firefox/firefox-branded-icons.patch + source = firefox-kde-7c17f3c4df7423951b09c407183c30ba47c60cd5.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/7c17f3c4df7423951b09c407183c30ba47c60cd5/firefox/firefox-kde.patch + source = mozilla-kde-7c17f3c4df7423951b09c407183c30ba47c60cd5.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/7c17f3c4df7423951b09c407183c30ba47c60cd5/mozilla-kde.patch + source = mozilla-nongnome-proxies-7c17f3c4df7423951b09c407183c30ba47c60cd5.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/7c17f3c4df7423951b09c407183c30ba47c60cd5/mozilla-nongnome-proxies.patch source = unity-menubar.patch source = add_missing_pgo_rule.patch source = pgo_fix_missing_kdejs.patch @@ -87,16 +87,19 @@ pkgbase = firefox-kde-opensuse source = 0028-Make-elfhack-use-toolchain.patch source = fix_csd_window_buttons.patch source = fix-wayland-build.patch + source = revert_dav1d_changes.patch.xz + source = mozilla-bmo1744896.patch + source = mozilla-bmo1745560.patch md5sums = SKIP - md5sums = 72724b401217f1d0b380b4ee2872ad82 + md5sums = 9530b0395a095c0b47ee42d0996ec163 md5sums = a26a061efb4def6572d5b319d657f1d6 md5sums = 4c23d9c0a691d70919beb1dafbbecbd3 md5sums = 05bb69d25fb3572c618e3adf1ee7b670 md5sums = b386ac38ffb7e545b9473e516455a25f md5sums = 1d5e9215530ef6778299b67dc6dba65e - md5sums = b4906a478eaee31383db763b16285cce + md5sums = 01329185574709cb420f2c4531597d37 md5sums = 0a5733b7a457a2786c2dd27626a1bf88 - md5sums = 4efeed2b6084e16b4946379c54ddf9c8 + md5sums = 512c6c55c637fd2fee7a5e71f38dd54c md5sums = fe24f5ea463013bb7f1c12d12dce41b2 md5sums = 3c383d371d7f6ede5983a40310518715 md5sums = 350c258cdaeef99b4638c5181fda3ad2 @@ -112,6 +115,9 @@ pkgbase = firefox-kde-opensuse md5sums = a59f137deca1da83de10a122984457d7 md5sums = f49ac3b9f5146e33ce587e6b23eb1a86 md5sums = 2cf74781f6b742d6b7e6f7251f49311a + md5sums = d633782c58cd8b8b165e32940ec7cb46 + md5sums = c8593df8bc18e8cacfa4f36cdc31649f + md5sums = e9ce01b511ca4e5f37278d7748b8b723 pkgname = firefox-kde-opensuse @@ -13,7 +13,7 @@ _pgo=true _pkgname=firefox pkgname=$_pkgname-kde-opensuse -pkgver=94.0.2 +pkgver=95.0.2 pkgrel=1 pkgdesc="Standalone web browser from mozilla.org with OpenSUSE patch, integrate better with KDE" arch=('i686' 'x86_64') @@ -52,7 +52,7 @@ optdepends=('networkmanager: Location detection via available WiFi networks' 'pulseaudio: Audio support') provides=("firefox=${pkgver}") conflicts=('firefox') -_patchrev=f41e1b2623e162339286610070c059afe5106c25 +_patchrev=7c17f3c4df7423951b09c407183c30ba47c60cd5 options=('!emptydirs') _patchurl=https://raw.githubusercontent.com/openSUSE/firefox-maintenance/$_patchrev _repo=https://hg.mozilla.org/mozilla-unified @@ -103,6 +103,15 @@ source=("hg+$_repo#tag=FIREFOX_${pkgver//./_}_RELEASE" fix_csd_window_buttons.patch # Workaround #14 fix-wayland-build.patch + # Fix build against current Dav1D tagged version #18 + revert_dav1d_changes.patch.xz + # WR/Gnome+KDE Wayland/AMD: Firefox 95 locked to 120 fps, + # unsmooth scrolling + # https://bugzilla.mozilla.org/show_bug.cgi?id=1744896 + mozilla-bmo1744896.patch + # Firefox 91.4 fails to build against wayland 1.20 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1745560 + mozilla-bmo1745560.patch ) # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) @@ -166,6 +175,15 @@ prepare() { # Workaround #14 patch -Np1 -i "$srcdir"/fix-wayland-build.patch + # Fix build against current Dav1D tagged version + xzcat "$srcdir"/revert_dav1d_changes.patch.xz | patch -Np1 + + # WR/Gnome+KDE Wayland/AMD: Firefox 95 locked to 120 fps, + # unsmooth scrolling + patch -Np1 -i "$srcdir"/mozilla-bmo1744896.patch + + # Firefox 91.4 fails to build against wayland 1.20 + patch -Np1 -i "$srcdir"/mozilla-bmo1745560.patch if [ $_pgo ] ; then # Fix MOZILLA#1516803 @@ -276,15 +294,15 @@ END ln -sf firefox "$pkgdir/usr/lib/firefox/firefox-bin" } md5sums=('SKIP' - '72724b401217f1d0b380b4ee2872ad82' + '9530b0395a095c0b47ee42d0996ec163' 'a26a061efb4def6572d5b319d657f1d6' '4c23d9c0a691d70919beb1dafbbecbd3' '05bb69d25fb3572c618e3adf1ee7b670' 'b386ac38ffb7e545b9473e516455a25f' '1d5e9215530ef6778299b67dc6dba65e' - 'b4906a478eaee31383db763b16285cce' + '01329185574709cb420f2c4531597d37' '0a5733b7a457a2786c2dd27626a1bf88' - '4efeed2b6084e16b4946379c54ddf9c8' + '512c6c55c637fd2fee7a5e71f38dd54c' 'fe24f5ea463013bb7f1c12d12dce41b2' '3c383d371d7f6ede5983a40310518715' '350c258cdaeef99b4638c5181fda3ad2' @@ -299,4 +317,7 @@ md5sums=('SKIP' '31f950a94966287bfa6ccf03030781cc' 'a59f137deca1da83de10a122984457d7' 'f49ac3b9f5146e33ce587e6b23eb1a86' - '2cf74781f6b742d6b7e6f7251f49311a') + '2cf74781f6b742d6b7e6f7251f49311a' + 'd633782c58cd8b8b165e32940ec7cb46' + 'c8593df8bc18e8cacfa4f36cdc31649f' + 'e9ce01b511ca4e5f37278d7748b8b723') diff --git a/mozconfig b/mozconfig index 8e8916ce9be5..e5b0203a9650 100644 --- a/mozconfig +++ b/mozconfig @@ -49,6 +49,8 @@ ac_add_options --enable-crashreporter ac_add_options --disable-updater ac_add_options --disable-tests +ac_add_options --without-wasm-sandboxed-libraries + #STRIP_FLAGS="--strip-debug" # PGO diff --git a/mozilla-bmo1744896.patch b/mozilla-bmo1744896.patch new file mode 100644 index 000000000000..a70c989e88e2 --- /dev/null +++ b/mozilla-bmo1744896.patch @@ -0,0 +1,62 @@ + +# HG changeset patch +# User Robert Mader <robert.mader@posteo.de> +# Date 1640087004 0 +# Node ID 620f6d66f586a8f0efad2f58f7cb5db67f6b318b +# Parent 71184b9b6cb5f44580492b8f508b9363251111d3 +Bug 1744896 - Create WaylandVsyncSource on window creation, r=stransky, a=dsmith + +Previously we created the `WaylandVsyncSource` when calling +`WaylandStartVsync()` for the first time. Over a couple of refactorings, +this moved from `Create()` to happen much later in the process, +eventually racing with the content process which triggeres `VsyncParent` +to call `GetVsyncSource()`. +If the race went badly, `GetVsyncSource()` would return a `nullptr` and +the tab(s) in question would stick to the global software vsync source. + +To avoid that, create the `WaylandVsyncSource` in `Create()` again. + +Differential Revision: https://phabricator.services.mozilla.com/D134253 + +diff -up a/widget/gtk/nsWindow.cpp.1744896 b/widget/gtk/nsWindow.cpp +--- a/widget/gtk/nsWindow.cpp.1744896 2021-12-23 11:54:31.522539340 +0100 ++++ b/widget/gtk/nsWindow.cpp 2021-12-23 11:55:56.070270174 +0100 +@@ -5765,6 +5765,17 @@ nsresult nsWindow::Create(nsIWidget* aPa + } + } + #endif ++#ifdef MOZ_WAYLAND ++ // Initialize the window specific VsyncSource early in order to avoid races ++ // with BrowserParent::UpdateVsyncParentVsyncSource(). ++ // Only use for toplevel windows for now, see bug 1619246. ++ if (GdkIsWaylandDisplay() && ++ StaticPrefs::widget_wayland_vsync_enabled_AtStartup() && ++ mWindowType == eWindowType_toplevel) { ++ mWaylandVsyncSource = new WaylandVsyncSource(); ++ MOZ_RELEASE_ASSERT(mWaylandVsyncSource); ++ } ++#endif + + // We create input contexts for all containers, except for + // toplevel popup windows +@@ -6077,19 +6088,12 @@ void nsWindow::ResumeCompositorFromCompo + + void nsWindow::WaylandStartVsync() { + #ifdef MOZ_WAYLAND +- // only use for toplevel windows for now - see bug 1619246 +- if (!GdkIsWaylandDisplay() || +- !StaticPrefs::widget_wayland_vsync_enabled_AtStartup() || +- mWindowType != eWindowType_toplevel) { ++ if (!mWaylandVsyncSource) { + return; + } + + LOG("nsWindow::WaylandStartVsync() [%p]\n", (void*)this); + +- if (!mWaylandVsyncSource) { +- mWaylandVsyncSource = new WaylandVsyncSource(); +- } +- + WaylandVsyncSource::WaylandDisplay& display = + static_cast<WaylandVsyncSource::WaylandDisplay&>( + mWaylandVsyncSource->GetGlobalDisplay()); diff --git a/mozilla-bmo1745560.patch b/mozilla-bmo1745560.patch new file mode 100644 index 000000000000..335d291b1ed6 --- /dev/null +++ b/mozilla-bmo1745560.patch @@ -0,0 +1,32 @@ + +# HG changeset patch +# User Kevin Daudt <kdaudt@alpinelinux.org> +# Date 1639316328 0 +# Node ID 9868f275bf475e64eda8b0bf4514d96184da25bd +# Parent e61182cbd74b10db2bc1d46ed70de695fc931295 +Bug 1745560 - Add missing stub for wl_proxy_marshal_flags, r=stransky, a=dsmith + +Firefox fails to build against wayland 1.20 because this symbol is missing + +Differential Revision: https://phabricator.services.mozilla.com/D133583 + +diff --git a/widget/gtk/mozwayland/mozwayland.c b/widget/gtk/mozwayland/mozwayland.c +--- a/widget/gtk/mozwayland/mozwayland.c ++++ b/widget/gtk/mozwayland/mozwayland.c +@@ -195,8 +195,15 @@ MOZ_EXPORT void wl_list_insert(struct wl + MOZ_EXPORT void wl_list_remove(struct wl_list* elm) {} + + MOZ_EXPORT int wl_list_length(const struct wl_list* list) { return -1; } + + MOZ_EXPORT int wl_list_empty(const struct wl_list* list) { return -1; } + + MOZ_EXPORT void wl_list_insert_list(struct wl_list* list, + struct wl_list* other) {} ++ ++MOZ_EXPORT struct wl_proxy* wl_proxy_marshal_flags( ++ struct wl_proxy* proxy, uint32_t opcode, ++ const struct wl_interface* interface, uint32_t version, uint32_t flags, ++ ...) { ++ return NULL; ++} + diff --git a/revert_dav1d_changes.patch.xz b/revert_dav1d_changes.patch.xz Binary files differnew file mode 100644 index 000000000000..e638f331d9c0 --- /dev/null +++ b/revert_dav1d_changes.patch.xz diff --git a/unity-menubar.patch b/unity-menubar.patch index 36d9dd8fd746..d747a5db506c 100644 --- a/unity-menubar.patch +++ b/unity-menubar.patch @@ -32,7 +32,7 @@ + continue; + } + - if (toolbar.id == "PersonalToolbar" && gBookmarksToolbar2h2020) { + if (toolbar.id == "PersonalToolbar") { let menu = BookmarkingUI.buildBookmarksToolbarSubmenu(toolbar); popup.insertBefore(menu, firstMenuItem); --- a/browser/components/places/content/places.xhtml @@ -5236,7 +5236,7 @@ + EXPORTS.mozilla += [ "BasicEvents.h", - "CommandList.h", + "ColorScheme.h", --- /dev/null +++ b/widget/nsINativeMenuService.h @@ -0,0 +1,39 @@ |