272 Commits

Author SHA1 Message Date
Baligh Uddin
5c3144b1d5 Import translations. DO NOT MERGE
Change-Id: Ib5f0a7090f91814f9c5df7da7e96fe492cef100a
Auto-generated-cl: translation import
2013-10-07 09:26:23 -07:00
John Spurlock
bd95740648 Transparent system ui flags -> Translucent WM flags.
Migrate View.SYSTEM_UI_FLAG_TRANSPARENT_(STATUS/NAVIGATION) to
WindowManager.LayoutParams.FLAG_TRANSLUCENT_(STATUS|NAVIGATION).

Add associated public attrs for both new window flags:
  windowTranslucentStatus
  windowTranslucentNavigation

Introduce convenient four new themes that set translucent decor:
  Theme.Holo.NoActionBar.TranslucentDecor
  Theme.Holo.Light.NoActionBar.TranslucentDecor
  Theme.DeviceDefault.NoActionBar.TranslucentDecor
  Theme.DeviceDefault.Light.NoActionBar.TranslucentDecor

Update PhoneWindowManager mechanism to plumb these values back to
SystemUI to drive bar mode state.

The new translucent flags come from the top fullscreen window, not
the focused window, so translucency does not change when opening
dialogs.

Imply some window-level system-ui visibility if one or both of these
new flags are present, specifically:
  FLAG_TRANSLUCENT_STATUS implies LAYOUT_STABLE, LAYOUT_FULLSCREEN
  FLAG_TRANSLUCENT_NAVIGATION implies LAYOUT STABLE, LAYOUT_HIDE_NAV

Rename all associated variable & resource names to use the term
translucent instead of transparent. (Retain the term semi-transparent
for the transient bar style).

Recents activity allowed to inherit translucent decor state via the
new PRIVATE_FLAG_INHERIT_TRANSLUCENT_DECOR.  Compensating changes
to use the full screen area more appropriately.

Update keyguard to use new WM flags.

Update docs and various api artifacts.

Sanity-check fixes:
 - Toasts and alerts given stable layout.
 - Suppress nu-gradient when in transient (hidey) mode.
 - New translucent flags use top-fullscreen window, dialogs don't clear.

Bug:10674960
Bug:11062108
Bug:10987178
Bug:10786445
Bug:10781433
Change-Id: If667a55bea4cf5e008549524b9899197fab55ebe
2013-10-06 16:03:53 -04:00
Jean-Michel Trivi
f108cdd9ee Also rely on enabled notification listeners for RemoteController registration
Registration of a RemoteController may succeed only if:
 - the caller has the MEDIA_CONTENT_CONTROL permission,
 - or if the RemoteController.OnClientUpdateListener it
   registers if one of the enabled notification listeners.

For using the "enabled notification listener" functionality,
 the CL involved:
 - making OnClientUpdateListener an interface so a 3rd-party
   application may have its implementation extend
   NotificationListenerService, which is required for a
   listener to be enabled by the user.
 - add the concept of "enabled" status in an
   IRemoteControlDisplay, so a RemoteController (which
   encapsulates the IRemoteControlDisplay implementation)
   may be registered, but later temporarily disabled by
   the user, as a result of a user action in the security
   settings, or a user switch.
 - making MediaFocusControl, the component tied to
   AudioService, monitor changes in enabled notification
   listeners, and act upon enable/disable changes.

Bug 8209392

Change-Id: Ia8dfa2156c65668b2b0d4ae92048005912652d84
2013-10-04 17:50:44 -07:00
Chet Haase
845d9192d7 Merge "Enable transitions in lockscreen media controller" into klp-dev 2013-10-04 23:26:37 +00:00
Chet Haase
aa00613322 Enable transitions in lockscreen media controller
Media controller now fades between different states. The code for
doing this was already there, but this CL enables them and changes
the behavior of transition's OnPreDrawListener to do the right thing.

Also, this CL fixes a bug in ChangeText found while testing this change.

Issue #11083563 ChangeText transition crashes when KEEP transition type used

Change-Id: I5e04c28e1b5faac017b0a4e49734d9faa7fe79cd
2013-10-04 14:05:48 -07:00
Baligh Uddin
c170c22cc0 Import translations. DO NOT MERGE
Change-Id: I1227decae162536bf90ffb753308cb4018e0538e
Auto-generated-cl: translation import
2013-10-04 11:08:41 -07:00
Jim Miller
6001379bff Fix bug where dismiss() was being called from the wrong thread
One-way calls to binder do not guarantee the call will always
occur on the originating thread.  This fixes a rare case where
keyguard would crash due to dismiss() being called from the wrong
thread.

