Bug 359680

Summary: ActiveChanged signal broken
Product: [Unmaintained] kscreenlocker Reporter: Kai Uwe Broulik <kde>
Component: greeterAssignee: Plasma Bugs List <plasma-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: bshah, jroo, mgraesslin
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Kai Uwe Broulik 2016-02-22 19:50:19 UTC
I have code that relies on the ActiveChanged signal to make sure the screen is locked before proceeding. This code is not executed. I had a look with qdbusviewer and when I lock and unlock the screen I can observe the following:

Received signal from :1.8, path /ScreenSaver, interface org.freedesktop.ScreenSaver, member ActiveChanged
  Arguments: false
Received signal from :1.8, path /org/freedesktop/ScreenSaver, interface org.freedesktop.ScreenSaver, member ActiveChanged
  Arguments: false

At no point did it tell me the screen was actually locked. I'm not sure if it's telling me false when it locks and false when it unlocks again, or tells me nothing and then false twice. This is running kscreenlocker/p-w/kwin master.

Reproducible: Always
Comment 1 Martin Flöser 2016-02-23 06:50:13 UTC
I just tried and connected to the signal in qdbusviewer and then locked the screen and unlocked:

Received signal from :1.18, path /ScreenSaver, interface org.freedesktop.ScreenSaver, member ActiveChanged
  Arguments: true
Received signal from :1.18, path /org/freedesktop/ScreenSaver, interface org.freedesktop.ScreenSaver, member ActiveChanged
  Arguments: true
Received signal from :1.18, path /ScreenSaver, interface org.freedesktop.ScreenSaver, member ActiveChanged
  Arguments: false
Received signal from :1.18, path /org/freedesktop/ScreenSaver, interface org.freedesktop.ScreenSaver, member ActiveChanged
  Arguments: false
Comment 2 Martin Flöser 2016-04-04 12:40:04 UTC
Maybe also related to https://phabricator.kde.org/D1314
Comment 3 Janne Rönkkö 2016-04-06 04:39:52 UTC
I'm also seeing this issue.

I'm running Archlinux with kdescreenlocker version 5.6.2 (arch version 5.6.2-1) which has the fix for D1314.

Also qdbus org.kde.screensaver /ScreenSaver org.freedesktop.ScreenSaver.GetActive return false even when screen saver is active but I guess this is due to the same reason ActiveChanged(true) is not sent at all.
Comment 4 Janne Rönkkö 2016-04-06 04:52:02 UTC
Actually, I had version 5.6.2 installed but was still using 5.6.1.

After restarting KDE ActiveChanged signal works.
Comment 5 Martin Flöser 2016-04-06 05:48:31 UTC
marking as fixed as of comment #4 - that's what I expected given that the change mentioned in comment #2 got merged.