Update stack bounds for fullscreen if rotated after updateDisplayInfo
Rotation could change again after updateDisplayInfo is called. We need to set stack bounds even for fullscreen stacks in this case. Otherwise the bounds will be incorrect until it's rotated again. bug: 28611814 Change-Id: I31289524a9ceacaaaa66924e9bf6cbe88fd83f99
This commit is contained in:
@@ -383,12 +383,6 @@ public class TaskStack implements DimLayer.DimLayerUser,
|
||||
}
|
||||
|
||||
private boolean updateBoundsAfterConfigChange() {
|
||||
if (mFullscreen) {
|
||||
// Bounds will already be set correctly when display info is updated in the case of
|
||||
// fullscreen.
|
||||
return false;
|
||||
}
|
||||
|
||||
final int newRotation = getDisplayInfo().rotation;
|
||||
final int newDensity = getDisplayInfo().logicalDensityDpi;
|
||||
|
||||
@@ -397,6 +391,13 @@ public class TaskStack implements DimLayer.DimLayerUser,
|
||||
return false;
|
||||
}
|
||||
|
||||
if (mFullscreen) {
|
||||
// Update stack bounds again since rotation changed since updateDisplayInfo().
|
||||
setBounds(null);
|
||||
// Return false since we don't need the client to resize.
|
||||
return false;
|
||||
}
|
||||
|
||||
final int oldDockSide = mStackId == DOCKED_STACK_ID ? getDockSide() : DOCKED_INVALID;
|
||||
mTmpRect2.set(mBounds);
|
||||
mDisplayContent.rotateBounds(mRotation, newRotation, mTmpRect2);
|
||||
|
||||
Reference in New Issue
Block a user