Merge "Update the split layout while density changed" into udc-dev

This commit is contained in:
Jeff Chang
2023-05-13 03:32:35 +00:00
committed by Android (Google) Code Review
2 changed files with 12 additions and 0 deletions

View File

@@ -717,6 +717,10 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange
return bounds.width() > bounds.height();
}
public boolean isDensityChanged(int densityDpi) {
return mDensity != densityDpi;
}
/**
* Return if this layout is landscape.
*/

View File

@@ -2175,6 +2175,14 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
return;
}
mDisplayLayout.set(mDisplayController.getDisplayLayout(displayId));
if (mSplitLayout != null && mSplitLayout.isDensityChanged(newConfig.densityDpi)
&& mMainStage.isActive()
&& mSplitLayout.updateConfiguration(newConfig)
&& ENABLE_SHELL_TRANSITIONS) {
mSplitLayout.update(null /* t */);
onLayoutSizeChanged(mSplitLayout);
}
}
void updateSurfaces(SurfaceControl.Transaction transaction) {