summaryrefslogtreecommitdiffstats
path: root/policy
diff options
context:
space:
mode:
authorCraig Mautner <cmautner@google.com>2013-11-06 15:29:00 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2013-11-06 15:29:00 -0800
commit660041f89f8756625d35fb6957e8b60e7fa06f11 (patch)
tree732cb1d654f06f237c8d01b3776c83db4c7dc86f /policy
parent9c5c6fdb1727d9b2952512af958d20e14af33bbd (diff)
parenta2dad41e757b8de097491aedecca80387ba3af09 (diff)
downloadframeworks_base-660041f89f8756625d35fb6957e8b60e7fa06f11.zip
frameworks_base-660041f89f8756625d35fb6957e8b60e7fa06f11.tar.gz
frameworks_base-660041f89f8756625d35fb6957e8b60e7fa06f11.tar.bz2
am a2dad41e: am 8ed10cff: am def34eb7: Merge "Ensure bar window state is SHOWING after rotate if visible." into klp-dev
* commit 'a2dad41e757b8de097491aedecca80387ba3af09': Ensure bar window state is SHOWING after rotate if visible.
Diffstat (limited to 'policy')
-rw-r--r--policy/src/com/android/internal/policy/impl/BarController.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/policy/src/com/android/internal/policy/impl/BarController.java b/policy/src/com/android/internal/policy/impl/BarController.java
index 8d97fc8..c38ad04 100644
--- a/policy/src/com/android/internal/policy/impl/BarController.java
+++ b/policy/src/com/android/internal/policy/impl/BarController.java
@@ -129,8 +129,8 @@ public class BarController {
final boolean wasAnim = mWin.isAnimatingLw();
final boolean change = show ? mWin.showLw(true) : mWin.hideLw(true);
final int state = computeStateLw(wasVis, wasAnim, mWin, change);
- updateStateLw(state);
- return change;
+ final boolean stateChanged = updateStateLw(state);
+ return change || stateChanged;
}
private int computeStateLw(boolean wasVis, boolean wasAnim, WindowState win, boolean change) {
@@ -139,6 +139,8 @@ public class BarController {
final boolean anim = win.isAnimatingLw();
if (mState == StatusBarManager.WINDOW_STATE_HIDING && !change && !vis) {
return StatusBarManager.WINDOW_STATE_HIDDEN;
+ } else if (mState == StatusBarManager.WINDOW_STATE_HIDDEN && vis) {
+ return StatusBarManager.WINDOW_STATE_SHOWING;
} else if (change) {
if (wasVis && vis && !wasAnim && anim) {
return StatusBarManager.WINDOW_STATE_HIDING;
@@ -150,7 +152,7 @@ public class BarController {
return mState;
}
- private void updateStateLw(final int state) {
+ private boolean updateStateLw(final int state) {
if (state != mState) {
mState = state;
if (DEBUG) Slog.d(mTag, "mState: " + StatusBarManager.windowStateToString(state));
@@ -169,7 +171,9 @@ public class BarController {
}
}
});
+ return true;
}
+ return false;
}
public boolean checkHiddenLw() {