Add upstream fix for a regression on mail preview panel sometimes growing indefinitely

This commit is contained in:
Milan Crha 2023-05-29 17:06:25 +02:00
parent a0a96af9e3
commit 833a21f7e0
2 changed files with 51 additions and 1 deletions

View File

@ -0,0 +1,44 @@
diff --git a/data/webkit/e-web-view.js b/data/webkit/e-web-view.js
index b0eab4ac09..c811c479db 100644
--- a/data/webkit/e-web-view.js
+++ b/data/webkit/e-web-view.js
@@ -760,6 +760,20 @@ Evo.EnsureMainDocumentInitialized = function()
Evo.initializeAndPostContentLoaded(null);
}
+Evo.mailDisplayGetScrollbarHeight = function()
+{
+ if (Evo.mailDisplayCachedScrollbarHeight != undefined)
+ return Evo.mailDisplayCachedScrollbarHeight;
+
+ var el = document.createElement("div");
+ el.style.cssText = "overflow:scroll; visibility:hidden; position:absolute;";
+ document.body.appendChild(el);
+ Evo.mailDisplayCachedScrollbarHeight = el.offsetHeight - el.clientHeight
+ el.remove();
+
+ return Evo.mailDisplayCachedScrollbarHeight;
+}
+
Evo.mailDisplayUpdateIFramesHeightRecursive = function(doc)
{
if (!doc)
@@ -779,7 +793,8 @@ Evo.mailDisplayUpdateIFramesHeightRecursive = function(doc)
if (doc.defaultView.frameElement.height == doc.scrollingElement.scrollHeight)
doc.defaultView.frameElement.height = 10;
- doc.defaultView.frameElement.height = doc.scrollingElement.scrollHeight + 2 + (doc.scrollingElement.scrollWidth > doc.scrollingElement.clientWidth ? 20 : 0);
+ doc.defaultView.frameElement.height = doc.scrollingElement.scrollHeight + 2 +
+ (doc.scrollingElement.scrollWidth > doc.scrollingElement.clientWidth ? Evo.mailDisplayGetScrollbarHeight() : 0);
}
Evo.MailDisplayUpdateIFramesHeight = function()
@@ -1186,7 +1201,7 @@ Evo.mailDisplaySizeChanged = function(entries, observer)
if (value < entry.target.ownerDocument.scrollingElement.scrollHeight)
value = entry.target.ownerDocument.scrollingElement.scrollHeight;
if (entry.target.ownerDocument.scrollingElement.scrollWidth > entry.target.ownerDocument.scrollingElement.clientWidth)
- value += 20;
+ value += Evo.mailDisplayGetScrollbarHeight();
entry.target.ownerDocument.defaultView.frameElement.height = value;
}
}

View File

@ -44,7 +44,7 @@
Name: evolution Name: evolution
Version: 3.48.2 Version: 3.48.2
Release: 1%{?dist} Release: 2%{?dist}
Summary: Mail and calendar client for GNOME Summary: Mail and calendar client for GNOME
License: GPL-2.0-or-later AND GFDL-1.3-or-later License: GPL-2.0-or-later AND GFDL-1.3-or-later
URL: https://wiki.gnome.org/Apps/Evolution URL: https://wiki.gnome.org/Apps/Evolution
@ -52,6 +52,9 @@ Source: http://download.gnome.org/sources/%{name}/3.48/%{name}-%{version}.tar.xz
Source1: flatpak-evolution-fix-service-names.sh Source1: flatpak-evolution-fix-service-names.sh
Source2: flatpak-evolution-wrapper.sh.in Source2: flatpak-evolution-wrapper.sh.in
# https://gitlab.gnome.org/GNOME/evolution/-/issues/2380
Patch01: 0001-Mail-Preview-content-sometimes-grows-indefinitely.patch
# Approximate version number # Approximate version number
Provides: bundled(libgnomecanvas) = 2.30.0 Provides: bundled(libgnomecanvas) = 2.30.0
@ -578,6 +581,9 @@ grep -v "%{_datadir}/locale" evolution.lang > help.lang
%endif %endif
%changelog %changelog
* Mon May 29 2023 Milan Crha <mcrha@redhat.com> - 3.48.2-2
- Add upstream fix for a regression on mail preview panel sometimes growing indefinitely
* Fri May 26 2023 Milan Crha <mcrha@redhat.com> - 3.48.2-1 * Fri May 26 2023 Milan Crha <mcrha@redhat.com> - 3.48.2-1
- Update to 3.48.2 - Update to 3.48.2