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

Commit 4c2afcba authored by Felipe Leme's avatar Felipe Leme
Browse files

Created framework resource for autofill_max_visible_datasets.

So it can be customized in a per-device basis...

Test: atest CtsAutoFillServiceTestCases
Bug: 69796626

Change-Id: I1dd617b7ae658dbff898ff5c9c0ee3fbf195a929
parent 52bc5f2a
Loading
Loading
Loading
Loading
+3 −0
Original line number Original line Diff line number Diff line
@@ -643,6 +643,9 @@
    -->
    -->
    <dimen name="autofill_save_icon_max_size">300dp</dimen>
    <dimen name="autofill_save_icon_max_size">300dp</dimen>


    <!-- Maximum number of datasets that are visible in the UX picker without scrolling -->
    <integer name="autofill_max_visible_datasets">3</integer>

    <!-- Size of a slice shortcut view -->
    <!-- Size of a slice shortcut view -->
    <dimen name="slice_shortcut_size">56dp</dimen>
    <dimen name="slice_shortcut_size">56dp</dimen>
    <!-- Size of action icons in a slice -->
    <!-- Size of action icons in a slice -->
+2 −1
Original line number Original line Diff line number Diff line
@@ -3030,12 +3030,12 @@
  <java-symbol type="layout" name="autofill_dataset_picker_fullscreen"/>
  <java-symbol type="layout" name="autofill_dataset_picker_fullscreen"/>
  <java-symbol type="layout" name="autofill_dataset_picker_header_footer"/>
  <java-symbol type="layout" name="autofill_dataset_picker_header_footer"/>
  <java-symbol type="layout" name="autofill_dataset_picker_header_footer_fullscreen"/>
  <java-symbol type="layout" name="autofill_dataset_picker_header_footer_fullscreen"/>
  <java-symbol type="id" name="autofill" />
  <java-symbol type="id" name="autofill_dataset_container"/>
  <java-symbol type="id" name="autofill_dataset_container"/>
  <java-symbol type="id" name="autofill_dataset_footer"/>
  <java-symbol type="id" name="autofill_dataset_footer"/>
  <java-symbol type="id" name="autofill_dataset_header"/>
  <java-symbol type="id" name="autofill_dataset_header"/>
  <java-symbol type="id" name="autofill_dataset_list"/>
  <java-symbol type="id" name="autofill_dataset_list"/>
  <java-symbol type="id" name="autofill_dataset_picker"/>
  <java-symbol type="id" name="autofill_dataset_picker"/>
  <java-symbol type="id" name="autofill" />
  <java-symbol type="id" name="autofill_save_custom_subtitle" />
  <java-symbol type="id" name="autofill_save_custom_subtitle" />
  <java-symbol type="id" name="autofill_save_icon" />
  <java-symbol type="id" name="autofill_save_icon" />
  <java-symbol type="id" name="autofill_save_no" />
  <java-symbol type="id" name="autofill_save_no" />
@@ -3065,6 +3065,7 @@
  <java-symbol type="dimen" name="autofill_dataset_picker_max_height"/>
  <java-symbol type="dimen" name="autofill_dataset_picker_max_height"/>
  <java-symbol type="dimen" name="autofill_save_custom_subtitle_max_height"/>
  <java-symbol type="dimen" name="autofill_save_custom_subtitle_max_height"/>
  <java-symbol type="dimen" name="autofill_save_icon_max_size"/>
  <java-symbol type="dimen" name="autofill_save_icon_max_size"/>
  <java-symbol type="integer" name="autofill_max_visible_datasets" />


  <java-symbol type="dimen" name="notification_big_picture_max_height"/>
  <java-symbol type="dimen" name="notification_big_picture_max_height"/>
  <java-symbol type="dimen" name="notification_big_picture_max_width"/>
  <java-symbol type="dimen" name="notification_big_picture_max_width"/>
+0 −1
Original line number Original line Diff line number Diff line
@@ -81,7 +81,6 @@ import com.android.internal.util.Preconditions;
import com.android.server.FgThread;
import com.android.server.FgThread;
import com.android.server.LocalServices;
import com.android.server.LocalServices;
import com.android.server.SystemService;
import com.android.server.SystemService;
import com.android.server.autofill.AutofillManagerService.PackageCompatState;
import com.android.server.autofill.ui.AutoFillUI;
import com.android.server.autofill.ui.AutoFillUI;


import java.io.FileDescriptor;
import java.io.FileDescriptor;
+17 −5
Original line number Original line Diff line number Diff line
@@ -19,6 +19,7 @@ import static com.android.server.autofill.Helper.paramsToString;
import static com.android.server.autofill.Helper.sDebug;
import static com.android.server.autofill.Helper.sDebug;
import static com.android.server.autofill.Helper.sFullScreenMode;
import static com.android.server.autofill.Helper.sFullScreenMode;
import static com.android.server.autofill.Helper.sVerbose;
import static com.android.server.autofill.Helper.sVerbose;
import static com.android.server.autofill.Helper.sVisibleDatasetsMaxCount;


