Chromium Code Reviews| Index: ui/android/java/src/org/chromium/ui/DropdownAdapter.java |
| diff --git a/ui/android/java/src/org/chromium/ui/DropdownAdapter.java b/ui/android/java/src/org/chromium/ui/DropdownAdapter.java |
| index 2b561d19bd51378f6a5dea6ba6b8e747a3178cb5..2a562a2849c0f0dd9c23123deacef3df3a9e3176 100644 |
| --- a/ui/android/java/src/org/chromium/ui/DropdownAdapter.java |
| +++ b/ui/android/java/src/org/chromium/ui/DropdownAdapter.java |
| @@ -13,6 +13,7 @@ import android.view.View; |
| import android.view.ViewGroup; |
| import android.widget.AbsListView.LayoutParams; |
| import android.widget.ArrayAdapter; |
| +import android.widget.ImageView; |
| import android.widget.TextView; |
| import org.chromium.base.ApiCompatibilityUtils; |
| @@ -62,18 +63,6 @@ public class DropdownAdapter extends ArrayAdapter<DropdownItem> { |
| ApiCompatibilityUtils.setBackgroundForView(layout, new DropdownDividerDrawable()); |
| } |
| - DropdownItem item = getItem(position); |
| - |
| - TextView labelView = (TextView) layout.findViewById(R.id.dropdown_label); |
| - labelView.setText(item.getLabel()); |
| - |
| - labelView.setEnabled(item.isEnabled()); |
| - if (item.isGroupHeader()) { |
| - labelView.setTypeface(null, Typeface.BOLD); |
| - } else { |
| - labelView.setTypeface(null, Typeface.NORMAL); |
| - } |
| - |
| DropdownDividerDrawable divider = (DropdownDividerDrawable) layout.getBackground(); |
| int height = mContext.getResources().getDimensionPixelSize(R.dimen.dropdown_item_height); |
| if (position == 0) { |
| @@ -93,7 +82,19 @@ public class DropdownAdapter extends ArrayAdapter<DropdownItem> { |
| } |
| layout.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, height)); |
| - TextView sublabelView = (TextView) layout.findViewById(R.id.dropdown_sublabel); |
| + View labelLayout = layout.findViewById(R.id.dropdown_menu_text); |
| + DropdownItem item = getItem(position); |
| + TextView labelView = (TextView) labelLayout.findViewById(R.id.dropdown_label); |
|
aurimas (slooooooooow)
2014/08/28 21:06:04
Do you need labelLayout here? Can't you just call
Evan Stade
2014/08/29 17:45:35
Done.
|
| + labelView.setText(item.getLabel()); |
| + |
| + labelView.setEnabled(item.isEnabled()); |
| + if (item.isGroupHeader()) { |
| + labelView.setTypeface(null, Typeface.BOLD); |
| + } else { |
| + labelView.setTypeface(null, Typeface.NORMAL); |
| + } |
| + |
| + TextView sublabelView = (TextView) labelLayout.findViewById(R.id.dropdown_sublabel); |
| CharSequence sublabel = item.getSublabel(); |
| if (TextUtils.isEmpty(sublabel)) { |
| sublabelView.setVisibility(View.GONE); |
| @@ -102,6 +103,14 @@ public class DropdownAdapter extends ArrayAdapter<DropdownItem> { |
| sublabelView.setVisibility(View.VISIBLE); |
| } |
| + ImageView iconView = (ImageView) layout.findViewById(R.id.dropdown_icon); |
| + if (item.getIconId() == 0) { |
|
aurimas (slooooooooow)
2014/08/28 21:06:04
Use a constant you will add to DropdownItem instea
Evan Stade
2014/08/29 17:45:35
Done.
|
| + iconView.setVisibility(View.GONE); |
| + } else { |
| + iconView.setImageResource(item.getIconId()); |
| + iconView.setVisibility(View.VISIBLE); |
| + } |
| + |
| return layout; |
| } |