Fixes bug 11065316

Change-Id: Iddd281964231a152e3342e21b6b88527eab94caf
2013-10-03 18:31:34 -07:00
Adam Powell
d6239b9229 Merge "Add a scrubber to keyguard; layout tweaks" into klp-dev 2013-10-03 22:35:35 +00:00
Jim Miller
8990e28b5a Merge "Update default keyguard clock to new UX specification" into klp-dev 2013-10-03 22:32:25 +00:00
Jim Miller
b0da1e70ad Update default keyguard clock to new UX specification
Change-Id: I0d5f302d8bd5922acd45cfe1de42cb76cebc02e5
2013-10-03 15:19:21 -07:00
Jim Miller
19264fcdd0 Keyguard customization for mcc262-mnc07
Fixes bug 10518893

Change-Id: I6122df28954ad2ed062f7258d11e202b02122eea
2013-10-03 15:09:54 -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
Baligh Uddin
06b3280ddb Import translations. DO NOT MERGE
Change-Id: Ibd657855a970ecb2055f7adf4ca57c0d4825a8ee
Auto-generated-cl: translation import
2013-10-02 11:16:48 -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
Baligh Uddin
8e1a481368 Merge "Import translations. DO NOT MERGE" into klp-dev 2013-10-01 02:40:41 +00:00
Michael Wright
02cefe27f3 Merge "Move slide to unlock circle up" into klp-dev 2013-10-01 01:46:53 +00:00
Michael Wright
f40ec0f00f Move slide to unlock circle up
Because HH is such a tall device, we need to move the circle up in
order to put it in the correct physical location.

Bug: 10900855
Change-Id: Idf90839e19f89784a96d110dd897bdacb58cb616
2013-09-30 18:38:36 -07:00
John Reck
288180c244 Merge "Avoid accidentally using software layers" into klp-dev 2013-09-30 23:10:49 +00:00
John Reck
0a4079ec0c Avoid accidentally using software layers
Bug: 10918599
 Shaves ~1-2MB of transient memory usage from setting a hardware layer
 on a view that's not hardware accelerated, resulting in it falling
 back to a software layer which allocates a bitmap
 Also a bit of dejanking as a result of not hitting GC_FOR_ALLOC

Change-Id: Iff00d383fca710147a48f31c7eee2b728b8412dc
2013-09-30 15:41:49 -07:00
Amith Yamasani
f55cf7fcd9 Merge "Adjust padding for keyguard pin entry keys" into klp-dev 2013-09-30 21:31:54 +00:00
Amith Yamasani
e64318bda0 Adjust padding for keyguard pin entry keys
Increase padding on the left to more visually center the text within the touch target

Bug: 10074982
Change-Id: I2c622b0edd427a4b15f2f3b25a0a124853ed2367
2013-09-30 13:38:14 -07:00
Baligh Uddin
d374fc7649 Import translations. DO NOT MERGE
Change-Id: Ib2bedf5a64b306f630e1263fed4a6fa0e8843175
Auto-generated-cl: translation import
2013-09-30 09:32:47 -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
Jim Miller
1ae85153c8 Merge "Fix missing transport in keyguard" into klp-dev 2013-09-28 01:30:21 +00:00
Jim Miller
90873d53fb Fix missing transport in keyguard
Keyguard wasn't re-establishing a connection to the RCD after a
crash.  This results in a missing transport until the session reboots.

Fixes bug 10204949

Change-Id: Ia030eacbcf1e3cfa9ee948c841c95d2040f9c1e0
2013-09-27 18:09:43 -07:00
John Spurlock
d01a1b0473 Merge "Remove unused views when we return to keyguard" into klp-dev 2013-09-27 14:32:38 +00: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
398d7f6186 Merge "Update navbar camera icon and widget background assets in keyguard." into klp-dev 2013-09-26 22:27:15 +00:00
Jim Miller
1de95fb42b Remove unused views when we return to keyguard
This fixes a bug where launching the camera would move
the camera view to the root hierarchy.  In insecure mode, a
subsequent dismiss() comes in and tears down the view hierachy
before the event can be processed, which left the view in the
root hierarchy.

