History log of /frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b4045d3791566a1965024591def87dff7d120295 17-Mar-2017 Andrew Zeng <zenga@google.com> Notify keyguard of when power button is pressed.

This is done on wear power button doesn't turn off the screen,
when the device wakes from keyguard UI isn't visible yet, so
it needs to react to power press in some way.

Bug: 35147955
Change-Id: I22619ea446770d09b53370e9244215646b60a9db
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
241ae10b2189f449e57d8d660235ac56d8fb1b80 03-Nov-2016 Jorim Jaggi <jjaggi@google.com> Add explicit method to dismiss Keyguard

The flag is a bit clunky for most cases, and a method is more
clear.

Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test
android.server.cts.KeyguardTests

Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test
android.server.cts.KeyguardLockedTests

Test: runtest systemui -c
com.android.systemui.keyguard.DismissCallbackRegistryTest

Bug: 30961403
Bug: 27422134
Change-Id: I39de90c7cfecd99350a74f72cd76418e337f2b79
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
e9d8272e9af29232471dc2c690675362494f5b0a 08-Nov-2016 Adrian Roos <roosa@google.com> Keyguard: Fix screenTurnedOn trace tag

Test: run systrace, check tags are correct
Change-Id: I7c7bbc103d20daedb708997b7a7f40e9e3dcb8d3
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
8d78693157cb3fa7ab1c9072ef913af4d67c6314 27-Oct-2016 Jorim Jaggi <jjaggi@google.com> The big keyguard transition refactor (6/n)

Cleanup:
- Make sure all the state is nicely dumped.
- Remove some unused stuff.
- Fix a flicker when occluded -> unlocked

Bug: 32057734
Change-Id: Id87e26adccef740d608b325c2dc1f6db14dd4ec3
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
32cbdcc8c098b4a42212b3da345b929abad8ad6e 31-Aug-2016 Jorim Jaggi <jjaggi@google.com> resolve merge conflicts of c5bafe2 to master

Change-Id: I19dd5c88c664313c2f8b47d8f8fd556f630c8bf1
6626f54e658e3da44fab8a5cd6d9d3d4852e2cd1 22-Aug-2016 Jorim Jaggi <jjaggi@google.com> Add animation when unoccluding windows (1/2)

Before there was a jump-cut when a window that was occluding Keyguard
was going away, leading to an ugly flicker. To fix this, we do the
following.

- Always show windows with FLAG_SHOW_WHEN_LOCKED above lockscreen, even
if they don't "match" the currently occluding app (which is null in the
animation case)
- Move wallpaper behind last window that is not hidden by policy, so the
window doesn't get occluded by the wallpaper.
- Add a flag in the setOccluded call whether to animate or not. SystemUI
then plays a nice animation when it's set.
- Override the animation to always be the animation that happens when we
exit a window which is revealing the wallpaper behind, to make it
consistent with the home screen case.

Fixes: 30829255
Change-Id: Ib3fe20fc9003a0f9f291c974740f044ed8707e75
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
1839645126c8e7e0909e8ed8f0686c2122ba6078 28-Jul-2016 Evan Rosky <erosky@google.com> Add support for custom user-switch UI

Given config_customUserSwitchUi, AM/UserController will not show any
UI during user-switch (no dialog or screen-freeze).

Provides a mechanism (WM.setSwitchingUser) by which a custom user-switch
UI can notify WM/Keyguard when it expects a user-switch operation to
be running.

Bug: 29329555
Change-Id: Ic903fc251d7ec3a54bc6a77906d3afa45a6a5fac
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
d88eb2693b6a70af0f5fbc5881ce855e28de33aa 04-Aug-2016 Adrian Roos <roosa@google.com> Keyguard: Refactoring for improving trusted unlock while occluded

- Adds a trusted signal from Keyguard to PhoneWindowManager
- Allows PhoneWindowManager to exempt DISMISS_KEYGUARD windows from force hiding
- Allows PhoneWindowManager to dismiss Keyguard while occluded

Bug: 27410215
Change-Id: I3ad490b64a5805b6f3888a9f37fcfbdd0116395e
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
1d3967506e1cb3843d3bf758187ebc42d1c83485 26-Jul-2016 Nick Desaulniers <ndesaulniers@google.com> framework: SystemUI: add tracing to Keyguard

Helps trace the phone unlock path.

