diff --git a/res/values/config.xml b/res/values/config.xml index ec239a22b47..7901a4cc17e 100755 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -583,4 +583,7 @@ --> + + 0.5 + diff --git a/src/com/android/settings/activityembedding/ActivityEmbeddingRulesController.java b/src/com/android/settings/activityembedding/ActivityEmbeddingRulesController.java index 84843241504..42e856d14d5 100644 --- a/src/com/android/settings/activityembedding/ActivityEmbeddingRulesController.java +++ b/src/com/android/settings/activityembedding/ActivityEmbeddingRulesController.java @@ -92,7 +92,7 @@ public class ActivityEmbeddingRulesController { clearTop, ActivityEmbeddingUtils.getMinCurrentScreenSplitWidthPx(context), ActivityEmbeddingUtils.getMinSmallestScreenSplitWidthPx(context), - ActivityEmbeddingUtils.SPLIT_RATIO, + ActivityEmbeddingUtils.getSplitRatio(context), LayoutDirection.LOCALE)); } @@ -198,7 +198,7 @@ public class ActivityEmbeddingRulesController { SplitRule.FINISH_ADJACENT, ActivityEmbeddingUtils.getMinCurrentScreenSplitWidthPx(mContext), ActivityEmbeddingUtils.getMinSmallestScreenSplitWidthPx(mContext), - ActivityEmbeddingUtils.SPLIT_RATIO, + ActivityEmbeddingUtils.getSplitRatio(mContext), LayoutDirection.LOCALE); mSplitController.registerRule(placeholderRule); diff --git a/src/com/android/settings/activityembedding/ActivityEmbeddingUtils.java b/src/com/android/settings/activityembedding/ActivityEmbeddingUtils.java index ab999ed8888..38af8d679cf 100644 --- a/src/com/android/settings/activityembedding/ActivityEmbeddingUtils.java +++ b/src/com/android/settings/activityembedding/ActivityEmbeddingUtils.java @@ -24,9 +24,10 @@ import android.util.TypedValue; import androidx.window.embedding.SplitController; +import com.android.settings.R; + /** An util class collecting all common methods for the embedding activity features. */ public class ActivityEmbeddingUtils { - public static final float SPLIT_RATIO = 0.5f; // The smallest value of current width of the window when the split should be used. private static final float MIN_CURRENT_SCREEN_SPLIT_WIDTH_DP = 720f; // The smallest value of the smallest-width (sw) of the window in any rotation when @@ -51,6 +52,14 @@ public class ActivityEmbeddingUtils { TypedValue.COMPLEX_UNIT_DIP, MIN_SMALLEST_SCREEN_SPLIT_WIDTH_DP, dm); } + /** + * Get the ratio to use when splitting windows. This should be a float which describes + * the percentage of the screen which the first window should occupy. + */ + public static float getSplitRatio(Context context) { + return context.getResources().getFloat(R.dimen.config_activity_embed_split_ratio); + } + /** Whether to support embedding activity feature. */ public static boolean isEmbeddingActivityEnabled(Context context) { final boolean isFlagEnabled = FeatureFlagUtils.isEnabled(context,