Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a0ce9274 authored by Craig Mautner's avatar Craig Mautner Committed by Android Git Automerger
Browse files

am 74e19f57: am 6f955df8: am 550b44d1: am f4644189: am 4cf6286c: am 02c7ba73:...

am 74e19f57: am 6f955df8: am 550b44d1: am f4644189: am 4cf6286c: am 02c7ba73: am 41bb0637: am 76e85eec: am 3bc9971d: am 95d6e32b: am 86f9a93e: Merge "Allow FLAG_SHOW_WHEN_LOCKED to apply to dialogs" into jb-mr1-dev

* commit '74e19f57':
  Allow FLAG_SHOW_WHEN_LOCKED to apply to dialogs
parents c5fa9139 74e19f57
Loading
Loading
Loading
Loading
+9 −5
Original line number Diff line number Diff line
@@ -105,6 +105,7 @@ import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashSet;

import static android.view.WindowManager.LayoutParams.*;
import static android.view.WindowManagerPolicy.WindowManagerFuncs.LID_ABSENT;
@@ -381,7 +382,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
    static final Rect mTmpNavigationFrame = new Rect();

    WindowState mTopFullscreenOpaqueWindowState;
    boolean mHideWindowBehindKeyguard;
    HashSet<IApplicationToken> mAppsToBeHidden = new HashSet<IApplicationToken>();
    boolean mTopIsFullscreen;
    boolean mForceStatusBar;
    boolean mForceStatusBarFromKeyguard;
@@ -3366,7 +3367,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
    @Override
    public void beginPostLayoutPolicyLw(int displayWidth, int displayHeight) {
        mTopFullscreenOpaqueWindowState = null;
        mHideWindowBehindKeyguard = false;
        mAppsToBeHidden.clear();
        mForceStatusBar = false;
        mForceStatusBarFromKeyguard = false;
        mForcingShowNavBar = false;
@@ -3416,12 +3417,17 @@ public class PhoneWindowManager implements WindowManagerPolicy {

            final boolean showWhenLocked = (attrs.flags & FLAG_SHOW_WHEN_LOCKED) != 0;
            if (appWindow) {
                if (showWhenLocked) {
                    mAppsToBeHidden.remove(win.getAppToken());
                } else {
                    mAppsToBeHidden.add(win.getAppToken());
                }
                if (attrs.x == 0 && attrs.y == 0
                        && attrs.width == WindowManager.LayoutParams.MATCH_PARENT
                        && attrs.height == WindowManager.LayoutParams.MATCH_PARENT) {
                    if (DEBUG_LAYOUT) Slog.v(TAG, "Fullscreen window: " + win);
                    mTopFullscreenOpaqueWindowState = win;
                    if (!mHideWindowBehindKeyguard) {
                    if (mAppsToBeHidden.isEmpty()) {
                        if (showWhenLocked) {
                            if (DEBUG_LAYOUT) Slog.v(TAG,
                                    "Setting mHideLockScreen to true by win " + win);
@@ -3441,8 +3447,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                    if ((attrs.flags & FLAG_ALLOW_LOCK_WHILE_SCREEN_ON) != 0) {
                        mAllowLockscreenWhenOn = true;
                    }
                } else if (!showWhenLocked) {
                    mHideWindowBehindKeyguard = true;
                }
            }
        }