summaryrefslogtreecommitdiffstats
path: root/core/java/android/widget
diff options
context:
space:
mode:
authorSvet Ganov <svetoslavganov@google.com>2014-10-23 01:55:42 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-10-23 01:55:44 +0000
commitd8bc6677e5b923cda9e953b60c936815368fb84a (patch)
tree4ca91e364747c8ebb01a5534bc9cb505a6e7f743 /core/java/android/widget
parente8f676c0e580f5ffffbc23befd4b4ffac0d0a332 (diff)
parent9e1c67e861302f0df55859c422000b437cef2027 (diff)
downloadframeworks_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.java11
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;
}
/**