diff --git a/0001-Mail-Preview-content-sometimes-grows-indefinitely.patch b/0001-Mail-Preview-content-sometimes-grows-indefinitely.patch deleted file mode 100644 index 1707281..0000000 --- a/0001-Mail-Preview-content-sometimes-grows-indefinitely.patch +++ /dev/null @@ -1,44 +0,0 @@ -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; - } - } diff --git a/0002-I-2382-Mail-Workaround-recursion-in-iframe-height-co.patch b/0002-I-2382-Mail-Workaround-recursion-in-iframe-height-co.patch deleted file mode 100644 index 5b9fe96..0000000 --- a/0002-I-2382-Mail-Workaround-recursion-in-iframe-height-co.patch +++ /dev/null @@ -1,99 +0,0 @@ -diff --git a/data/webkit/e-web-view.js b/data/webkit/e-web-view.js -index c811c479db..032287fd73 100644 ---- a/data/webkit/e-web-view.js -+++ b/data/webkit/e-web-view.js -@@ -760,6 +760,24 @@ Evo.EnsureMainDocumentInitialized = function() - Evo.initializeAndPostContentLoaded(null); - } - -+Evo.mailDisplaySetIFrameHeight = function(iframe, height, forWidth, force) -+{ -+ if (!force && iframe.hasAttribute("x-evo-height-for-width") && iframe.hasAttribute("x-evo-cached-height")) { -+ var heightForWidth = parseInt(iframe.getAttribute("x-evo-height-for-width")); -+ if (heightForWidth == forWidth) { -+ var cachedHeight = parseInt(iframe.getAttribute("x-evo-cached-height")); -+ if (cachedHeight > 0) { -+ iframe.height = cachedHeight; -+ return; -+ } -+ } -+ } -+ -+ iframe.setAttribute("x-evo-height-for-width", forWidth); -+ iframe.setAttribute("x-evo-cached-height", height); -+ iframe.height = height; -+} -+ - Evo.mailDisplayGetScrollbarHeight = function() - { - if (Evo.mailDisplayCachedScrollbarHeight != undefined) -@@ -779,7 +797,7 @@ Evo.mailDisplayUpdateIFramesHeightRecursive = function(doc) - if (!doc) - return; - -- var ii, iframes; -+ var ii, iframes, force = false; - - iframes = doc.getElementsByTagName("iframe"); - -@@ -791,20 +809,27 @@ Evo.mailDisplayUpdateIFramesHeightRecursive = function(doc) - if (!doc.scrollingElement || !doc.defaultView || !doc.defaultView.frameElement) - return; - -- if (doc.defaultView.frameElement.height == doc.scrollingElement.scrollHeight) -+ 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 ? Evo.mailDisplayGetScrollbarHeight() : 0); -+ force = true; -+ } -+ -+ Evo.mailDisplaySetIFrameHeight(doc.defaultView.frameElement, doc.scrollingElement.scrollHeight + 2 + -+ (doc.scrollingElement.scrollWidth > doc.scrollingElement.clientWidth ? Evo.mailDisplayGetScrollbarHeight() : 0), -+ doc.scrollingElement.clientWidth, force); - } - - Evo.MailDisplayUpdateIFramesHeight = function() - { -+ var scrollx = document.defaultView ? document.defaultView.scrollX : -1; - var scrolly = document.defaultView ? document.defaultView.scrollY : -1; - - Evo.mailDisplayUpdateIFramesHeightRecursive(document); - -- if (scrolly != -1 && document.defaultView.scrollY != scrolly) -- document.defaultView.scrollTo(0, scrolly); -+ if (scrollx != -1 && scrolly != -1 && ( -+ document.defaultView.scrollX != scrollx || -+ document.defaultView.scrollY != scrolly)) -+ document.defaultView.scrollTo(scrollx, scrolly); - - Evo.mailDisplayResizeContentToPreviewWidth(); - Evo.mailDisplayUpdateMagicSpacebarState(); -@@ -1194,6 +1219,9 @@ Evo.unsetHTMLColors = function(doc) - - Evo.mailDisplaySizeChanged = function(entries, observer) - { -+ var scrollx = document.defaultView ? document.defaultView.scrollX : -1; -+ var scrolly = document.defaultView ? document.defaultView.scrollY : -1; -+ - for (const entry of entries) { - if (entry.target.ownerDocument.defaultView.frameElement && entry.borderBoxSize?.length > 0) { - var value = entry.borderBoxSize[0].blockSize; -@@ -1202,9 +1230,15 @@ Evo.mailDisplaySizeChanged = function(entries, observer) - value = entry.target.ownerDocument.scrollingElement.scrollHeight; - if (entry.target.ownerDocument.scrollingElement.scrollWidth > entry.target.ownerDocument.scrollingElement.clientWidth) - value += Evo.mailDisplayGetScrollbarHeight(); -- entry.target.ownerDocument.defaultView.frameElement.height = value; -+ Evo.mailDisplaySetIFrameHeight(entry.target.ownerDocument.defaultView.frameElement, value, -+ entry.target.ownerDocument.scrollingElement.clientWidth, false); - } - } -+ -+ if (scrollx != -1 && scrolly != -1 && ( -+ document.defaultView.scrollX != scrollx || -+ document.defaultView.scrollY != scrolly)) -+ document.defaultView.scrollTo(scrollx, scrolly); - } - - Evo.MailDisplayBindDOM = function(iframe_id, markCitationColor) - diff --git a/evolution.spec b/evolution.spec index 72556cc..7bf43e3 100644 --- a/evolution.spec +++ b/evolution.spec @@ -43,8 +43,8 @@ ### Abstract ### Name: evolution -Version: 3.48.2 -Release: 3%{?dist} +Version: 3.48.3 +Release: 1%{?dist} Summary: Mail and calendar client for GNOME License: GPL-2.0-or-later AND GFDL-1.3-or-later URL: https://wiki.gnome.org/Apps/Evolution @@ -52,12 +52,6 @@ Source: http://download.gnome.org/sources/%{name}/3.48/%{name}-%{version}.tar.xz Source1: flatpak-evolution-fix-service-names.sh Source2: flatpak-evolution-wrapper.sh.in -# https://gitlab.gnome.org/GNOME/evolution/-/issues/2380 -Patch01: 0001-Mail-Preview-content-sometimes-grows-indefinitely.patch - -# https://gitlab.gnome.org/GNOME/evolution/-/issues/2382 -Patch02: 0002-I-2382-Mail-Workaround-recursion-in-iframe-height-co.patch - # Approximate version number Provides: bundled(libgnomecanvas) = 2.30.0 @@ -584,6 +578,9 @@ grep -v "%{_datadir}/locale" evolution.lang > help.lang %endif %changelog +* Fri Jun 02 2023 Milan Crha - 3.48.3-1 +- Update to 3.48.3 + * Tue May 30 2023 Milan Crha - 3.48.2-3 - Add patch to workaround recursion in iframe height computation in mail preview diff --git a/sources b/sources index dbb3d2f..6b6274d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (evolution-3.48.2.tar.xz) = d6d0af82fa31550a5657854c310ee2a00892bb9d0b7e3ace419880426315e66bc6c02dc6b7d3c4559e23d02b340e84054fc1e54fedeb08cddd035e9140f24a85 +SHA512 (evolution-3.48.3.tar.xz) = 80af99d5351cc8303db1ed55f84473c1b8dd08eefa04370510a4fb249b3bb514e6c9ca2b650ef04b240c413b1e4f23388c5aa4493df74dc0ebabfdb115ceef58