Merge "Created framework resource for autofill_max_visible_datasets." into pi-dev
diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml
index 7ff96fa..0581856 100644
--- a/core/res/res/values/dimens.xml
+++ b/core/res/res/values/dimens.xml
@@ -643,6 +643,9 @@
-->
<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 -->
<dimen name="slice_shortcut_size">56dp</dimen>
<!-- Size of action icons in a slice -->
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index c73a7cb..354880c 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -3032,12 +3032,12 @@
<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_fullscreen"/>
+ <java-symbol type="id" name="autofill" />
<java-symbol type="id" name="autofill_dataset_container"/>
<java-symbol type="id" name="autofill_dataset_footer"/>
<java-symbol type="id" name="autofill_dataset_header"/>
<java-symbol type="id" name="autofill_dataset_list"/>
<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_icon" />
<java-symbol type="id" name="autofill_save_no" />
@@ -3067,6 +3067,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="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_width"/>
diff --git a/services/autofill/java/com/android/server/autofill/AutofillManagerService.java b/services/autofill/java/com/android/server/autofill/AutofillManagerService.java
index 9c421c6..d4ecd8b 100644
--- a/services/autofill/java/com/android/server/autofill/AutofillManagerService.java
+++ b/services/autofill/java/com/android/server/autofill/AutofillManagerService.java
@@ -81,7 +81,6 @@
import com.android.server.FgThread;
import com.android.server.LocalServices;
import com.android.server.SystemService;
-import com.android.server.autofill.AutofillManagerService.PackageCompatState;
import com.android.server.autofill.ui.AutoFillUI;
import java.io.FileDescriptor;
diff --git a/services/autofill/java/com/android/server/autofill/ui/FillUi.java b/services/autofill/java/com/android/server/autofill/ui/FillUi.java
index 25d0d5c..7c0671f 100644
--- a/services/autofill/java/com/android/server/autofill/ui/FillUi.java
+++ b/services/autofill/java/com/android/server/autofill/ui/FillUi.java
@@ -19,6 +19,7 @@
import static com.android.server.autofill.Helper.sDebug;
import static com.android.server.autofill.Helper.sFullScreenMode;
import static com.android.server.autofill.Helper.sVerbose;
+import static com.android.server.autofill.Helper.sVisibleDatasetsMaxCount;
import android.annotation.AttrRes;
import android.annotation.NonNull;
@@ -60,8 +61,6 @@
import com.android.server.UiThread;
import com.android.server.autofill.Helper;
-import static com.android.server.autofill.Helper.sVisibleDatasetsMaxCount;
-
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Collections;
@@ -131,6 +130,7 @@
private @Nullable AnnounceFilterResult mAnnounceFilterResult;
private final boolean mFullScreen;
+ private final int mVisibleDatasetsMaxCount;
private int mContentWidth;
private int mContentHeight;
@@ -191,6 +191,16 @@
}
}
+ 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() {
@Override
public boolean onClickHandler(View view, PendingIntent pendingIntent,
@@ -247,7 +257,7 @@
final int datasetCount = response.getDatasets().size();
if (sVerbose) {
Slog.v(TAG, "Number datasets: " + datasetCount + " max visible: "
- + sVisibleDatasetsMaxCount);
+ + mVisibleDatasetsMaxCount);
}
RemoteViews.OnClickHandler clickBlocker = null;
@@ -386,7 +396,7 @@
}
requestShowFillUi();
}
- if (mAdapter.getCount() > sVisibleDatasetsMaxCount) {
+ if (mAdapter.getCount() > mVisibleDatasetsMaxCount) {
mListView.setVerticalScrollBarEnabled(true);
mListView.onVisibilityAggregated(true);
} else {
@@ -492,7 +502,7 @@
}
} else {
changed |= updateWidth(view, maxSize);
- if (i < sVisibleDatasetsMaxCount) {
+ if (i < mVisibleDatasetsMaxCount) {
changed |= updateHeight(view, maxSize);
}
}
@@ -723,6 +733,8 @@
public void dump(PrintWriter pw, String prefix) {
pw.print(prefix); pw.print("mCallback: "); pw.println(mCallback != null);
pw.print(prefix); pw.print("mFullScreen: "); pw.println(mFullScreen);
+ pw.print(prefix); pw.print("mVisibleDatasetsMaxCount: "); pw.println(
+ mVisibleDatasetsMaxCount);
if (mHeader != null) {
pw.print(prefix); pw.print("mHeader: "); pw.println(mHeader);
}