Commit Graph

61 Commits

Author SHA1 Message Date
Selim Cinek
2854019979 Fixed the usage of the menu key to unlock
The menu key was not unlocking the keyguard properly
and didn't hide the notifications.

Bug: 26539875
Change-Id: I9dd89767f00d29c15d1d4e840a1ab22d59e58c8d
2016-02-22 15:57:02 -08:00
Jorim Jaggi
25b4d4b280 Require strong authentication after a timeout
Bug: 21594472
Change-Id: Iab169d4fa2e4ad134f8c8579654b28e96b5b1385
2015-08-12 16:39:56 -07:00
Selim Cinek
cfafe4ea6f Indicating fingerprint error messages on the bouncer now
Also ensure that error messages are surfaced when the screen
comes on such that the user knows why his fingerprint is not
working.

Bug: 22035466
Bug: 22524101
Change-Id: I00b0e833cdb8a3475545ba75b8cb7bf7a419dfd4
2015-08-11 16:37:54 -07:00
Selim Cinek
3122fa85b2 Added a message to the keyguard bouncer
A message can now be shown on the keyguard bouncer
explaining why the bouncer is being shown.

Bug: 21618072
Change-Id: I25aea9cc242abbf6a133fb42cc4407f5c2f3f688
2015-06-18 15:30:36 -07:00
Jorim Jaggi
d944986fbd Fix API review: Camera prewarm
Let the intent receiver of a camea launch intent declare a prewarm
service instead of sending broadcasts.

Bug: 21347653
Change-Id: I11e31aad4f788ad90eb46a661b819d3e808ddb51
2015-06-01 18:01:20 -07:00
Adrian Roos
d6aa6cb0cc Remove LockPatternUtils.getCurrentUser()
Bug: 18931518
Change-Id: I177eefe466c12217cf64c85b872f71bc23c7bf05
2015-04-28 11:49:04 -07:00
Adrian Roos
94e15a59b7 Allow dismissing Keyguard from TrustAgentService
Bug: 19900313
Change-Id: I44d13ee6fe65070327076e73a3ed96c94acdc108
2015-04-17 01:12:30 +00:00
John Spurlock
08c7116ab9 Remove unused imports in frameworks/base.
Change-Id: I031443de83f93eb57a98863001826671b18f3b17
2015-02-28 14:47:49 -05:00
Andrew Lee
72b46d429c Reset keyguard/bouncer on "return to call".
+ Add callback, to be invoked when EmergencyButton is clicked when
inside a call.
+ Route callback to the KeyguardViewMediator, to invoke
resetStateLocked() to reset the bouncer.

Bug: 18977746
Change-Id: I4733ccfb6809c4610184a33a28ba38ecf255231f
2015-02-02 12:30:59 -08:00
Jorim Jaggi
10c85c76a9 Merge commit '83eaf6cc' into HEAD
Change-Id: I13918ee8116ac17169910a1414de913bcc2d184e
2015-02-02 20:45:32 +01:00
Adrian Roos
230635efe7 Purge biometric weak and keyguard widgets
Bug: 18931518
Change-Id: I5da41908b1d6895a69f981e139f2d268327fafcd
2015-01-07 22:10:35 +01:00
Jorim Jaggi
6b88cdfba7 Remove dead code #8: Remove old keyguard "bouncer"
Also squashes KeyguardViewBase and KeyguardSimpleHostView into
KeyguardHostView, uses a constant for the user activity timeout
(custom value no longer used).

Change-Id: I919b7d3de1dd1590b20e0f14f0e193ee2b3dc21e
2015-01-07 15:20:37 +01:00
Jorim Jaggi
5c60b64704 Remove dead code #1: Remove unused Keyguard classes
Change-Id: I08327dd23072b4e793be40635f105ce0aa5f6f6f
2015-01-07 15:00:04 +01:00
RoboErik
939f04f971 Remove dead code from keyguard
This only removes the pieces that are directly dependent on
IRemoteControlDisplay. There is still code for the transport controls
UI that could be removed.

Change-Id: I0ee4921fcba9aee8d8efcd16e2198a2000147416
2014-06-19 23:02:57 +00:00
Adrian Roos
e5afd24f46 Only send notification activity intents after dismissing Keyguard
Defers delivery of contentIntent and activity actions until
the lockscreen has been dismissed, so that activities don't
launch beneath it.