Bug: 29693568
Bug: 30279403
Change-Id: I290864f525e3d08f1efc6b9fc603172a5d139ea0
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
f1cdf9558d2b7f8fe5b8cf3d309b48809f04403b 06-Apr-2016 Jorim Jaggi <jjaggi@google.com> Don't lock device when double tapping

Bug: 24265204
Change-Id: Ia19e956def454604ed3f3e3e9815fc1872ef649a
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
25b4d4b280c6aa07656328bd9dd90977781d00e1 12-Aug-2015 Jorim Jaggi <jjaggi@google.com> Require strong authentication after a timeout

Bug: 21594472
Change-Id: Iab169d4fa2e4ad134f8c8579654b28e96b5b1385
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
0d210f6395072db4a4c53d4cb8fac4a59a3965b4 10-Jul-2015 Jorim Jaggi <jjaggi@google.com> Animation for touch, wake and unlock

- Add callback to inform SysUI when the screen has been unblocked
and turned on.
- Cleanup inconsistent messaging about device interactive/screen on
and off.
- Add callbacks to inform SysUI about screen states
- Implement a quick fade for the scrim after touch, wake, and unlock.
First, start with a black scrim on top of everything, and then fade
it out.
- Make sure we play the normal unlock animation when device is pulsing
- Override navigation bar animations for touch, wake and unlock: Fade
in the same manner as the scrim.

Bug: 22571198
Bug: 21855614
Change-Id: I8ff08d72cced1e0f03c78d71ff710d8a4f6b848c
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
740452e8756cb7f51ed185c3906a5ca61b8fcdd4 09-Jul-2015 Jorim Jaggi <jjaggi@google.com> Touch, wake and unlock

- Add onFingerprintAcquired, so Keyguard can grab a wakelock to prevent
the device from sleeping.
- If we get a successful fingerprint, wake the device up, immediately
dismiss the keyguard and tell PWM that we kicked off our frame that
will represent the correct state.
- PWM then waits for this frame to be drawn, and then turns on the
screen, which results in unlocking directly to the previsouly
opened app.

Bug: 21855614
Change-Id: I5f43df17fa5e4e9c6a6392eef4a4590b07df4f96
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
d175b6cfe0b35dfe251cc9315aacb048bf6e54c5 28-May-2015 Jorim Jaggi <jjaggi@google.com> Cleanup Keyguard handling when turning off screen

Before, Keyguard was shown whenever PhoneWindowManager went to sleep.
However, this was too early on some devices, and too late on others.
Now, the callbacks are split up into two phases: startedGoingToSleep
and finishedGoingToSleep. In the first callback, we decide what to
do and play the lock sound if necessary. In the second callback, we
actually show the Keyguard, or reset its state necessary, so it
doesn't interfere with the screen off animation.

Bug: 17929748
Bug: 20782303
Change-Id: I4c4406595b07b7589d64f380cd3fa96bed3d20ee
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
ab954546dc49e1070ed8513efbddc8954b529c23 11-Oct-2014 Jim Miller <jaggies@google.com> Make IKeyguardService interface asynchronous

Add a state callback so lockscreen reports back whenever its state
relevant for PhoneWindowManager changed, instead of synchronously
calling into SysUI which can lead to deadlocks. Directly use
LockPatternUtils for isSecure, and optimize the number of calls to
this method to optimize layout performance.

Bug: 17677097
Change-Id: I5d491fc8884d4f84d9562626b9ea0d5eaa5166fc
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
96afb6f03b87359c3bcb96c2bdb8aadc7b1c3c37 15-Nov-2014 Jim Miller <jaggies@google.com> Fix deadlock caused by synchronous setOccluded() method in keyguard

This fixes a deadlock where WindowManagerService can call into
KeyguardService.setOccluded() while holding a lock. As soon as keyguard
receives the call, it immediately needs to check permission and calls
back into the system service which is waiting for the lock to be
released. Boom!

The fix does a quick check of the calling UID and allows the call
if coming from the System UID, thus bypassing the need for a
binder call to checkPermission().

Fixes bug 18362246

Change-Id: Iab4be8a885f330fb2a62ee7e3579966e1447f8b0
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
8de4311c51229efbe2f2d0afbf298982c5cadd96 11-Aug-2014 Jorim Jaggi <jjaggi@google.com> Lockscreen launch animations

