Added wayland window fix mzbz#1827429

This commit is contained in:
Martin Stransky 2023-04-11 16:51:42 +02:00
parent 1449db1d63
commit 9f85dc3c25
2 changed files with 39 additions and 1 deletions

View File

@ -175,7 +175,7 @@ ExcludeArch: i686
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 112.0
Release: 2%{?pre_tag}%{?dist}
Release: 3%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
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
@ -256,6 +256,7 @@ Patch415: mozilla-1670333.patch
# https://phabricator.services.mozilla.com/D173021
Patch416: libwebrtc-pipewire-capturer-import-dmabuf-directly-into-desktop-frame.patch
Patch417: mozilla-1826583.patch
Patch418: mozilla-1827429.patch
# PGO/LTO patches
Patch600: pgo.patch
@ -538,6 +539,7 @@ This package contains results of tests executed during build.
%patch415 -p1 -b .1670333
%patch416 -p1 -b .libwebrtc-pipewire-capturer-import-dmabuf-directly-into-desktop-frame
%patch417 -p1 -b .1826583
%patch418 -p1 -b .1827429
# PGO patches
%if %{build_with_pgo}
@ -1087,6 +1089,9 @@ fi
#---------------------------------------------------------------------
%changelog
* Tue Apr 11 2023 Martin Stransky <stransky@redhat.com>- 112.0-3
- Added wayland window fix mzbz#1827429
* Thu Apr 6 2023 Martin Stransky <stransky@redhat.com>- 112.0-2
- Updated to 112.0 build 2
- don't crash on wayland logging (mzbz#1826583/rhbz#2184842).

33
mozilla-1827429.patch Normal file
View File

@ -0,0 +1,33 @@
changeset: 659713:2cf85addfa7a
tag: tip
parent: 659711:25045b498bff
user: stransky <stransky@redhat.com>
date: Tue Apr 11 16:34:42 2023 +0200
files: widget/gtk/nsWindow.cpp
description:
Bug 1827429 [Wayland] Call NotifyOcclusionState(OcclusionState::VISIBLE) from nsWindow::OnExposeEvent() as we know the window is visible r?emilio
Differential Revision: https://phabricator.services.mozilla.com/D175138
diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
--- a/widget/gtk/nsWindow.cpp
+++ b/widget/gtk/nsWindow.cpp
@@ -3730,9 +3730,14 @@ void nsWindow::CreateCompositorVsyncDisp
gboolean nsWindow::OnExposeEvent(cairo_t* cr) {
// Send any pending resize events so that layout can update.
- // May run event loop.
+ // May run event loop and destroy us.
MaybeDispatchResized();
-
+ if (mIsDestroyed) {
+ return FALSE;
+ }
+
+ // This might destroy us.
+ NotifyOcclusionState(OcclusionState::VISIBLE);
if (mIsDestroyed) {
return FALSE;
}