Bug 313571 - org.freedesktop.ScreenSaver.GetSessionIdleTime returns milliseconds instead of seconds
Summary: org.freedesktop.ScreenSaver.GetSessionIdleTime returns milliseconds instead o...
Status: RESOLVED INTENTIONAL
Alias: None
Product: kscreenlocker
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR major
Target Milestone: ---
Assignee: Lubos Lunak
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-20 15:52 UTC by Konrad Twardowski
Modified: 2022-11-04 21:23 UTC (History)
6 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Konrad Twardowski 2013-01-20 15:52:26 UTC
Hi,
It seems that the org.freedesktop.ScreenSaver.GetSessionIdleTime D-Bus implementation
returns milliseconds instead of seconds.
AFAIK it worked correctly in previous stable KDE versions.

Reproducible: Always

Actual Results:  
$ sleep 2; qdbus org.freedesktop.ScreenSaver /ScreenSaver GetSessionIdleTime
1962

Expected Results:  
$ sleep 2; qdbus org.freedesktop.ScreenSaver /ScreenSaver GetSessionIdleTime
2

kde-workspace-4.9.98/ksmserver/screenlocker/interface.h
(from http://download.kde.org/unstable/4.9.98/src/):

    /**
     * Returns the number of seconds that the session has
     * been idle.  Returns zero if the session is not idle.
     */
    uint GetSessionIdleTime();

kde-workspace-4.9.98/ksmserver/screenlocker/interface.cpp:

uint Interface::GetSessionIdleTime()
{
    return KIdleTime::instance()->idleTime();
}

But according to API docs[1] KIdleTime returns millis...

[1] http://api.kde.org/4.10-api/kdelibs-apidocs/kutils/html/classKIdleTime.html#a41dfb08384fd032b83c75a875e0d2576
Comment 1 Octavian Petre 2013-05-01 13:51:53 UTC
Has this been solved? 
I am seeing strange numbers :
octavian@mythtv /mnt/store/home/octavian $ sleep 10 && qdbus org.kde.screensaver /ScreenSaver GetSessionIdleTime
136359936
octavian@mythtv /mnt/store/home/octavian $ sleep 2; qdbus org.freedesktop.ScreenSaver /ScreenSaver GetSessionIdleTime
136516544
octavian@mythtv /mnt/store/home/octavian $ sleep 2; qdbus org.freedesktop.ScreenSaver /ScreenSaver GetSessionIdleTime
136347776
octavian@mythtv /mnt/store/home/octavian $ sleep 2; qdbus org.freedesktop.ScreenSaver /ScreenSaver GetSessionIdleTime
136359936
octavian@mythtv /mnt/store/home/octavian $ sleep 2; qdbus org.freedesktop.ScreenSaver /ScreenSaver GetSessionIdleTime
136324352
Comment 2 Konrad Twardowski 2013-05-03 05:17:49 UTC
> Has this been solved?

I don't know but this bug is still in v4.10.2.

> I am seeing strange numbers :

It should reset to zero every time you move mouse or press keyboard...
Comment 3 Konrad Twardowski 2018-05-28 05:10:15 UTC
(a minor bug info update...)

Reproducible in Plasma 5.12.4:

$ sleep 2; qdbus org.kde.screensaver /ScreenSaver org.freedesktop.ScreenSaver.GetSessionIdleTime

$ sleep 2; qdbus org.kde.ksmserver /ScreenSaver org.freedesktop.ScreenSaver.GetSessionIdleTime

$ sleep 2; qdbus org.freedesktop.ScreenSaver /ScreenSaver GetSessionIdleTime

Updated reference links:

* https://github.com/KDE/kscreenlocker/blob/0b8dae07245857df2fd998c836b6f451e5977072/interface.cpp#L79
* https://github.com/KDE/kscreenlocker/blob/0b8dae07245857df2fd998c836b6f451e5977072/interface.h#L84
* https://api.kde.org/frameworks/kidletime/html/classKIdleTime.html#a41dfb08384fd032b83c75a875e0d2576
Comment 4 David Edmundson 2018-06-16 22:37:49 UTC
@konrad, you've clearly identified the issue do you want to just submit a patch on phabricator.
Comment 5 Nate Graham 2021-06-21 21:54:37 UTC
Konrad, would you like to submit that merge request?
Comment 6 Konrad Twardowski 2021-06-26 14:14:14 UTC
(In reply to Nate Graham from comment #5)
> Konrad, would you like to submit that merge request?

I think 8 years later the bug became a Plasma-specific "de facto standard",
because some apps depend on that behavior [1] which is unfortunate ¯\_(ツ)_/¯

[1] https://dev.gajim.org/gajim/gajim/-/merge_requests/726/diffs?commit_id=1aec68c98c70df82a320b7b4cbaeb7332da37e6c
Comment 7 Nate Graham 2022-11-04 21:23:39 UTC
:/