summaryrefslogtreecommitdiff
path: root/core/java/android/widget/TextView.java
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2017-04-21 01:11:07 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2017-04-21 01:11:12 +0000
commit6a603221571ab853566ec8053caf06610ab56097 (patch)
tree022de1d45f824878b6329b02d7ae29f48ff2e9ff /core/java/android/widget/TextView.java
parent82629345c881231780917d2430c3353065c7dbde (diff)
parentcdc74590c395d78ebe590481b8d096b6d6c2b6ee (diff)
Merge "Fix a11y text location in clipped views" into oc-dev
Diffstat (limited to 'core/java/android/widget/TextView.java')
-rw-r--r--core/java/android/widget/TextView.java6
1 files changed, 2 insertions, 4 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 0fbb84b9373a..16a31f19a3ac 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -10264,16 +10264,14 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
positionInfoStartIndex + positionInfoLength,
viewportToContentHorizontalOffset(), viewportToContentVerticalOffset());
CursorAnchorInfo cursorAnchorInfo = builder.setMatrix(null).build();
- if (mTempRect == null) mTempRect = new Rect();
- Rect viewBoundsInScreen = mTempRect;
- info.getBoundsInScreen(viewBoundsInScreen);
+ int[] locationOnScreen = getLocationOnScreen();
for (int i = 0; i < positionInfoLength; i++) {
int flags = cursorAnchorInfo.getCharacterBoundsFlags(positionInfoStartIndex + i);
if ((flags & FLAG_HAS_VISIBLE_REGION) == FLAG_HAS_VISIBLE_REGION) {
RectF bounds = cursorAnchorInfo
.getCharacterBounds(positionInfoStartIndex + i);
if (bounds != null) {
- bounds.offset(viewBoundsInScreen.left, viewBoundsInScreen.top);
+ bounds.offset(locationOnScreen[0], locationOnScreen[1]);
boundingRects[i] = bounds;
}
}