Update to 3.48.3
This commit is contained in:
		
							parent
							
								
									6118b98b2f
								
							
						
					
					
						commit
						b2c19b10ca
					
				| @ -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; | ||||
|  		} | ||||
|  	} | ||||
| @ -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) | ||||
| 
 | ||||
| @ -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 <mcrha@redhat.com> - 3.48.3-1 | ||||
| - Update to 3.48.3 | ||||
| 
 | ||||
| * Tue May 30 2023 Milan Crha <mcrha@redhat.com> - 3.48.2-3 | ||||
| - Add patch to workaround recursion in iframe height computation in mail preview | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										2
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								sources
									
									
									
									
									
								
							| @ -1 +1 @@ | ||||
| SHA512 (evolution-3.48.2.tar.xz) = d6d0af82fa31550a5657854c310ee2a00892bb9d0b7e3ace419880426315e66bc6c02dc6b7d3c4559e23d02b340e84054fc1e54fedeb08cddd035e9140f24a85 | ||||
| SHA512 (evolution-3.48.3.tar.xz) = 80af99d5351cc8303db1ed55f84473c1b8dd08eefa04370510a4fb249b3bb514e6c9ca2b650ef04b240c413b1e4f23388c5aa4493df74dc0ebabfdb115ceef58 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user