Merge "Use parent window to evaluate show-to-all-users." into jb-mr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
e13ae64850
@@ -1038,18 +1038,26 @@ final class WindowState implements WindowManagerPolicy.WindowState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
boolean isHiddenFromUserLocked() {
|
boolean isHiddenFromUserLocked() {
|
||||||
// Save some cycles by not calling getDisplayInfo unless it is an application
|
// Attached windows are evaluated based on the window that they are attached to.
|
||||||
// window intended for all users.
|
WindowState win = this;
|
||||||
if (mAttrs.type < WindowManager.LayoutParams.FIRST_SYSTEM_WINDOW
|
while (win.mAttachedWindow != null) {
|
||||||
&& mAppToken != null && mAppToken.showWhenLocked) {
|
win = win.mAttachedWindow;
|
||||||
final DisplayInfo displayInfo = mDisplayContent.getDisplayInfo();
|
}
|
||||||
if (isFullscreen(displayInfo.appWidth, displayInfo.appHeight)) {
|
if (win.mAttrs.type < WindowManager.LayoutParams.FIRST_SYSTEM_WINDOW
|
||||||
|
&& win.mAppToken != null && win.mAppToken.showWhenLocked) {
|
||||||
|
// Save some cycles by not calling getDisplayInfo unless it is an application
|
||||||
|
// window intended for all users.
|
||||||
|
final DisplayInfo displayInfo = win.mDisplayContent.getDisplayInfo();
|
||||||
|
if (win.mFrame.left <= 0 && win.mFrame.top <= 0
|
||||||
|
&& win.mFrame.right >= displayInfo.appWidth
|
||||||
|
&& win.mFrame.bottom >= displayInfo.appHeight) {
|
||||||
// Is a fullscreen window, like the clock alarm. Show to everyone.
|
// Is a fullscreen window, like the clock alarm. Show to everyone.
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return mShowToOwnerOnly && UserHandle.getUserId(mOwnerUid) != mService.mCurrentUserId;
|
return win.mShowToOwnerOnly
|
||||||
|
&& UserHandle.getUserId(win.mOwnerUid) != mService.mCurrentUserId;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void applyInsets(Region outRegion, Rect frame, Rect inset) {
|
private static void applyInsets(Region outRegion, Rect frame, Rect inset) {
|
||||||
|
|||||||
Reference in New Issue
Block a user