This change makes PhoneStatusBar expand while the lockscreen is
showing. Further, the KeyguardSimpleHostView is shown by
KeyguardBouncer, and the Bouncer is shown whenever the user tries to
unlock the phone (closing the shade).
Bug: 13635952
Change-Id: I4354b7a7937af6e1c93abf16ad6e485376d16bc2
Made the NotificationStackScroller now the default and only shade.
When the notification shade is expanded, the NotificationStackScroller
now also expands revealing the notifications.
Change-Id: If989ed848f684b3ac4e687d9642289db4599553b
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
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
Remove the gesture-based invocation from the notifcation
panel, create a new QS tile to display current state.
Clicking the tile reveals an interstitial dialog for
confirmation of mode changes.
Change-Id: I6760ce3f097d5dcfd0af5177287dbf4ff632b47e
- New global zen mode setting with three values:
ZEN_MODE_OFF, ZEN_MODE_LIMITED, ZEN_MODE_FULL
- Status bar icon (on lhs) when in _LIMITED / _FULL
- Rules are hardcoded for now:
_LIMITED = intercept all notifications except calls/alarms
_FULL = intercept everything
- UI affordance in shade to set mode
- Only one exit condition: "Until you delete this"
- Intercepted notifications:
- appear darker in the shade
- do not cause sound/vibration
- do not fire fullScreenIntents
- do not contribute an icon to the status bar
Change-Id: Ic36c95982b483432006bf9dab102a31370382aa9
remove shadow
quick hack to open shade from HUN
over status bar instead of under and below it
dismiss by pushing up
tablets: shadow remains on left, right, and bottom
Bug: 13208692
Change-Id: Ie3abb762fb1388be68353c7e3111fe4708ab8110
In this implementation, DISABLE_NOTIFICATION_TICKER (which was never
really used on its own and can be safely subsumed by
DISABLE_NOTIFICATION_ICONS) is now DISABLE_PRIVATE_NOTIFICATIONS;
when this SystemUI bit is set by the keyguard, SystemUI knows to switch
its presentation into "public" mode, in which
VISIBILITY_PRIVATE notifications are replaced with their
publicVersion's contentView (or a placeholder view,
synthesized by SystemUI, that leaks no additional
information about the notification). VISIBILITY_SECRET
notifications are suppressed altogether in this mode.
This behavior is enabled but not activated by default. To
turn it on, run:
$ adb shell settings put secure lock_screen_allow_notifications 1
and restart SystemUI.
Change-Id: Id660bef7737580e16a83f60567c22b53ee81c602
Specifically, non-public resources only referenced by SystemUI
and nowhere else in frameworks or system apps (via @*android:)
Remove orphan resources found during the process.
Change-Id: I005514ff1ce52e1622849bc01cd825b09fa55842
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
- 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
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
Text not all uppercase
Reduce spacing between icon and text
Break the string in the middle.
Bug: 10785095
Change-Id: If85da55452b06d77d2ae1c40f3d63431c2ae2a9a
Use a transition-drawable to crossfade between the gradient and
solid color backgrounds, avoiding custom onDraw.
Rename colors to their final names. Since both bars now receive the
gradient treatment, centralize in base BarTransitions.
Bug:10602521
Change-Id: Id094fa1767eabab88a3709d6026c23858c83fb5b
Wifi + RSSI now have activity in / activity out indicators
wired up to information coming from NetworkController.
Bug: 10634208
Change-Id: I3cf29dc905eeaeb4aea8e7df4fe46e70645e0013
Remove icons no longer referenced in source or layout files.
Some icons are referenced in obsolete layouts, remove those
as well.
Bug:10344949
Change-Id: Ifc2e4c01534499b687cebd3e32db61e9c7a92e4a
Each of our existing assets is slightly incorrect in some
way: inconsistent pixel jumps from one percent to the next,
inconsistent color change, etc. The only way to get it
perfectly right is to draw it programmatically.
Bug: 8504254 // inconsistent color change threshold
-- previously --
Bug: 3136046 // in Gingerbread
Bug: 3387973 // Honeycomb
Bug: 5070948 // ICS
Change-Id: I6a3e7409ecec55e10328541ecb1e9d54aebdbe96
new shouldInterrupt logic: screen on, not locked, not dreaming, and
priority above HIGH and noisy, or has fullscreen intent
draft of API allowing devs to give hints about head up display
reuse inflateViews()
add an expand helper to the heads up space
move some things into Entry for reuse
don't allow touches in first second
delay decay if touched
make decay time a resource
add a custom viewgroup for notification rows to get view management
out of the NotificationData class.
Change-Id: I36464f110cfa0dabc3f35db7db6c35c27e8ee2ba
1. re-name intruder alerts to heads up notifications
2. use interrupt for the verb form, instead of intrude
3. new policy: no full screen, high priority, screen on, not locked or dreaming
4. controlled by global setting, with an observer
5. only content view for now, expandable is a todo
to turn it on:
adb shell settings put global heads_up_enabled 1
calendar notifications (not pop-up) work well.
Change-Id: I253418c217d0a5cf81dc2fa001f4bad90fafcce5
The chief motivation here is to allow two lines of text when
necessary. So much refactoring over so small a thing, but
the result is satisfying: most quick settings tiles do not
need their own layouts. Additionally, tiles with odd-shaped
icons (I'm looking at you, alien potato mode) no longer fall
off the grid.
It should be possible to further reduce the complexity of
quick settings, but for now this will suffice.
Bug: 7216734 // vertical alignment issues
Bug: 7216868 // wrap text in QS tiles
Bug: 7365911 // NPE in some tiles
Change-Id: I0c6ef275e44f745dfac52c2a7303072ae48e3873