am 93ed9858: am 63c4a718: Merge "Reland "Fixed constant window switching on lock screen..."" into mnc-dev
* commit '93ed98580c151ec28952ec4d72010b24b55a3583': Reland "Fixed constant window switching on lock screen..."
This commit is contained in:
@@ -913,12 +913,13 @@ public interface WindowManagerPolicy {
|
||||
|
||||
/**
|
||||
* Called following layout of all window to apply policy to each window.
|
||||
*
|
||||
*
|
||||
* @param win The window being positioned.
|
||||
* @param attrs The LayoutParams of the window.
|
||||
* @param attrs The LayoutParams of the window.
|
||||
* @param attached For sub-windows, the window it is attached to. Otherwise null.
|
||||
*/
|
||||
public void applyPostLayoutPolicyLw(WindowState win,
|
||||
WindowManager.LayoutParams attrs);
|
||||
WindowManager.LayoutParams attrs, WindowState attached);
|
||||
|
||||
/**
|
||||
* Called following layout of all windows and after policy has been applied
|
||||
|
||||
@@ -4251,7 +4251,8 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
||||
|
||||
/** {@inheritDoc} */
|
||||
@Override
|
||||
public void applyPostLayoutPolicyLw(WindowState win, WindowManager.LayoutParams attrs) {
|
||||
public void applyPostLayoutPolicyLw(WindowState win, WindowManager.LayoutParams attrs,
|
||||
WindowState attached) {
|
||||
if (DEBUG_LAYOUT) Slog.i(TAG, "Win " + win + ": isVisibleOrBehindKeyguardLw="
|
||||
+ win.isVisibleOrBehindKeyguardLw());
|
||||
final int fl = PolicyControl.getWindowFlags(win, attrs);
|
||||
@@ -4296,8 +4297,12 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
||||
}
|
||||
}
|
||||
|
||||
if (appWindow) {
|
||||
final IApplicationToken appToken = win.getAppToken();
|
||||
final IApplicationToken appToken = win.getAppToken();
|
||||
|
||||
// For app windows that are not attached, we decide if all windows in the app they
|
||||
// represent should be hidden or if we should hide the lockscreen. For attached app
|
||||
// windows we defer the decision to the window it is attached to.
|
||||
if (appWindow && attached == null) {
|
||||
if (showWhenLocked) {
|
||||
// Remove any previous windows with the same appToken.
|
||||
mAppsToBeHidden.remove(appToken);
|
||||
|
||||
@@ -9937,7 +9937,7 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
for (i = windows.size() - 1; i >= 0; i--) {
|
||||
WindowState w = windows.get(i);
|
||||
if (w.mHasSurface) {
|
||||
mPolicy.applyPostLayoutPolicyLw(w, w.mAttrs);
|
||||
mPolicy.applyPostLayoutPolicyLw(w, w.mAttrs, w.mAttachedWindow);
|
||||
}
|
||||
}
|
||||
displayContent.pendingLayoutChanges |= mPolicy.finishPostLayoutPolicyLw();
|
||||
|
||||
Reference in New Issue
Block a user