f25706fc3e169f07a81017ad38dc4501698a5cb3 |
|
08-Nov-2013 |
John Spurlock <jspurlock@google.com> |
Fix improperly hidden status bar. An app lib exposed a possible timing problem, causing the bars to remain hidden after screen rotation during immersive mode. Bug:11440463 Change-Id: I5166bdce78a876bc08b18f8b9a340366fbbbb70a
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|
c23bd80b38bf9c03c1eb51fbde621eb5a6381c14 |
|
06-Nov-2013 |
John Spurlock <jspurlock@google.com> |
Ensure bar window state is SHOWING after rotate if visible. Bug:11544694 Change-Id: Ied56f01a931f33437bdc05d026006cabcdef0149
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|
bd95740648372449a4d5c164d7050eee352d4c24 |
|
03-Oct-2013 |
John Spurlock <jspurlock@google.com> |
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
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|
7edfbca5d00cbc376fda790b50a3fedb9c6070ab |
|
14-Sep-2013 |
John Spurlock <jspurlock@google.com> |
Promote lights-out to a bar transition mode. Move all visual application of the legacy lights-out behind a new mode managed by BarTransitions for better coordination. Remove unused "hidden" state in NavigationBarView. Improve window state (showing/hiding/hidden) calculation, affecting whether or not sysui thinks it should animate. Removes invalid interim mode changes causing needless flashing during some transitions. Consider WINDOW_STATE_HIDING a state in which we ought to animate, since at least part of the window is visible throughout. Make the status/nav bar transition helper classes real boys. Animate KeyButtonView drawing alpha transition, cancel existing animations when resetting to avoid needless and unsightly "recovery". Bug:10746803 Change-Id: Ibd883da9041d071b6a4ff5b42cf96efba7696e9c
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|
d4e6575c4f664e0d42d9306c9762d96533df429e |
|
28-Aug-2013 |
John Spurlock <jspurlock@google.com> |
Ensure IME windows always appear north of the nav bar. Even if the bars are transparent / invisible. Refactor the PSB bar mode override logic to take the IME hint into account. Bars are overriden to opaque when hint is showing. Initialize bar state to showing, fix bug that would mark state as hidden pre-show (on shell restart). Bug:10505132 Bug:9499956 Change-Id: I21e830e90c7e9812b4192ca65c3c0cd7a6b72798
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|
0ec64c65fb7fbfd89556bc33f5caab4ef0937fd4 |
|
26-Aug-2013 |
John Spurlock <jspurlock@google.com> |
Add new logging for system bar window state. And re-enable PhoneStatusBar dump output in bugreports. Bug:10488453 Change-Id: If39b32e82dee59f3c166c5a948d379030da0ea01
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|
b77edbfdab54531023c8bbea7d89b6cefc42096c |
|
22-Aug-2013 |
John Spurlock <jspurlock@google.com> |
Improve transparent bar transitions. 1. Migrate transparent transitions to the new optimized background color animations. 2. Ensure sysui animation transparent -> opaque has enough time to run before window manager crops off the content area. 3. Lose the individual alpha on each status bar icon if the bars are not opaque. Animate the alpha if visible, make sure they play together. 4. Documentation typo fix found in AnimatorSet. Bug:10344949 Change-Id: I615668ce3c552d3df15dbba5cdeeca67549a0220
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|
5b9145bf990a9bbf4fdef1739e61ff8c70ec868f |
|
20-Aug-2013 |
John Spurlock <jspurlock@google.com> |
Improve transient bar transitions. 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
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|
27735a4ba50d42df64eb82acc3f64fa2d68fd505 |
|
14-Aug-2013 |
John Spurlock <jspurlock@google.com> |
Maintain TRANSIENT_*_BAR flags until transient bars hidden. 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
/frameworks/base/policy/src/com/android/internal/policy/impl/BarController.java
|