Should switch to Away mode when locking screen on Windows 10

Description

Must be some change (or rather bug) in Windows 10 that Spark is not switching into Away mode when Windows 10 machine is locked, until a user taps/clicks on a lock screen picture and login screen is shown. As Spark is a platform independent Java based application it is not clear if there could be workaround added. Unless Java 9 or later will have a fix for that. Or maybe Windows 10 will be fixed eventually.

Filing this as a task, as i do believe this is a buggy Windows 10 behavior. Works fine on XP, Win7 and even Win 8.1.

Environment

Windows 10

Activity

Show:
wroot
August 6, 2016, 1:25 PM

Btw, tested on Anniversary Update (1607, build 14393.10)

wroot
August 6, 2016, 1:24 PM

Merged and tested https://github.com/igniterealtime/Spark/pull/185
Great work, speedy

speedy
August 3, 2016, 8:49 PM

i think this could be addressed with jna. using some examples I've found online and hacking around the best i can (limited knowledge here!) I was able to get this to work(ish)

http://stackoverflow.com/questions/25727879/implementing-workstation-lock-listener-using-java

https://github.com/java-native-access/jna/blob/master/contrib/native_window_msg/src/com/sun/jna/platform/win32/Win32WindowDemo.java

a similar process could prob be used for linux and osx as well.

Maybe this will help a more experience dev when it come times to look at this

wroot
March 19, 2016, 2:12 PM
speedy
March 18, 2016, 4:25 PM

The idle code looks for a mouse pointer location.
when the screen gets locked, windows sets a specific location ,which in turn triggers the change in presence.
It appears that with windows 10, the lock screen has the wallpaper overlay, which doesn't change the mouse location..however when you go to the "true" lock screen, the mouse location changes to what spark is looking for, and fires off the change in presence.

As a temp work around, you can disable the lock screen overlay by using a group policy or changing the registry.
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Personalization]
"NoLockScreen"=dword:00000001

Fixed
Your pinned fields
Click on the next to a field label to start pinning.

Priority

Minor

Assignee

speedy

Reporter

wroot

Labels