<table><tr><td style="">broulik created this revision.<br />broulik added a reviewer: Plasma.<br />broulik set the repository for this revision to rPLASMAWORKSPACE Plasma Workspace.<br />Restricted Application added a project: Plasma.<br />Restricted Application added a subscriber: plasma-devel.</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D2484" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>When simultaneously fading two items (one from fully opaque to transparent and the other one vice-versa) you can briefly see the black background through the images leading to an ugly flicker.</p>
<p>By only doing this when the old image could be seen (when the new one has a smaller size) we avoid this in the common case of full-size wallpapers.</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>Added a large and tiny wallpaper, randomly switched between them, also played around with various scale modes. It no longer flickers everytime the wallpaper is changed.</p>
<p>This obviously breaks (as in you can see the old image which then suddenly disapperas once the animation finishes) images with alpha channel but I don't think we actively support/encourge that? It's just a corner-case anyway imho.</p>
<p>I noticed that because kscreenlocker greeter sets the image size after the wallpaper has loaded causing it to reload (source size changed) and this flickered when the lock screen showed up. This issue needs to be addressed separately but this patch still gives us a more polished look, especially when using a slideshow wallpaper.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>rPLASMAWORKSPACE Plasma Workspace</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D2484" rel="noreferrer">https://phabricator.kde.org/D2484</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>wallpapers/image/imagepackage/contents/ui/main.qml</div></div></div><br /><div><strong>EMAIL PREFERENCES</strong><div><a href="https://phabricator.kde.org/settings/panel/emailpreferences/" rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br /><div><strong>To: </strong>broulik, Plasma<br /><strong>Cc: </strong>plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas<br /></div>