Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9ff02b92 authored by skxu's avatar skxu Committed by Kate Xu
Browse files

Set max dialog width on landscape and foldables

Both fill and save dialogs should have max width=640dp

Bug: 258077031
Test: Tested locally on phone, foldable, and tablet devices; also ran atest CtsAutoFillServiceTestCases on tablet and passed
Change-Id: Icab9c5437fb5b717f800dfc659ba54c0b50132d8
parent 1ec5701a
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -892,6 +892,9 @@
    <!-- The max height of an icon in the Autofill fill dialog. -->
    <dimen name="autofill_dialog_icon_max_height">56dp</dimen>

    <!-- The max width of the Autofill fill dialog. -->
    <dimen name="autofill_dialog_max_width">640dp</dimen>

    <!-- Size of a slice shortcut view -->
    <dimen name="slice_shortcut_size">56dp</dimen>
    <!-- Size of action icons in a slice -->
+1 −0
Original line number Diff line number Diff line
@@ -3655,6 +3655,7 @@
  <java-symbol type="dimen" name="autofill_dataset_picker_max_height"/>
  <java-symbol type="dimen" name="autofill_save_custom_subtitle_max_height"/>
  <java-symbol type="integer" name="autofill_max_visible_datasets" />
  <java-symbol type="dimen" name="autofill_dialog_max_width" />

  <java-symbol type="style" name="Theme.DeviceDefault.Autofill" />
  <java-symbol type="style" name="Theme.DeviceDefault.Light.Autofill" />
+9 −1
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ import android.graphics.drawable.Drawable;
import android.service.autofill.Dataset;
import android.service.autofill.FillResponse;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.util.PluralsMessageFormatter;
import android.util.Slog;
import android.view.ContextThemeWrapper;
@@ -177,7 +178,14 @@ final class DialogFillUi {
        window.setGravity(Gravity.BOTTOM | Gravity.CENTER);
        window.setCloseOnTouchOutside(true);
        final WindowManager.LayoutParams params = window.getAttributes();
        params.width = WindowManager.LayoutParams.MATCH_PARENT;

        DisplayMetrics displayMetrics = new DisplayMetrics();
        window.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
        final int screenWidth = displayMetrics.widthPixels;
        final int maxWidth =
                mContext.getResources().getDimensionPixelSize(R.dimen.autofill_dialog_max_width);
        params.width = Math.min(screenWidth, maxWidth);

        params.accessibilityTitle =
                mContext.getString(R.string.autofill_picker_accessibility_title);
        params.windowAnimations = R.style.AutofillSaveAnimation;
+9 −1
Original line number Diff line number Diff line
@@ -48,6 +48,7 @@ import android.text.TextUtils;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
import android.util.ArraySet;
import android.util.DisplayMetrics;
import android.util.Pair;
import android.util.Slog;
import android.util.SparseArray;
@@ -361,7 +362,14 @@ final class SaveUi {
        window.setGravity(Gravity.BOTTOM | Gravity.CENTER);
        window.setCloseOnTouchOutside(true);
        final WindowManager.LayoutParams params = window.getAttributes();
        params.width = WindowManager.LayoutParams.MATCH_PARENT;

        DisplayMetrics displayMetrics = new DisplayMetrics();
        window.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
        final int screenWidth = displayMetrics.widthPixels;
        final int maxWidth =
                context.getResources().getDimensionPixelSize(R.dimen.autofill_dialog_max_width);
        params.width = Math.min(screenWidth, maxWidth);

        params.accessibilityTitle = context.getString(R.string.autofill_save_accessibility_title);
        params.windowAnimations = R.style.AutofillSaveAnimation;
        params.setTrustedOverlay();