1. If app clears transient flag w/ a gesture, the touch-outside
listener would always win, causing an unsightly hide + immediate
reshow. Instead, give the app some time to clear the flag, then
perform a smooth transition in place.
2. When the transient bars are hidden, we do not know ahead of time
which background will be used on reshow (if transient bars are
revealed, the background is semi-transparent, if transient bars
are cleared, the background is opaque). Window manager is responsible
for showing windows, but sysui is responsible for setting the view
background. Therefore, we need some level of coordination between
the two in this case. Introduce two new non-public sysui flags
that represent the window manager's request to reshow the hidden
bars, but do not reshow until sysui acknowledges (by clearing the flag).
This gives sysui whatever time is necessary to prepare itself for
reshow, avoiding unsightly blip from opaque -> transparent during
the enter animation.
3. When both system bars are hidden, any low-profile changes are
moot. Avoid unsightly low-profile animations during bar reshow
by suppressing the flag in this case.
4. Improve transient bar home -> launcher transition by cancelling
the -> opaque animation. This also fixes a bug where hitting
home from the transient bar would leave you with a semi-transparent
bar in a non-transient state.
Bug:10284800
Change-Id: I238210561d8d5f70c1a517283b986c9105a1ec75
When the transient bars are revealed, smoothly transition the
bar style to opaque to blend with the other panel chrome.
Bug:8706719
Change-Id: I65e5b22e2f91a3db0394c0f571127397ba692f46
On SIM cards that support data but not voice, we currently
display a null signal strength icon, which is confusing because
data is actually working.
Fix this by displaying signal bars as well as showing the
"emergency calls only" or "no service" text which indicates that
voice service is not available.
Bug: 3339315
Change-Id: I7d888721e8dc5e22fefd1b8fa85ba046d46a8fba
Keeping track of pointer down at the window view level is unreliable
since gestures can be stolen.
Bug:10328256
Bug:10226720
Change-Id: I92d72f9eed73f90d2a7c5b30a3f6a4aa6549f799
Also factor common bar-management code into a separate helper
class called BarController instead of continuing to pollute
PhoneWindowManager with duplicate logic.
Bug:10345412
Change-Id: I880900e61daa6c2c53b169e4885e68ebc62ecb6c
Keep track of the pointer id used in driving the gesture. If
it happens to go up mid-gesture (another pointer is still down),
continue the gesture with another down pointer, instead of
abruptly jumping on next ACTION_MOVE.
Bug:10246050
Change-Id: Ia6e59658635fd696974fe415f37811d27da80519
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
During SystemUI startup, populating accessibility for other
views can race with attaching SignalClusterView to its parent.
Bug: 9999664
Change-Id: Iba34a3edba403ae65ff3c37b953d0736068a67b9