Bug: 14491010
Change-Id: Ic8c61c18a75d4f0da2d82a0a8a038a5d98ebb71f
2014-05-21 20:24:17 +02:00
Andres Morales
62b25a5bf0 Revert "Adding INfcUnlockSettings and NfcUnlock interface class."
This will be re-added as a Trustlet in a subsequent CL.

This reverts commit 38a7ed05f8.

Change-Id: I5aa36df42a7751f165b4ef184e0cda57e5568b59
2014-05-20 16:59:34 +00:00
Jorim Jaggi
a005f1b685 Show enter PIN/PUK before notifications on Keyguard.
Change-Id: Icec12a43487fe76378e10bb8aaaa163c53b69075
2014-04-16 21:15:59 +02:00
Jorim Jaggi
5cf17879a3 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
2014-03-31 20:58:31 +02:00
Jorim Jaggi
380ecb81db 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
2014-03-28 22:35:03 +01:00
Jim Miller
5837a15df1 am 1d6c2573: am aebe3b6c: am abde0aaa: am 375ff2c4: am 2598fbd7: Merge "Attempt to fix a bug where SIM progress dialog gets stuck." into klp-dev
* commit '1d6c2573d4b2824511354d651d7350df327f454f':
  Attempt to fix a bug where SIM progress dialog gets stuck.
2014-03-20 16:10:04 +00:00
Jim Miller
6f29b30dc2 Attempt to fix a bug where SIM progress dialog gets stuck.
The fix makes sure onPause() is called when KeyguardHostView
is removed.

Bug 10323372

Change-Id: I20dd1f68c270adbd4582f2cd8ed9b03964b4477c
2014-03-13 00:13:14 +00:00
Kenny Guy
1a447535ce Hide managed profiles from user switchers.
Hide managed profiles from lockscreen user switcher on tablets.
Hide managed profiles from power menu user switcher on phones.
Add flag to enable multi user ui turned off by default.

Change-Id: I4c69a6f7b0f39c249fc85fd940318df1ddab073f
2014-02-24 19:24:42 +00:00
Jim Miller
ba7d94b8f3 Fix problem where input wasn't being requested
This fixes a bug where input wasn't being enabled when the security
method changed.  The solution is to propagate changes back to the parent

Add missing copyright header to simplified keyguard view.

Bugs 12135931, 12879769

Change-Id: I0fc6cf8ef3b628c96a045797a5b9cdecd3a1007a
2014-02-06 16:13:42 -08:00
Jim Miller
5e612cf078 Add KeyguardSimpleHostView and make it the default
This adds a simplified KeyguardHostView that's intended to
be used as an overlay or dialog for asking the user's
credentials.

Bug 12135931

Change-Id: Iecede0715d671e88024e7bb77e7432cd1c7ec356
2014-02-06 16:13:42 -08:00
Jim Miller
3eb4971b67 Move launch, verification and menu logic to base class
- Add simplified KeyguardHostView
- Move common functions to KeyguardViewBase.java
- Create new KeyguardSimpleHostView class for simplified view
implementation.

Bug 12135931

Change-Id: I8d6b0a61c36a0c7ceb87da4da54b1dfbed0054ff
2014-02-06 16:13:41 -08:00
Jim Miller
7751ff6cd0 Move majority of security-related logic from KeyguardHostView
to KeyguardSecurityContainer.

This removes and/or simplifies the interface between modules to
allow easier separation of KeyguardSecurityContainer into a stand-alone
component.

Bug 12135931
2014-01-27 15:21:39 -08:00
Andres Morales
38a7ed05f8 Adding INfcUnlockSettings and NfcUnlock interface class.
Change-Id: Ie55a5d4bb58c2944952fc84cce32d3573a3a1a22
2013-12-09 14:41:01 -08:00
Jim Miller
81190befe6 Fix issue where transport control shows up off-screen on tablets
This fix selects the current page ealier in the reconstruction
of Keyguard to ensure the layout bounds of KeyguardWidgetPager are
correct by the time it does the initial layout.

In addition this change postpones selecting the transport page if
the transport was just added.

Fixes bug 11287144

Change-Id: I92ba8bb5e13c166d13fbaa26881f5034d5ab2104
2013-11-05 21:14:18 -08:00
Jim Miller
4d20ed3f26 Revert "Fix dodgy states of keyguard transport controls"
This reverts commit bdb5ac7ddb.

Change-Id: Iea8db9a590a2a3b65d941b2918345eb27f690240
2013-10-19 01:00:16 +00:00
Adam Powell
bdb5ac7ddb Fix dodgy states of keyguard transport controls
If a layout has already been requested when we want to show the
correct widget pane, post the event for later and immediately return.

