summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorRaph Levien <raph@google.com>2013-10-04 17:36:08 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-10-04 17:36:08 -0700
commitd0607035e33585d1b494a73348bdf9ff9339e82d (patch)
tree998eb24a6174230d6ce7a051c4f6f643275f8235 /core
parent0841c51696680da729c5500e0c341fd3ff82d847 (diff)
parenta488c79605d0629986bb636bc2a2bc86f4947686 (diff)
downloadframeworks_base-d0607035e33585d1b494a73348bdf9ff9339e82d.zip
frameworks_base-d0607035e33585d1b494a73348bdf9ff9339e82d.tar.gz
frameworks_base-d0607035e33585d1b494a73348bdf9ff9339e82d.tar.bz2
am a488c796: am 2a32771a: am 24871f63: Merge "Fix Text appears on top of existing text when composing in gmail." into klp-dev
* commit 'a488c79605d0629986bb636bc2a2bc86f4947686': Fix Text appears on top of existing text when composing in gmail.
Diffstat (limited to 'core')
-rw-r--r--core/java/android/text/DynamicLayout.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/core/java/android/text/DynamicLayout.java b/core/java/android/text/DynamicLayout.java
index 122f8a1..06935ae 100644
--- a/core/java/android/text/DynamicLayout.java
+++ b/core/java/android/text/DynamicLayout.java
@@ -502,17 +502,19 @@ public class DynamicLayout extends Layout
}
mNumberOfBlocks = newNumberOfBlocks;
+ int newFirstChangedBlock;
final int deltaLines = newLineCount - (endLine - startLine + 1);
if (deltaLines != 0) {
// Display list whose index is >= mIndexFirstChangedBlock is valid
// but it needs to update its drawing location.
- mIndexFirstChangedBlock = firstBlock + numAddedBlocks;
- for (int i = mIndexFirstChangedBlock; i < mNumberOfBlocks; i++) {
+ newFirstChangedBlock = firstBlock + numAddedBlocks;
+ for (int i = newFirstChangedBlock; i < mNumberOfBlocks; i++) {
mBlockEndLines[i] += deltaLines;
}
} else {
- mIndexFirstChangedBlock = mNumberOfBlocks;
+ newFirstChangedBlock = mNumberOfBlocks;
}
+ mIndexFirstChangedBlock = Math.min(mIndexFirstChangedBlock, newFirstChangedBlock);
int blockIndex = firstBlock;
if (createBlockBefore) {