Merge "Fixing issue where we were adding text to each scroll event. (Bug: 5328362)"

This commit is contained in:
Winson Chung
2011-09-30 12:10:29 -07:00
committed by Android (Google) Code Review
+9 -21
View File
@@ -39,6 +39,7 @@ import android.view.ViewConfiguration;
import android.view.ViewGroup;
import android.view.ViewParent;
import android.view.accessibility.AccessibilityEvent;
import android.view.accessibility.AccessibilityManager;
import android.view.accessibility.AccessibilityNodeInfo;
import android.view.animation.Interpolator;
import android.widget.Checkable;
@@ -402,6 +403,14 @@ public abstract class PagedView extends ViewGroup {
if (mTouchState == TOUCH_STATE_REST) {
pageEndMoving();
}
// Notify the user when the page changes
if (AccessibilityManager.getInstance(getContext()).isEnabled()) {
AccessibilityEvent ev =
AccessibilityEvent.obtain(AccessibilityEvent.TYPE_VIEW_SCROLLED);
ev.getText().add(getCurrentPageDescription());
sendAccessibilityEventUnchecked(ev);
}
return true;
}
return false;
@@ -1860,27 +1869,6 @@ public abstract class PagedView extends ViewGroup {
}
}
@Override
public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) {
// Do not append text content to scroll events they are fired frequently
// and the client has already received another event type with the text.
if (event.getEventType() != AccessibilityEvent.TYPE_VIEW_SCROLLED) {
super.dispatchPopulateAccessibilityEvent(event);
}
onPopulateAccessibilityEvent(event);
return false;
}
@Override
public void onPopulateAccessibilityEvent(AccessibilityEvent event) {
super.onPopulateAccessibilityEvent(event);
if (event.getEventType() == AccessibilityEvent.TYPE_VIEW_SCROLLED) {
event.getText().add(getCurrentPageDescription());
}
}
protected String getCurrentPageDescription() {
int page = (mNextPage != INVALID_PAGE) ? mNextPage : mCurrentPage;
return String.format(mContext.getString(R.string.default_scroll_format),