Merge "Revert "Apply FLAG_SHOW_WHEN_LOCKED within tasks.""
This commit is contained in:
committed by
Android (Google) Code Review
commit
296f1a9130
@@ -124,8 +124,6 @@ public interface WindowManagerPolicy {
|
|||||||
* to prepareAddWindow() until removeWindow().
|
* to prepareAddWindow() until removeWindow().
|
||||||
*/
|
*/
|
||||||
public interface WindowState {
|
public interface WindowState {
|
||||||
public final static int UNKNOWN_TASK_ID = -1;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return the uid of the app that owns this window.
|
* Return the uid of the app that owns this window.
|
||||||
*/
|
*/
|
||||||
@@ -274,7 +272,7 @@ public interface WindowManagerPolicy {
|
|||||||
* Get the layer at which this window's surface will be Z-ordered.
|
* Get the layer at which this window's surface will be Z-ordered.
|
||||||
*/
|
*/
|
||||||
public int getSurfaceLayer();
|
public int getSurfaceLayer();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return the token for the application (actually activity) that owns
|
* Return the token for the application (actually activity) that owns
|
||||||
* this window. May return null for system windows.
|
* this window. May return null for system windows.
|
||||||
@@ -283,11 +281,6 @@ public interface WindowManagerPolicy {
|
|||||||
*/
|
*/
|
||||||
public IApplicationToken getAppToken();
|
public IApplicationToken getAppToken();
|
||||||
|
|
||||||
/**
|
|
||||||
* Return the taskId of the task that owns this window.
|
|
||||||
*/
|
|
||||||
public int getTaskId();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return true if, at any point, the application token associated with
|
* Return true if, at any point, the application token associated with
|
||||||
* this window has actually displayed any windows. This is most useful
|
* this window has actually displayed any windows. This is most useful
|
||||||
|
|||||||
@@ -106,7 +106,6 @@ import java.io.File;
|
|||||||
import java.io.FileReader;
|
import java.io.FileReader;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
import java.util.HashSet;
|
|
||||||
|
|
||||||
import static android.view.WindowManager.LayoutParams.*;
|
import static android.view.WindowManager.LayoutParams.*;
|
||||||
import static android.view.WindowManagerPolicy.WindowManagerFuncs.LID_ABSENT;
|
import static android.view.WindowManagerPolicy.WindowManagerFuncs.LID_ABSENT;
|
||||||
@@ -375,7 +374,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
static final Rect mTmpNavigationFrame = new Rect();
|
static final Rect mTmpNavigationFrame = new Rect();
|
||||||
|
|
||||||
WindowState mTopFullscreenOpaqueWindowState;
|
WindowState mTopFullscreenOpaqueWindowState;
|
||||||
HashSet<Integer> mTasksToBeHidden = new HashSet<Integer>();
|
boolean mHideWindowBehindKeyguard;
|
||||||
boolean mTopIsFullscreen;
|
boolean mTopIsFullscreen;
|
||||||
boolean mForceStatusBar;
|
boolean mForceStatusBar;
|
||||||
boolean mForceStatusBarFromKeyguard;
|
boolean mForceStatusBarFromKeyguard;
|
||||||
@@ -3367,7 +3366,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
@Override
|
@Override
|
||||||
public void beginPostLayoutPolicyLw(int displayWidth, int displayHeight) {
|
public void beginPostLayoutPolicyLw(int displayWidth, int displayHeight) {
|
||||||
mTopFullscreenOpaqueWindowState = null;
|
mTopFullscreenOpaqueWindowState = null;
|
||||||
mTasksToBeHidden.clear();
|
mHideWindowBehindKeyguard = false;
|
||||||
mForceStatusBar = false;
|
mForceStatusBar = false;
|
||||||
mForceStatusBarFromKeyguard = false;
|
mForceStatusBarFromKeyguard = false;
|
||||||
mForcingShowNavBar = false;
|
mForcingShowNavBar = false;
|
||||||
@@ -3418,18 +3417,12 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
|
|
||||||
final boolean showWhenLocked = (fl & FLAG_SHOW_WHEN_LOCKED) != 0;
|
final boolean showWhenLocked = (fl & FLAG_SHOW_WHEN_LOCKED) != 0;
|
||||||
if (appWindow) {
|
if (appWindow) {
|
||||||
final int taskId = win.getTaskId();
|
|
||||||
if (taskId != WindowState.UNKNOWN_TASK_ID && showWhenLocked) {
|
|
||||||
mTasksToBeHidden.remove(taskId);
|
|
||||||
} else {
|
|
||||||
mTasksToBeHidden.add(taskId);
|
|
||||||
}
|
|
||||||
if (attrs.x == 0 && attrs.y == 0
|
if (attrs.x == 0 && attrs.y == 0
|
||||||
&& attrs.width == WindowManager.LayoutParams.MATCH_PARENT
|
&& attrs.width == WindowManager.LayoutParams.MATCH_PARENT
|
||||||
&& attrs.height == WindowManager.LayoutParams.MATCH_PARENT) {
|
&& attrs.height == WindowManager.LayoutParams.MATCH_PARENT) {
|
||||||
if (DEBUG_LAYOUT) Slog.v(TAG, "Fullscreen window: " + win);
|
if (DEBUG_LAYOUT) Slog.v(TAG, "Fullscreen window: " + win);
|
||||||
mTopFullscreenOpaqueWindowState = win;
|
mTopFullscreenOpaqueWindowState = win;
|
||||||
if (mTasksToBeHidden.isEmpty()) {
|
if (!mHideWindowBehindKeyguard) {
|
||||||
if (showWhenLocked) {
|
if (showWhenLocked) {
|
||||||
if (DEBUG_LAYOUT) Slog.v(TAG,
|
if (DEBUG_LAYOUT) Slog.v(TAG,
|
||||||
"Setting mHideLockScreen to true by win " + win);
|
"Setting mHideLockScreen to true by win " + win);
|
||||||
@@ -3449,6 +3442,8 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
if ((fl & FLAG_ALLOW_LOCK_WHILE_SCREEN_ON) != 0) {
|
if ((fl & FLAG_ALLOW_LOCK_WHILE_SCREEN_ON) != 0) {
|
||||||
mAllowLockscreenWhenOn = true;
|
mAllowLockscreenWhenOn = true;
|
||||||
}
|
}
|
||||||
|
} else if (!showWhenLocked) {
|
||||||
|
mHideWindowBehindKeyguard = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -709,11 +709,6 @@ final class WindowState implements WindowManagerPolicy.WindowState {
|
|||||||
return mAppToken != null ? mAppToken.appToken : null;
|
return mAppToken != null ? mAppToken.appToken : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getTaskId() {
|
|
||||||
return mAppToken != null ? mAppToken.groupId : UNKNOWN_TASK_ID;
|
|
||||||
}
|
|
||||||
|
|
||||||
boolean setInsetsChanged() {
|
boolean setInsetsChanged() {
|
||||||
mOverscanInsetsChanged |= !mLastOverscanInsets.equals(mOverscanInsets);
|
mOverscanInsetsChanged |= !mLastOverscanInsets.equals(mOverscanInsets);
|
||||||
mContentInsetsChanged |= !mLastContentInsets.equals(mContentInsets);
|
mContentInsetsChanged |= !mLastContentInsets.equals(mContentInsets);
|
||||||
|
|||||||
Reference in New Issue
Block a user