import android.annotation.AttrRes;
import android.annotation.AttrRes;
import android.annotation.NonNull;
import android.annotation.NonNull;
@@ -60,8 +61,6 @@ import com.android.internal.R;
import com.android.server.UiThread;
import com.android.server.UiThread;
import com.android.server.autofill.Helper;
import com.android.server.autofill.Helper;


import static com.android.server.autofill.Helper.sVisibleDatasetsMaxCount;

import java.io.PrintWriter;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Collections;
@@ -131,6 +130,7 @@ final class FillUi {
    private @Nullable AnnounceFilterResult mAnnounceFilterResult;
    private @Nullable AnnounceFilterResult mAnnounceFilterResult;


    private final boolean mFullScreen;
    private final boolean mFullScreen;
    private final int mVisibleDatasetsMaxCount;
    private int mContentWidth;
    private int mContentWidth;
    private int mContentHeight;
    private int mContentHeight;


@@ -191,6 +191,16 @@ final class FillUi {
            }
            }
        }
        }


        if (sVisibleDatasetsMaxCount > 0) {
            mVisibleDatasetsMaxCount = sVisibleDatasetsMaxCount;
            if (sVerbose) {
                Slog.v(TAG, "overriding maximum visible datasets to " + mVisibleDatasetsMaxCount);
            }
        } else {
            mVisibleDatasetsMaxCount = mContext.getResources()
                    .getInteger(com.android.internal.R.integer.autofill_max_visible_datasets);
        }

        final RemoteViews.OnClickHandler interceptionHandler = new RemoteViews.OnClickHandler() {
        final RemoteViews.OnClickHandler interceptionHandler = new RemoteViews.OnClickHandler() {
            @Override
            @Override
            public boolean onClickHandler(View view, PendingIntent pendingIntent,
            public boolean onClickHandler(View view, PendingIntent pendingIntent,
@@ -247,7 +257,7 @@ final class FillUi {
            final int datasetCount = response.getDatasets().size();
            final int datasetCount = response.getDatasets().size();
            if (sVerbose) {
            if (sVerbose) {
                Slog.v(TAG, "Number datasets: " + datasetCount + " max visible: "
                Slog.v(TAG, "Number datasets: " + datasetCount + " max visible: "
                        + sVisibleDatasetsMaxCount);
                        + mVisibleDatasetsMaxCount);
            }
            }


            RemoteViews.OnClickHandler clickBlocker = null;
            RemoteViews.OnClickHandler clickBlocker = null;
@@ -386,7 +396,7 @@ final class FillUi {
                    }
                    }
                    requestShowFillUi();
                    requestShowFillUi();
                }
                }
                if (mAdapter.getCount() > sVisibleDatasetsMaxCount) {
                if (mAdapter.getCount() > mVisibleDatasetsMaxCount) {
                    mListView.setVerticalScrollBarEnabled(true);
                    mListView.setVerticalScrollBarEnabled(true);
                    mListView.onVisibilityAggregated(true);
                    mListView.onVisibilityAggregated(true);
                } else {
                } else {
@@ -492,7 +502,7 @@ final class FillUi {
                }
                }
            } else {
            } else {
                changed |= updateWidth(view, maxSize);
                changed |= updateWidth(view, maxSize);
                if (i < sVisibleDatasetsMaxCount) {
                if (i < mVisibleDatasetsMaxCount) {
                    changed |= updateHeight(view, maxSize);
                    changed |= updateHeight(view, maxSize);
                }
                }
            }
            }
@@ -723,6 +733,8 @@ final class FillUi {
    public void dump(PrintWriter pw, String prefix) {
    public void dump(PrintWriter pw, String prefix) {
        pw.print(prefix); pw.print("mCallback: "); pw.println(mCallback != null);
        pw.print(prefix); pw.print("mCallback: "); pw.println(mCallback != null);
        pw.print(prefix); pw.print("mFullScreen: "); pw.println(mFullScreen);
        pw.print(prefix); pw.print("mFullScreen: "); pw.println(mFullScreen);
        pw.print(prefix); pw.print("mVisibleDatasetsMaxCount: "); pw.println(
                mVisibleDatasetsMaxCount);
        if (mHeader != null) {
        if (mHeader != null) {
            pw.print(prefix); pw.print("mHeader: "); pw.println(mHeader);
            pw.print(prefix); pw.print("mHeader: "); pw.println(mHeader);
        }
        }