Fix Keyboard over Keyguard when password is set.

Bug: 14842750
Change-Id: Ie7d92ee60191f8083c8ff65aba3754c71e4a5819
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowManager.java
index 8809d18..46a637b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowManager.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowManager.java
@@ -111,7 +111,8 @@
     }
 
     private void applyFocusableFlag(State state) {
-        if (state.isKeyguardShowingAndNotOccluded() && state.keyguardNeedsInput) {
+        if (state.isKeyguardShowingAndNotOccluded() && state.keyguardNeedsInput
+                && state.bouncerShowing) {
             mLp.flags &= ~WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
             mLp.flags &= ~WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM;
         } else if (state.isKeyguardShowingAndNotOccluded() || state.statusBarFocusable) {
@@ -196,6 +197,11 @@
         apply(mCurrentState);
     }
 
+    public void setBouncerShowing(boolean showing) {
+        mCurrentState.bouncerShowing = showing;
+        apply(mCurrentState);
+    }
+
     /**
      * @param state The {@link StatusBarState} of the status bar.
      */
@@ -211,6 +217,7 @@
         boolean statusBarExpanded;
         boolean statusBarFocusable;
         long keyguardUserActivityTimeout;
+        boolean bouncerShowing;
 
         /**
          * The {@link BaseStatusBar} state from the status bar.