Bug 102124 - xdg-screensaver script does not follow freedesktop spec
Summary: xdg-screensaver script does not follow freedesktop spec
Status: RESOLVED MOVED
Alias: None
Product: Portland
Classification: Unclassified
Component: xdg-utils (show other bugs)
Version: unspecified
Hardware: Other Linux (All)
: medium minor
Assignee: Portland Bugs
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-08-09 01:00 UTC by Kishore Gopalakrishnan
Modified: 2019-02-16 13:39 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Kishore Gopalakrishnan 2017-08-09 01:00:36 UTC
Downstream bug report: https://bugs.kde.org/show_bug.cgi?id=381160#c4

(From comment #4 of above report)
"xdg-screensaver is a script that does different things for each desktop.

The one that tries to use the standard fd.o interface is just completely wrong.

From the spec:
"Inhibition will stop when the UnInhibit function is called, or the application disconnects from the D-Bus session bus (which usually happens upon exit)."
https://people.freedesktop.org/~hadess/idle-inhibition-spec/ch03.html


dbus-send (called from the xdg-screensaver script) exits immediately after sending

We follow the fd.o spec so correctly remove the inhibition.

xdg-screensaver needs fixing, not plasma."

I am using version 1.1.2, but I could not fill that in the version field, as the option was missing.
Comment 1 Rex Dieter 2017-08-09 01:12:29 UTC
I *think* that's what the 'track_window' function's purpose is.

That said, cannot speak for for how well or if it works as it should
Comment 2 Nicolas F. 2017-08-11 19:47:48 UTC
This essentially renders xdg-screensaver completely useless on KDE, and thus programs which depend on xdg-screensaver working to inhibit the screensaver such as mpv's current git HEAD fail to inhibit the lock screen. I think the original downstream report does not stress this point enough.
Comment 3 Alex Xu (Hello71) 2017-08-15 00:54:10 UTC
the problem is that screensaver_freedesktop reset suffers from Bad Copy and Paste Programming. it is supposed to call org.freedesktop.ScreenSaver.SimulateUserActivity like screensaver_gnome_screensaver reset, but instead was copy and pasted from screensaver_freedesktop resume. therefore, it performs the wrong operation and uninhibits the display (resume) instead of stopping the screensaver (reset).
Comment 4 GitLab Migration User 2019-02-16 13:39:19 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xdg/xdg-utils/issues/114.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.