diff options
| author | 2023-08-30 08:16:07 +0000 | |
|---|---|---|
| committer | 2023-08-30 08:16:07 +0000 | |
| commit | 81bd24a3b2f440d6666e666ecde9dc6a5ff99167 (patch) | |
| tree | 98b1818b66d065841c68b858285d992d001718b7 | |
| parent | e44e61f195fe9c490f8238eee6ad2736cd4905d6 (diff) | |
| parent | c25fb50db94791be961bfaa96208eac336564a51 (diff) | |
Merge "Get FoldingFeatures only when needed" into main
| -rw-r--r-- | libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java index 896fe61b5611..d894487fafb6 100644 --- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java +++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java @@ -651,7 +651,8 @@ class SplitPresenter extends JetpackTaskFragmentOrganizer { if (minDimensionsPair == null) { return splitAttributes; } - final FoldingFeature foldingFeature = getFoldingFeature(taskProperties); + final FoldingFeature foldingFeature = getFoldingFeatureForHingeType( + taskProperties, splitAttributes); final Configuration taskConfiguration = taskProperties.getConfiguration(); final Rect primaryBounds = getPrimaryBounds(taskConfiguration, splitAttributes, foldingFeature); @@ -726,7 +727,8 @@ class SplitPresenter extends JetpackTaskFragmentOrganizer { Rect getRelBoundsForPosition(@Position int position, @NonNull TaskProperties taskProperties, @NonNull SplitAttributes splitAttributes) { final Configuration taskConfiguration = taskProperties.getConfiguration(); - final FoldingFeature foldingFeature = getFoldingFeature(taskProperties); + final FoldingFeature foldingFeature = getFoldingFeatureForHingeType( + taskProperties, splitAttributes); if (!shouldShowSplit(splitAttributes)) { return new Rect(); } @@ -933,6 +935,17 @@ class SplitPresenter extends JetpackTaskFragmentOrganizer { } @Nullable + private FoldingFeature getFoldingFeatureForHingeType( + @NonNull TaskProperties taskProperties, + @NonNull SplitAttributes splitAttributes) { + SplitType splitType = splitAttributes.getSplitType(); + if (!(splitType instanceof HingeSplitType)) { + return null; + } + return getFoldingFeature(taskProperties); + } + + @Nullable @VisibleForTesting FoldingFeature getFoldingFeature(@NonNull TaskProperties taskProperties) { final int displayId = taskProperties.getDisplayId(); |