Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(127)

Unified Diff: ui/android/java/src/org/chromium/ui/autofill/AutofillListAdapter.java

Issue 23314003: Add support for datalist to text input element on Android (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/android/java/src/org/chromium/ui/autofill/AutofillListAdapter.java
diff --git a/ui/android/java/src/org/chromium/ui/autofill/AutofillListAdapter.java b/ui/android/java/src/org/chromium/ui/autofill/AutofillListAdapter.java
index 62203dc70a802f4c7268cb3cbbd920f77e4f1956..f15b91b13db5ba6841e71c621252e276b98e4a99 100644
--- a/ui/android/java/src/org/chromium/ui/autofill/AutofillListAdapter.java
+++ b/ui/android/java/src/org/chromium/ui/autofill/AutofillListAdapter.java
@@ -6,26 +6,36 @@
package org.chromium.ui.autofill;
import android.content.Context;
+import android.content.res.Resources;
+import android.graphics.Color;
+import android.graphics.drawable.LayerDrawable;
import android.text.TextUtils;
-
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import android.widget.AbsListView.LayoutParams;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import org.chromium.ui.R;
+import org.chromium.base.ApiCompatibilityUtils;
+
import java.util.ArrayList;
+import java.util.Set;
/**
* Autofill suggestion adapter for AutofillWindow.
*/
public class AutofillListAdapter extends ArrayAdapter<AutofillSuggestion> {
private Context mContext;
+ private Set<Integer> mSeparators;
- AutofillListAdapter(Context context, ArrayList<AutofillSuggestion> objects) {
+ AutofillListAdapter(Context context,
+ ArrayList<AutofillSuggestion> objects,
+ Set<Integer> separators) {
super(context, R.layout.autofill_text, objects);
+ mSeparators = separators;
mContext = context;
}
@@ -36,10 +46,30 @@ public class AutofillListAdapter extends ArrayAdapter<AutofillSuggestion> {
LayoutInflater inflater =
(LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
layout = inflater.inflate(R.layout.autofill_text, null);
+ ApiCompatibilityUtils.setBackgroundForView(layout, new AutofillDividerDrawable());
}
TextView labelView = (TextView) layout.findViewById(R.id.autofill_label);
labelView.setText(getItem(position).mLabel);
+ AutofillDividerDrawable divider = (AutofillDividerDrawable) layout.getBackground();
+ int height = mContext.getResources().getDimensionPixelSize(R.dimen.autofill_text_height);
+ if (position == 0) {
+ divider.setColor(Color.TRANSPARENT);
+ } else {
+ int dividerHeight = mContext.getResources().getDimensionPixelSize(
+ R.dimen.autofill_text_divider_height);
+ height += dividerHeight;
+ divider.setHeight(dividerHeight);
+ if (mSeparators.contains(position)) {
+ divider.setColor(mContext.getResources().getColor(
+ R.color.autofill_dark_divider_color));
+ } else {
+ divider.setColor(mContext.getResources().getColor(
+ R.color.autofill_divider_color));
+ }
+ }
+ layout.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, height));
+
TextView sublabelView = (TextView) layout.findViewById(R.id.autofill_sublabel);
CharSequence sublabel = getItem(position).mSublabel;
if (TextUtils.isEmpty(sublabel)) {

Powered by Google App Engine
This is Rietveld 408576698