Views requesting lights out mode will cause the navbar to
disappear (this is useful for viewing videos/photos/etc
using every pixel of the screen).
But there's a catch: any user activity at all will cause the
lights to come back on and the navbar to return.
Change-Id: I535ed3ba9ae7fab3282c402be256add765395b6f
Notifications on phones should look much more like Honeycomb
now, including large icon and veto support.
And less crashing.
Bug: 4322305
Change-Id: Ibde6f66fbae1c8d3167085f7b0fd79118485f05c
In Honeycomb we introduced navigation controls in the status
bar, for xlarge devices without physical buttons. What about
phones? The status bar is pretty cramped already, and
besides, it's at the top of the display most of the time,
not at the bottom where your thumb is likely to be.
Enter the navigation bar. It's a new window type that
appears atop almost everything (including the keyguard); the
window manager subtracts its rectangle from the default
visible rectangle of other windows (including the status bar
and notification shade).
However, it behaves (on phones) like the status bar in that
applications that request fullscreen windows can get access
to those pixels. Well, almost; they need cooperation from
the navigation bar implementation to make the navbar
disappear, just like the status bar.
The current SystemUI implementation of the navigation bar on
phones is still rough, but it has the basics:
+ back, home, and menu keys (NB: we're showing menu all the
time right now because checking the api level of the
package owning the top window is currently a poor
indicator of whether the app requires the menu key)
+ it tries to stick to the same physical end of the device,
regardless of device orientation (on a phone, this is
the strip of land closest to the microphone)
Change-Id: Ic613a3351220af0bbfbdef63e1d99cbefd5ed1c2
It now toggles between show/hide for each tap on the home button.
Added new bitmap generation for lighting and halo effect while loading.
Uses new CarouselViewHelper class to manage textures and threading.
Uses a "real view" to render detail text.
Activities can now overload onCreateDescription() to show a
description in Carousel.
Improved startup and resume speed by posting single event to
refresh the activity list.
Change-Id: Id5552da75b9d022d24f599d11358ddababc97006
I think the problem is some kind of Context mismatch because the resource was in the framework but
referencing an app class.
Change-Id: Ia6b37c9c8be5dddc836331859e779cd80dd32596
Line-item veto is there, but allows you to cancel some
notifications you probably shouldn't be canceling. (Should
hide the "X" in those cases.)
No preference given to "sticky" notifications, because
there's no such thing yet.
Notifications are now limited to 4 visible icons, per spec.
The implementation is a total hack for now.
Change-Id: Ibdf433ae94189117f983c510fe5e0cff0bf5c44c
When a FLAG_HIGH_PRIORITY notification is posted and the
foreground activity is immersive, this window will be shown
to the user. It disappears after a while (currently 10s,
which is far too long to be usable but is very handy for
testing) and can be dismissed by a tap.
Artwork is extremely rough; please ignore the aesthetics.
Still TODO:
- sticky alerts for ongoing priority notifications
- tap to launch PendingIntent associated with the
notification
Change-Id: Ief4a98b84cc836d33359bd7d65de9909f5186317
Then, now that StatusBarManagerService is the only thing in that package,
move it up to the regular services package. (I've been waiting for 4 years
to delete that package!)
Change-Id: If5faf44641319fd19e486d1f4e5bc1c6dfcff3ad
Artwork is FPO but serviceable enough. Many hardcoded font
colors & styles were moved to styles.xml where they belong.
AM/PM finally given the old heave-ho (but configurable in
StatusBarPolicy.java).
Notification content remains on a light-gray background for
now (so as not to screw up custom RemoteViews) but status
icons will definitely need across-the-board rework to look
better against a dark background.
(Re-integrated on top of new status bar code.)
Change-Id: Ia180b3c2ba8e23c9a2f50cf46f98f12958022b53