This works because PagedView has some interesting ideas about
maintaining a consistent state. It will attempt to recalculate the
current page position during measurement, but thanks to a reliance on
this measurement to establish scrolling boundaries that scrollTo uses
for clamping plus other code that depends on the idea that it can add
a new widget pane view and immediately scroll to it, this attempt to
scroll fails if the target page was added and measurement is not yet
complete. This patch ensures we don't hit these edge cases in a few
known ways.

While this ends things in the correct state, it predictably has a few
visual artifacts. Situations where things would completely fail
before, positioning pages incorrectly or fading out wrong pages now
will briefly flash and fade the widget frames or in some cases will
visibly animate from the starting page to the correct one. We should
address these issues in a future release.

Bug 11217368
Bug 9760604

Change-Id: I989d03b5bfdd5b6403a6b67a8aae7585ca0c8ae0
2013-10-15 18:10:41 -07:00
Jim Miller
9ccf123ee0 Delay all widget additions in keyguard until after boot completes
Fixes bug 11013685

Change-Id: Ic74b2d5cf80f090b0168d384f65c15b0d256c74c
2013-10-10 22:49:40 -07:00
Daniel Sandler
26b7bf6e3c Properly size KG camera animation for translucent bars.
The KGHV now plumbs insets information down into the camera
so that it can leave space for the navigation bar if the KG
window happens to extend underneath it. The camera widget
preview must therefore be rendered to fit the size of the
smaller inset content area, which means there's now a hole
at the bottom; we fill this bottom area during animation
with a fake navigation bar: a black view occupying the area
underneath the real navbar.

Bug: 11048015
Change-Id: Ia23b62e155686ad9f17a25ccc14f6c97b53dafea
2013-10-10 16:18:28 -04:00
Jim Miller
c23ee579ac Merge "Disable dragging the challenge area when there are no widgets" into klp-dev 2013-10-08 18:38:26 +00:00
Jim Miller
5547b55bae Disable dragging the challenge area when there are no widgets
Fixes bug 10784855

Change-Id: Id1d752eb4bdc64a9d09fd478087d16dc17682c77
2013-10-07 19:20:56 -07:00
Jim Miller
9c993bd6ba Disable camera and search from some security screens.
This disables showing the camera and search buttons in the
navbar while SIM, PUK and Account security screens are showing.

Fixes bug 10991981

Change-Id: Ic64adc079685948f8c1114dbdefa42a671948350
2013-10-07 17:13:45 -07:00
Adam Powell
f8895248e2 Add a scrubber to keyguard; layout tweaks
Switch KeyguardTransportControlView over to using RemoteController
instead of the internal API.

Guard transition animations behind a flag until we can work out some
intermittent issues.

Change-Id: Ie9f41339ce6e735c5d524db88437672f2c9859e2
2013-10-03 14:55:18 -07:00
Chet Haase
7fc27ea451 Make onClickHandler in KeyguardHostView a weak reference
The strong reference OnClickHandler caused bitmaps in keyguard to be
referenced when keyguard was not visible. This change makes the click
handler a static class with a weak reference to the hostView instance,
allowing those bitmaps to get collected and shaving ~845k off of the
heap size when the keyguard isn't showing.

Issue #10918599 SystemUI should have a round of Svelting

Change-Id: I69de8659ac14c1a4723d082dd3cd394d8b6097f1
2013-10-01 16:37:17 -07:00
John Reck
da7af95d81 Remove old animation
Bug: 10918599
 Shaves ~1.5MB off of Keyguard creation from usage of an
 old-style Alpha animator that would create a draw cache
 The animation is unseen due to screen timings, so simply remove it
 Also adds a bit of de-jank to the non-svelte case by avoiding
 a potential GC_FOR_ALLOC

Change-Id: Id49742d95988f670a44305e4033e7a850d20e675
2013-10-01 14:52:03 -07:00
Jim Miller
461b345886 Disable keyguard widgets on low memory devices
Fixes bug 10784493

Change-Id: I6271ea94f6832bb061ba9f64efea460d28ee5695
2013-09-29 14:00:01 -07:00
Adam Powell
43a372f38a Keyguard transport controls: fullscreen art
When the transport controls are active, set the relevant art as a
fullscreen background for the keyguard.

