summaryrefslogtreecommitdiff
path: root/core/java/android/widget/Spinner.java
diff options
context:
space:
mode:
authorAdam Powell <adamp@google.com>2012-02-24 19:24:26 -0800
committerAdam Powell <adamp@google.com>2012-02-24 19:25:43 -0800
commitc4e57e23f99f4cea6fcca870a95f7f20a6edfaf2 (patch)
tree074a52149e5968d9ba0a9d24d6a3241b21e0ce2a /core/java/android/widget/Spinner.java
parentb87148b2c05de1c601c539333c02547d0f10ebd9 (diff)
Fix bug 6065890 - Correct callback sequence for action bar tab switching
Keep the callback behavior consistent when action bar tabs collapse into a spinner. Change-Id: Ia82e55d816a92b7ec746e1d25486bc9d2c0778f4
Diffstat (limited to 'core/java/android/widget/Spinner.java')
-rw-r--r--core/java/android/widget/Spinner.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/core/java/android/widget/Spinner.java b/core/java/android/widget/Spinner.java
index ecf19b3ee226..2cacbdcac31a 100644
--- a/core/java/android/widget/Spinner.java
+++ b/core/java/android/widget/Spinner.java
@@ -282,6 +282,13 @@ public class Spinner extends AbsSpinner implements OnClickListener {
throw new RuntimeException("setOnItemClickListener cannot be used with a spinner.");
}
+ /**
+ * @hide internal use only
+ */
+ public void setOnItemClickListenerInt(OnItemClickListener l) {
+ super.setOnItemClickListener(l);
+ }
+
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
@@ -707,6 +714,9 @@ public class Spinner extends AbsSpinner implements OnClickListener {
public void onClick(DialogInterface dialog, int which) {
setSelection(which);
+ if (mOnItemClickListener != null) {
+ performItemClick(null, which, mListAdapter.getItemId(which));
+ }
dismiss();
}
}
@@ -724,6 +734,9 @@ public class Spinner extends AbsSpinner implements OnClickListener {
setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View v, int position, long id) {
Spinner.this.setSelection(position);
+ if (mOnItemClickListener != null) {
+ Spinner.this.performItemClick(null, position, mAdapter.getItemId(position));
+ }
dismiss();
}
});