summaryrefslogtreecommitdiff
path: root/core/java/android/widget/AdapterView.java
diff options
context:
space:
mode:
authorAdam Powell <adamp@google.com>2011-04-22 17:08:55 -0700
committerAdam Powell <adamp@google.com>2011-04-22 17:23:44 -0700
commit3fb3d7c4e756bd32d5abde0abca9ab52d559bc84 (patch)
treea1dcfb8f2cdee81a033b85e27f55129ddb695776 /core/java/android/widget/AdapterView.java
parent6c079b6819d749fcb72988c5b06becff081c82fd (diff)
Revert "Touch exploration feature, event bubling, refactor"
This reverts commit ac84d3ba81f08036308b17e1ab919e43987a3df5. There seems to be a problem with this API change. Reverting for now to fix the build. Change-Id: Ifa7426b080651b59afbcec2d3ede09a3ec49644c
Diffstat (limited to 'core/java/android/widget/AdapterView.java')
-rw-r--r--core/java/android/widget/AdapterView.java28
1 files changed, 12 insertions, 16 deletions
diff --git a/core/java/android/widget/AdapterView.java b/core/java/android/widget/AdapterView.java
index 060f1a9b2bc0..f16efbdeb7be 100644
--- a/core/java/android/widget/AdapterView.java
+++ b/core/java/android/widget/AdapterView.java
@@ -876,6 +876,7 @@ public abstract class AdapterView<T extends Adapter> extends ViewGroup {
@Override
public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) {
+ boolean populated = false;
// This is an exceptional case which occurs when a window gets the
// focus and sends a focus event via its focused child to announce
// current focus/selection. AdapterView fires selection but not focus
@@ -884,27 +885,22 @@ public abstract class AdapterView<T extends Adapter> extends ViewGroup {
event.setEventType(AccessibilityEvent.TYPE_VIEW_SELECTED);
}
- // We first get a chance to populate the event.
- onPopulateAccessibilityEvent(event);
-
- // We send selection events only from AdapterView to avoid
- // generation of such event for each child.
+ // we send selection events only from AdapterView to avoid
+ // generation of such event for each child
View selectedView = getSelectedView();
if (selectedView != null) {
- return selectedView.dispatchPopulateAccessibilityEvent(event);
+ populated = selectedView.dispatchPopulateAccessibilityEvent(event);
}
- return false;
- }
-
- @Override
- public void onPopulateAccessibilityEvent(AccessibilityEvent event) {
- View selectedView = getSelectedView();
- if (selectedView != null) {
- event.setEnabled(selectedView.isEnabled());
+ if (!populated) {
+ if (selectedView != null) {
+ event.setEnabled(selectedView.isEnabled());
+ }
+ event.setItemCount(getCount());
+ event.setCurrentItemIndex(getSelectedItemPosition());
}
- event.setItemCount(getCount());
- event.setCurrentItemIndex(getSelectedItemPosition());
+
+ return populated;
}
@Override