From e303c5c3eb2f65ef3c6fc2693cc3cbcee92d63b7 Mon Sep 17 00:00:00 2001 From: alanv Date: Wed, 3 Oct 2012 13:15:14 -0700 Subject: [PATCH] Send LockPatternView accessibility announcements before callbacks This allows the pattern's listener to optionally send accessibility announcements that interrupt the defaults, rather than the view always interrupting the listener. Bug: 7256500 Change-Id: Ief2f5cc2fae76a3becc1321d14d46f97b3092215 --- .../com/android/internal/widget/LockPatternView.java | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/core/java/com/android/internal/widget/LockPatternView.java b/core/java/com/android/internal/widget/LockPatternView.java index 0d9cf9ac4d272..6c5ed7e4933e8 100644 --- a/core/java/com/android/internal/widget/LockPatternView.java +++ b/core/java/com/android/internal/widget/LockPatternView.java @@ -375,31 +375,31 @@ public class LockPatternView extends View { } private void notifyCellAdded() { + sendAccessEvent(R.string.lockscreen_access_pattern_cell_added); if (mOnPatternListener != null) { mOnPatternListener.onPatternCellAdded(mPattern); } - sendAccessEvent(R.string.lockscreen_access_pattern_cell_added); } private void notifyPatternStarted() { + sendAccessEvent(R.string.lockscreen_access_pattern_start); if (mOnPatternListener != null) { mOnPatternListener.onPatternStart(); } - sendAccessEvent(R.string.lockscreen_access_pattern_start); } private void notifyPatternDetected() { + sendAccessEvent(R.string.lockscreen_access_pattern_detected); if (mOnPatternListener != null) { mOnPatternListener.onPatternDetected(mPattern); } - sendAccessEvent(R.string.lockscreen_access_pattern_detected); } private void notifyPatternCleared() { + sendAccessEvent(R.string.lockscreen_access_pattern_cleared); if (mOnPatternListener != null) { mOnPatternListener.onPatternCleared(); } - sendAccessEvent(R.string.lockscreen_access_pattern_cleared); } /** @@ -799,9 +799,7 @@ public class LockPatternView extends View { } private void sendAccessEvent(int resId) { - setContentDescription(mContext.getString(resId)); - sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_SELECTED); - setContentDescription(null); + announceForAccessibility(mContext.getString(resId)); } private void handleActionUp(MotionEvent event) {