Change-Id: I1e8a87f242153a2a2c5bf94dbd15f0fd3e07dde3
2013-09-27 18:47:52 -07:00
John Spurlock
e5b14ee128 Merge "Restore scrim views to former place in view hierarchy." into klp-dev 2013-09-27 14:27:38 +00:00
John Spurlock
256ae67b9a Restore scrim views to former place in view hierarchy.
By enabling KeyguardHostView to extend into the full screen area
and updating custom measure/layout in the Challenge layouts
appropriately.

Bug:10939005
Change-Id: I06fb187c4100cf0f2e48b1206cc4450afa4567dd
2013-09-27 10:19:12 -04:00
Jim Miller
138f25d756 Accessibility improvements in keyguard
- add accessibility descriptions to camera and search light
- add new onClick handler to simplify launching search and camera
- plumb camera launch through KeyguardService interface

Fixes bug 10914360

Change-Id: Ic85eda9afadba7381be78b477180f7204030cd17
2013-09-25 15:01:19 -07:00
John Spurlock
257f283b0e Introduce transparent bars to the keyguard.
Driven by a new framework config bool. Tested on all layouts,
but disabled by default.  Can be enabled with a config overlay.

(Sliding/MultiPane)ChallengeLayout have custom measure/layout
logic that peeks at the root view's padding (!).  So we must keep
the root view's padding = system window insets. However, we need
the scrims + the fullscreen camera widget preview to use the entire
display size if the bars are transparent.

So the approach is to maintain the root view's
(KeyguardViewManager$ViewManagerHost) padding as before via
setFitsSystemWindows(true) but allow non KeyguardHostViews to
extend into the padding if bars are transparent via a custom
measure/draw on the root view.

KeyguardHostView background + challege scrims moved up to the
root view.

Also:
- Remove logspam line for fixed bug.

- Fix status bar staying opaque on interaction on secure keyguard.

Known issues:
- Nav bar blip dismissing global actions, keyguard app widget picker
bars are opaque.  Both will use the new inherit flag once it exists.

- Emergency dialer layout dance, will be fixed in the phone project.

Bug:10606085
Change-Id: I2648b4ee9a54a67324ce9dcbab976ad4da4bbcfa
2013-09-23 15:59:15 -04:00
Jim Miller
caf24fc2c4 Add camera affordance to navigation bar on phones
This adds a camera button on phones that can be used to show
and launch the camera.

- Minor refactoring of touch event dispatch in PagedView.
- Disables usability hints when keyguard loads.
- Only add a touch handler for camera icon once during layout.
- Update after review.
- Updated with latest UX camera and camera background assets

Change-Id: I09cd5cb0e501fd0f4659bea96d00c92b07f805c4
2013-09-19 17:14:59 -07:00
Sandeep Siddhartha
65a6ba3478 Remove HotwordRecognition APIs
- and its usage from Keyguard

Bug: 10708010
Change-Id: Ic4a695a1d0e9312706a3b4ff01e59e2567b6ad9c
2013-09-11 11:01:13 -07:00
Sandeep Siddhartha
1f0ef2cc33 Move public consts to HotwordRecognitionService
- The HotwordRecognitionService is the only public component of
  Hotword recognition allowing others to implement hotword recognition
- The client API is not available for use by all, hence the consts need
  to be moved to the service class.
- Ideally we'd have retained the public consts in the client side API
  (HotwordRecognizer)

Change-Id: Ibd0d1c0d0514ec4e8f7c284e22c5fa6b7ef3df26
2013-09-06 18:12:11 -07:00
Sandeep Siddhartha
4473f02003 Use the permission for hotword recognition
- Also fixes an issue with PendingIntents being launched from the
  lockscreen taking a lot of time

Change-Id: I91b44328ba68b225454322b90a5b19a0d4c9a772
2013-09-06 12:48:51 -07:00
Sandeep Siddhartha
eec83dcadd Move the hotword code to KeyguardHostView
- Try hotword detection on Pattern unlock screen as well - disabled in
  this CL
- Explicitly stop hotword detection when starting the assist intent.

Change-Id: I3d22a9029abf888431113b86e4410ea9e9866c57
2013-09-04 17:47:34 -07:00
Jim Miller
2ec4ff435b Attempt to fix missing clock bug
This attempts to fix a bug where the clock wasn't being added
when widgets are disabled.

Fixes bug 10473246

Change-Id: I63f4c04778da938b6fa1bc74de3fa0463412da0f
2013-08-28 17:41:16 -07:00