The fix is to remove all children when we reconstruct keyguard.

Fixes bug 10640209

Change-Id: Ia67a93cd219d2b906b6e3bdd04cc355eeffe857e
2013-09-26 15:09:28 -07:00
Mindy Pereira
4faf288254 De-blue the add lock screen widget pressed state
Change-Id: Ie823a20be0a6f78e11cfdc2b2458351957aaec70
2013-09-25 20:35:47 -07:00
Jim Miller
1962e26466 Fix keyguard widget pager accessibility
- announce when widget hovers over drop target
- announce when widget leaves drop target

Fixes bug 10151121

Change-Id: Ia36400f4e8651149590e004b82f66d43c9deaa08
2013-09-25 19:29:02 -07:00
Jim Miller
d4bc325f93 Update navbar camera icon and widget background assets in keyguard.
Change-Id: Ia3c2bcaa67b6f901c823bebf2cb54e592d6eecb3
2013-09-25 19:19:26 -07:00
Jim Miller
04b0840b2e Merge "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" into klp-dev 2013-09-25 22:41:26 +00:00
Jim Miller
3264ec7ab5 Merge "Fit and finish for navbar camera affordance" into klp-dev 2013-09-25 22:04:49 +00: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
Jim Miller
e38c8e28ba Fix accessibility for all-caps items in keyguard
This fixes a bug where TTS on all-caps items doesn't work for
Buttons.  The fix is to use translation (ala. TextView.setAllCaps()),
which just affects rendering and not the original text string.

Fix bug 10912259

Change-Id: Id8cba927819c979fe699353219d45f8b0f9f5aac
2013-09-24 15:54:04 -07:00
Jim Miller
8de9e443d8 Fit and finish for navbar camera affordance
- fix potential event dispatch bug where camera events weren't always propagated
- fix DelegateViewHelper to always propagate events, even when disabled

Bug 10332383

Change-Id: Ie082d3074fc6497ee3633dcc0a51a6b08bcf0037
2013-09-24 14:46:50 -07:00
Jim Miller
89e1fec9af Merge "Fit and finish for navbar camera affordance" into klp-dev 2013-09-24 01:30:59 +00:00
Jim Miller
4780058dd6 Enable RTL support in keyguard
Fixes bug 10799068

Change-Id: I353b135a2f5ea7cc061719414266cb47f1742db3
2013-09-23 17:03:12 -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
f4db8f9973 Fit and finish for navbar camera affordance
- disable search gadget while interacting with camera
- clean up code that deals with warping to track both warp and swap views.
- fade camera and search icon when camera touched
- slide camera view on screen when camera is touched.
- fix fling of camera page to center in view when animation finishes.
- resolve stateful bug between edge swipe and camera button.

Bug 10332383

Change-Id: I8fc38148a01927bc7c228101308c3c4214113047
2013-09-20 20:50:00 -07:00
Jim Miller
3855b99ff0 Fix the build - replace broken assets.
Change-Id: If039dee6d7e663d6abacd5239557d4d0a07fc912
2013-09-19 20:01:56 -07: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
Jean-Michel Trivi
7ddd226e7c RemoteController class to expose IRemoteControlDisplay features
Wrap all the features of IRemoteControlDisplay.aidl in a
 new class, RemoteController, that implements the
 IRemoteControlDisplay interface.

The API functions to expose in the SDK are tagged with
 "CANDIDATE FOR API"

Bug 8209392

Change-Id: I597bcd503ac93e73889c9ae8b47b16c4fcb363bc
2013-09-18 01:47:25 +00:00
Brian Colonna
7fce380216 Fix 10550373: Stopping FUL when emergency dialer opens
Face Unlock wasn't being stopped when the emergency dialer opened,
causing FUL to flash briefly after the emergency dialer appeared.
This was most noticeable on Hammerhead devices.

This change allows EmergencyButton to stop FUL by way of
KeyguardUpdateMonitor.  Note that it must stop FUL immediately rather
than going through a handler.  If going through a handler FUL is not
stopped in time to prevent the issue.

Change-Id: I3985969a19e909e2633d7876a3fb2d34c70e2cc1
2013-09-17 17:33:21 -04:00
Baligh Uddin
5242b4b997 Import translations. DO NOT MERGE
Change-Id: Iebcc32693fe755e3f7e73b255e61f1963e4c15e9
Auto-generated-cl: translation import
2013-09-14 20:06:00 -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