- Get rid of ActivityManager.dismissKeyguardOnNextActivity, which was
used for two different things: Dismiss keyguard from somewhere else
(not really necessary anymore), wait to actually dismiss keyguard
after the window behind is drawn. Instead, introduce
keyguardWaitingForActivityDrawn(), and change the semantics where
necessary.
- Make wallpaper_close_enter consistent with task_open_enter and the
Keyguard launch animation.
- Close the panel even on lockscreen when launching a notification.
- Block notification shade updates during the collapsing motion so
notification don't play the disappear animation immediately after
having launched a notification.

Bug: 15991916

Change-Id: I133c177b84e926c87c1a404ba93d633593fec3ab
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
e29b2dbc762bfa66093d76f5a65f55328d8753c9 30-May-2014 Jorim Jaggi <jjaggi@google.com> Fade scrim in unlock animation.

This also introduces a startTime which gets sent from window manager
to SystemUI, which tells when the animation should start, to allow
for a more synchronized animation with fading out the scrim and
fading in the activity behind.

Bug: 15163546
Change-Id: I16212b1ef9eb76f1f98734da1d14fc5b7e626937
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
0d674623facfbd3e9c520d2be4ed98977b92a1a2 21-May-2014 Jorim Jaggi <jjaggi@google.com> Add methods to coordinate unlock animation.

Introduce IWindowManager.keyguardGoingAway to notify that Keyguard
wants to dismiss it self. This method starts the state machine in
WindowAnimator which animates in the activity behind the keyguard.
Animating out the keyguard is done by the StatusBar/Keyguard
software when it receives the startKeyguardExitAnimation() callback.

Bug: 14118756

Change-Id: Id3b8f41189410bad808b4892fbec74245e59efce
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
3beffdf4a0081a97356f46d50e10541b1a213153 03-Apr-2014 Jorim Jaggi <jjaggi@google.com> Fix crash when taking screenshot.

Start SystemUI services only if needed.

Bug: 13635952
Change-Id: I76a5e3333ed8f51a267e33b2cf172d6c775ac914
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
cff0acb6b1eea23c3f44a078a0a5e81c11faea35 31-Mar-2014 Jorim Jaggi <jjaggi@google.com> Wait for Keyguard to be drawn after boot.

The old logic with waiting for the Keyguard to be drawn assumed that
it is in an own window, and just checked for the visibility. This is
no longer possible as the Keyguard is in the status bar, and the status
bar might have been drawn without the Keyguard. So we have to wait
explicitely until Keyguard told PhoneWindowManager that it has now been
drawn and we can turn on the screen.

In addition, the starting logic of SystemUI is moved into
SystemUIApplication such the we can make sure that the status bar
already exists when the callbacks from PhoneWindowManager reach
KeyguardService. This simplifies the logic a lot.

Bug: 13635952
Change-Id: Ifd6ba795647edcf3501641e39052e4d04bc826fb
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
5cf17879a31b7b78c09ec50b727f921840dcf783 26-Mar-2014 Jorim Jaggi <jjaggi@google.com> Reuse KeyguardViewMediator for new Keyguard implementation.

This change reuses KeyguardViewMediator for the new Keyguard
implementation in status bar. KeyguardViewManager is replaced by
StatusBarKeyguardManager which handles adding the view, setting the
state etc. StatusBarWindowManager is introduced to managed the window
of the status bar, which has the logic of both the old Keyguard window
and the old status bar window. In the current implementation, Keyguard
gets displayed like it would be in the bouncer state, but that's likely
to change in the future. Also, setHidden in IKeyguardService is also
renamed to setOccluded, as the word hidden interferes with the
terminology when dismissing the Keyguard.

Bug: 13635952
Change-Id: I1c5d5a49d810d8532089f464cb2efe35e577f517
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java
380ecb81db52a9d0197ca969951d07b91c20d2b9 14-Mar-2014 Jorim Jaggi <jjaggi@google.com> Make Keyguard a library and make StatusBar the new Keyguard.

This change achieves a couple of things:
- Let Keyguard be a library, so we can use it in SystemUI.
- Introduce FLAG_KEYGUARD for windows and deprecate TYPE_KEYGUARD. Make
all the TYPE_KEYGUARD behaviour dependant on the flag.
- Implement a new KeyguardService in SystemUI, and bind that service
from PhoneWindowManager.
- Introduce BaseStatusBar.setKeyguardState and inflate
KeyguardSimpleHostView there and use FLAG_KEYGUARD for the window, such
that the status bar window essentially gets the Keyguard.

Bug: 13635952
Change-Id: I059d80d8b9b9818a778ab685f4672ea2694def63
/frameworks/base/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java