Bug 460910 - Animated wallpaper is not animated on lock screen
Summary: Animated wallpaper is not animated on lock screen
Status: ASSIGNED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Image & Slideshow wallpaper plugins (other bugs)
Version First Reported In: 5.26.1
Platform: Arch Linux Linux
: NOR minor
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: junior-jobs
Depends on:
Blocks:
 
Reported: 2022-10-23 21:55 UTC by Mariano
Modified: 2025-11-26 05:49 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mariano 2022-10-23 21:55:41 UTC
SUMMARY
The user can set an animated wallpaper on the desktop and on the lock screen as well.
The animated wallpaper is set to stop when a window is maximized. [1]
When a window is maximized, also the animation on the lock screen is stopped.
I guess that was not intended.

DESIRED RESULT

The lock screen should always be animated, regardless of maximized windows.

[1]: https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1831/diffs?commit_id=013ad03370a1b08d2db79d88cf8f752434d0e401

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: EndeavourOS Linux 6.0.2-arch1-1 #1 SMP PREEMPT_DYNAMIC x86_64 GNU/Linux
KDE Plasma Version: 5.26.1
KDE Frameworks Version: 5.99.0
Qt Version: 5.15.6
Graphics platform: Wayland
Comment 1 Nate Graham 2022-10-24 20:52:53 UTC
Need to check for whether any of the maximized or full screen windows are the lock screen, I guess.
Comment 2 Ranbeer Malhotra 2025-08-03 02:35:58 UTC
Thank you Mariano for pointing out in the right direction. I browsed the commit and found a flaw in the logic of pausing the animation. 

Line 43 of AnimatedImageComponent.qml:
https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1831/diffs?commit_id=6e43d469811222f889eed71ad96e0073ddfbba65#5e76689bb88c1344227f1aad04ef9a5637692901_0_43

The code checks for activeWindowMonitor count which in turn finds the no. of maximized windows. Now, this logic works for an unlocked screen but when the screen is locked, the value remains the same.

Maybe adding a logic to Line 43 for checking for locked status of device will help mitigate this bug.
Comment 3 Nate Graham 2025-08-07 15:39:33 UTC
Cool, would you  like to submit a merge request to fix this?
Comment 4 Ranbeer Malhotra 2025-08-08 02:00:11 UTC
I would love too. Sadly, I have no experience in Qt and C++. I explored a possible solution which I am not sure would work, but I am gonna drop it just in case.

Using dbus interface to get the status of lock screen. I am not sure if this would work but I do get the status of lock screen using GetActive method. reference: https://superuser.com/questions/820596/kde-screen-lock-log

Again, sorry for not contributing further due to lack of my experience.
Comment 5 Luis Bocanegra 2025-09-01 08:30:26 UTC
Doing `property bool isLockScreen: Window.window ? Window.window.source.toString().endsWith("LockScreen.qml") : false` works but feels more like a workaround as it will have to keep in sync with https://invent.kde.org/plasma/plasma-desktop/-/blob/master/desktoppackage/contents/lockscreen/LockScreen.qml, tried looking at MaximizedWindowMonitor class but my C++ fu is not so great to understand how it works :P
Comment 6 Bug Janitor Service 2025-10-25 11:01:22 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/5941
Comment 7 Bug Janitor Service 2025-11-26 05:49:39 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kscreenlocker/-/merge_requests/297