summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Raph Levien <raph@google.com> 2015-06-01 19:45:24 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2015-06-01 19:45:43 +0000
commitcf8b3b1c56b5aaaa8552c1bc9bb88c8a1285f99f (patch)
tree1ceb704e463271fe286e875dbfb85dd24ecfdd74
parent061e2bbf6bdbcccd71844248be953081f2b5fe70 (diff)
parent5730c974800a0ffed59a041d9e249a5c42e417db (diff)
Merge "Revert "Use getRunAdvance to position cursor"" into mnc-dev
-rw-r--r--core/java/android/text/Layout.java1
-rw-r--r--core/java/android/text/TextLine.java10
2 files changed, 6 insertions, 5 deletions
diff --git a/core/java/android/text/Layout.java b/core/java/android/text/Layout.java
index f7027f9e20b8..f176240dbb73 100644
--- a/core/java/android/text/Layout.java
+++ b/core/java/android/text/Layout.java
@@ -1121,7 +1121,6 @@ public abstract class Layout {
* closest to the specified horizontal position.
*/
public int getOffsetForHorizontal(int line, float horiz) {
- // TODO: use Paint.getOffsetForAdvance to avoid binary search
int max = getLineEnd(line) - 1;
int min = getLineStart(line);
Directions dirs = getLineDirections(line);
diff --git a/core/java/android/text/TextLine.java b/core/java/android/text/TextLine.java
index 605b91dee9c0..479242c85695 100644
--- a/core/java/android/text/TextLine.java
+++ b/core/java/android/text/TextLine.java
@@ -739,14 +739,16 @@ class TextLine {
float ret = 0;
+ int contextLen = contextEnd - contextStart;
if (needWidth || (c != null && (wp.bgColor != 0 || wp.underlineColor != 0 || runIsRtl))) {
if (mCharsValid) {
- ret = wp.getRunAdvance(mChars, start, contextEnd, contextStart, contextEnd,
- runIsRtl, end);
+ ret = wp.getTextRunAdvances(mChars, start, runLen,
+ contextStart, contextLen, runIsRtl, null, 0);
} else {
int delta = mStart;
- ret = wp.getRunAdvance(mText, delta + start, delta + contextEnd,
- delta + contextStart, delta + contextEnd, runIsRtl, delta + end);
+ ret = wp.getTextRunAdvances(mText, delta + start,
+ delta + end, delta + contextStart, delta + contextEnd,
+ runIsRtl, null, 0);
}
}