diff options
| author | Gilles Debunne <debunne@google.com> | 2012-03-01 16:20:35 -0800 |
|---|---|---|
| committer | Gilles Debunne <debunne@google.com> | 2012-03-05 14:22:20 -0800 |
| commit | 6c488de023a4797069673dc619c1a4096079ea9e (patch) | |
| tree | 5559ad0aabdc5b567776e015e18f8b8d4b243487 /core/java/android/text/TextUtils.java | |
| parent | 5a2b6077001d948f5d7667829c95b06228556609 (diff) | |
EditText caches only text in its internal display list.
Decorelate background and text in layout display. This allows
to only store the text in the editable TextView's display list.
Selection and cursor changes no longer need to invalidate the
display list, leading to faster rendering.
Change-Id: I3af3a98846e1bfe2d9ec6c42590e71bf3704595e
Diffstat (limited to 'core/java/android/text/TextUtils.java')
| -rw-r--r-- | core/java/android/text/TextUtils.java | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/core/java/android/text/TextUtils.java b/core/java/android/text/TextUtils.java index 43dfc8183ec6..afae5bb2d98c 100644 --- a/core/java/android/text/TextUtils.java +++ b/core/java/android/text/TextUtils.java @@ -1664,6 +1664,36 @@ public class TextUtils { } } + /** + * Pack 2 int values into a long, useful as a return value for a range + * @see #unpackRangeStartFromLong(long) + * @see #unpackRangeEndFromLong(long) + * @hide + */ + public static long packRangeInLong(int start, int end) { + return (((long) start) << 32) | end; + } + + /** + * Get the start value from a range packed in a long by {@link #packRangeInLong(int, int)} + * @see #unpackRangeEndFromLong(long) + * @see #packRangeInLong(int, int) + * @hide + */ + public static int unpackRangeStartFromLong(long range) { + return (int) (range >>> 32); + } + + /** + * Get the end value from a range packed in a long by {@link #packRangeInLong(int, int)} + * @see #unpackRangeStartFromLong(long) + * @see #packRangeInLong(int, int) + * @hide + */ + public static int unpackRangeEndFromLong(long range) { + return (int) (range & 0x00000000FFFFFFFFL); + } + private static Object sLock = new Object(); private static char[] sTemp = null; |
