diff options
author | Svet Ganov <svetoslavganov@google.com> | 2014-10-23 01:55:42 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-10-23 01:55:44 +0000 |
commit | d8bc6677e5b923cda9e953b60c936815368fb84a (patch) | |
tree | 4ca91e364747c8ebb01a5534bc9cb505a6e7f743 /core/java/android/widget | |
parent | e8f676c0e580f5ffffbc23befd4b4ffac0d0a332 (diff) | |
parent | 9e1c67e861302f0df55859c422000b437cef2027 (diff) | |
download | frameworks_base-d8bc6677e5b923cda9e953b60c936815368fb84a.zip frameworks_base-d8bc6677e5b923cda9e953b60c936815368fb84a.tar.gz frameworks_base-d8bc6677e5b923cda9e953b60c936815368fb84a.tar.bz2 |
Merge "Optimize text rendering in accessibility mode." into lmp-mr1-dev
Diffstat (limited to 'core/java/android/widget')
-rw-r--r-- | core/java/android/widget/TextView.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index 5cdee53..0917b32 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -8518,6 +8518,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } return false; case AccessibilityNodeInfo.ACTION_SET_SELECTION: { if (isFocused() && canSelectText()) { + ensureIterableTextForAccessibilitySelectable(); CharSequence text = getIterableTextForAccessibility(); if (text == null) { return false; @@ -8543,6 +8544,11 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } } } return false; + case AccessibilityNodeInfo.ACTION_NEXT_AT_MOVEMENT_GRANULARITY: + case AccessibilityNodeInfo.ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY: { + ensureIterableTextForAccessibilitySelectable(); + return super.performAccessibilityAction(action, arguments); + } default: { return super.performAccessibilityAction(action, arguments); } @@ -9032,10 +9038,13 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener */ @Override public CharSequence getIterableTextForAccessibility() { + return mText; + } + + private void ensureIterableTextForAccessibilitySelectable() { if (!(mText instanceof Spannable)) { setText(mText, BufferType.SPANNABLE); } - return mText; } /** |