History log of /frameworks/base/core/java/android/text/TextUtils.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
4972daf9923f3f60538b67be690dcb7e72cf7f6b 06-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Don't crash in TextUtil.concat() with paragraph spans" into oc-dev
e57886e659031b2400038d9cf00e48ab423e66f8 03-May-2017 Roozbeh Pournader <roozbeh@google.com> Don't crash in TextUtil.concat() with paragraph spans

This switches TextUtils.concat() to use SpannableStringBuilder
if there are any spans in the input strings. As a result, we can
avoid crashes when concatenating two CharSequences can result in
paragraph spans that now don't happen to be at paragraph boundaries.

Also document the exact behavior of the method for edge cases based
on the previous implementation.

Change-Id: I9caffbe95ed729b9c10d63a9e7d22b1e8c7185a3
Fixes: 28271770
Test: CTS tests added and old CTS tests continue to pass.
Test: cts-tradefed run cts-dev --module CtsTextTestCases --test android.text.cts.TextUtilsTest
/frameworks/base/core/java/android/text/TextUtils.java
a8fce3b29eff8ed452ee20a1938268b837a105ad 04-Apr-2017 Felipe Leme <felipeal@google.com> Don't copy NoCopySpans for assist and autofill

For AssistStructure, and AutofillValue, create a copy of the text in
setText and forText methods if it is a Spanned.

Fixes: 36838999
Test: cts-tradefed run cts -m CtsAutoFillServiceTestCases
Test: cts-tradefed run cts -m CtsAssistTestCases
Test: cts-tradefed run cts --test android.widget.cts.TextViewTest -m \
CtsWidgetTestCases

Change-Id: I52e780fa9baa17c375d3945dc714171f41fd7db5
/frameworks/base/core/java/android/text/TextUtils.java
ea6cb1215e97232bf96da02e35b6b8e938572eaa 28-Apr-2017 Abodunrinwa Toki <toki@google.com> Add "Paste as plain text" in TextView's toolbar.

Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Bug: 36179795
Change-Id: Iee0502678adcfb9de58c107b9247a528718b2c40
/frameworks/base/core/java/android/text/TextUtils.java
36e866b8e0ec08e45b5e7fbc65aeeb3a9bb7b11e 24-Feb-2017 Eugene Susla <eugenesusla@google.com> Support multiple filters per association request

By supporting multiple filters per one request we should be able to cover
multiple kinds of use cases such as:
- Letting the user select from a list of devices of more then one medium
type (e.g. Bluetooth and BLE)
- Allowing to provide multiple criteria for any field (e.g. filtering by
more than one service UUID)

Bug: 30932767
Test: Provide multiple filters and ensure that devices matching either are
shown in the list to choose from.
Ensure wifi SSIDs are shown in the list if wifi filter is provided

Change-Id: I0a978787551a1ee5750ec5544b241d3bbfed5a7c
/frameworks/base/core/java/android/text/TextUtils.java
d66c95fa907dc9eb3d7238fbbf3dc6dbd4b243a0 09-Mar-2017 Hector Tellez <htellez@google.com> Revert "Support multiple filters per association request"

This reverts commit e70e6aa62c6f3a9a79624a4f9d97df95edda0364.

Change-Id: I12857cbbea0a0c74521191ab5e3713db230626ab
/frameworks/base/core/java/android/text/TextUtils.java
e70e6aa62c6f3a9a79624a4f9d97df95edda0364 24-Feb-2017 Eugene Susla <eugenesusla@google.com> Support multiple filters per association request

By supporting multiple filters per one request we should be able to cover
multiple kinds of use cases such as:
- Letting the user select from a list of devices of more then one medium
type (e.g. Bluetooth and BLE)
- Allowing to provide multiple criteria for any field (e.g. filtering by
more than one service UUID)

Bug: 30932767
Test: Provide multiple filters and ensure that devices matching either are
shown in the list to choose from.
Ensure wifi SSIDs are shown in the list if wifi filter is provided
Change-Id: I6621da388e2bf4ed97c5af2692629a321d0b63c7
/frameworks/base/core/java/android/text/TextUtils.java
c534f4ca8a6435dddccbf56b38931745855a8871 08-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Remove unnecessary if-else statement from TextUtils#isEmpty. "
d4196c9e8b7931d155c065cba26726a2e7d8d817 07-Feb-2017 Amin Shaikh <ashaikh@google.com> Remove unnecessary if-else statement from TextUtils#isEmpty.

Test: runtest frameworks-core

Change-Id: Ibcdc67130570775650fe8affda961227319c6641
/frameworks/base/core/java/android/text/TextUtils.java
6ed45d8cd33c297e608aba94fc1f61dace7a7cca 22-Jan-2017 Eugene Susla <eugenesusla@google.com> CompanionDeviceManager

This introduces an API for apps that support companion devices to provide a
more streamlined flow for pairing and setting up the device

Bug: 30932767
Test: Using a toy app, invoke the newly introduced API (CompanionDeviceManager),
and go through the flow. Ensure filtering works, and device is returned to
the calling app. Ensure the calling app can pair to the selected device.
Change-Id: I0aeb653afd65e4adead13ea9c7248ec20971b04a
/frameworks/base/core/java/android/text/TextUtils.java
193520e3dff5248ddcf8435203bf99d2ba667219 13-Dec-2016 Phil Weaver <pweaver@google.com> Accessibility support for ClickableSpan

Bug: 17726921
Test: Adding CTS tests for new behavior in linked CL.
Change-Id: Ifa85c309106d5ef29bb130edff9e2e0b88547a8f
/frameworks/base/core/java/android/text/TextUtils.java
9559c20a3903f7cbaa6132be78c2f57d34ea262f 13-Dec-2016 Roozbeh Pournader <roozbeh@google.com> Deprecate android.text.AndroidCharacter

AndroidCharacter was added to compensate for limitations in
java.lang.Character, but it has been outdated and its functionality
is provided with a much better API by android.icu.lang.UCharacter.

Bug: 32551718
Test: cts-tradefed run cts-dev --module CtsTextTestCases --test android.text.cts.AndroidCharacterTest
Change-Id: Iec1969dc5787a4ebb0e68cdc213d3d0cdc3b2d0d
/frameworks/base/core/java/android/text/TextUtils.java
4037d51b132a85dcfe37a95f9d2d91ad23d162fd 12-Oct-2016 Aurimas Liutikas <aurimas@google.com> Fix imports in android.text package.

This change also removes trailing whitespaces.

Test: code still compiles
Change-Id: I65f79a34288d01616808fa9cd6732ae4ef0f1377
/frameworks/base/core/java/android/text/TextUtils.java
3bfce33993a3aea981cf60e1a19757dea0cc2374 18-Jun-2016 Roozbeh Pournader <roozbeh@google.com> Introduce listEllipsize() and deprecate commaEllipsize()

The commaEllipsize() method was beyond repair. It couldn't support
several needed internationalization features, and its API depended on
splitting a string and the language having only one plural form.

Bug: 24097278
Change-Id: I85217e4eadac971c58bb001b62ba386fb1297a24
/frameworks/base/core/java/android/text/TextUtils.java
8823c85f0a98988a21bddedf1e1c3fb725258ba1 10-Jun-2016 Roozbeh Pournader <roozbeh@google.com> Clean up TextUtils.doesNotNeedBidi()

One of the signatures of the method that used CharSequence was
unused. The other's implementation was too crude, resulting in too
many false negatives.

The new code now shares logic with BoringLayout in order to detect
potential bidi-affecting characters. The logic is intentionally
rough in order to be efficient: we still have false negatives, but
not as many as before.

Bug: 29254696
Change-Id: I106133369e93e49d7b2fe82ffc433e4556740ee8
/frameworks/base/core/java/android/text/TextUtils.java
0ad4dccf8851ba7adb5fa7b85736bd6e2cb21896 27-May-2016 Roozbeh Pournader <roozbeh@google.com> Support ellipsizing LocaleHelper.getDisplayLocaleList()

Add an extra parameter to LocaleHelper.getDisplayLocaleList()
specifying the maximum number of locales to output, as callers
probably won't need the whole list.

Bug: 28872122
Change-Id: Ief136bc1af2841e76ed4d8e65932a9a30821eae3
/frameworks/base/core/java/android/text/TextUtils.java
a8a58ffdeeb6a4a05de227a34972d99c005d2bf0 18-May-2016 Andreas Gampe <agampe@google.com> Frameworks/base: Optimize LoadedApk

Preallocate storage lists and avoid TextUtils and its string
builder for a common code path.

Optimize list join helper to not have a check in the loop.

Bug: 28801010
Change-Id: Iafc582031f973d718252b34bcda6405a77425628
/frameworks/base/core/java/android/text/TextUtils.java
d608a0adcb8392892fa0bed2258b428fbbff0fc0 27-Apr-2016 Clara Bayarri <clarabayarri@google.com> Fix TextUtils#getReverse deprecated doc

Note there is no alternative method to use.

Bug: 28296055
Change-Id: I1e44c1dad6009434a92c6a53862e6f061114bc56
/frameworks/base/core/java/android/text/TextUtils.java
3efda95072831c4f0a03762ff4ff10c49a265a5f 11-Aug-2015 Roozbeh Pournader <roozbeh@google.com> Cleanup android.text.TextUtils a little.

- Clarify that getTrimmedLength() only considers ASCII control
characters as control characters.

- Deprecate getReverse() instead of trying to fix it, as it's really
not meaningful for internationalized text.

- Support non-BMP characters in isDigitsOnly().

Change-Id: I947c449b48c252ecc7f7299145f6f8fbad86004f
/frameworks/base/core/java/android/text/TextUtils.java
1cc2acf7faca0edcfe541160b9115229122d16ba 11-Aug-2015 Roozbeh Pournader <roozbeh@google.com> Use Character.codePointAt().

We were mistakenly using CharSequence#codePointAt().

Change-Id: Id655fd4993f70140cde54ea8e5b4d39111402046
/frameworks/base/core/java/android/text/TextUtils.java
a93880ee771692f63b711aec2905050b3b6e8a41 11-Aug-2015 Roozbeh Pournader <roozbeh@google.com> Support non-BMP chars in TextUtils.isGraphic(CharSequence).

Also deprecate TextUtils.isGraphic(char), since one-code-unit APIS
should not be used for anything in the modern Unicode era.

Bug: 7381642
Change-Id: If4dc573fe5ac870152374ded64fc83594e8dd37e
/frameworks/base/core/java/android/text/TextUtils.java
085419b1ec6ff4557613f4ab6277dcee4b605fc7 10-Aug-2015 Roozbeh Pournader <roozbeh@google.com> Remove TextUtils.join(Iterable<CharSequence>).

The method was deprecated and had only one caller, which is being
replaced with an inline copy of this at the same time.

Bug: 6823087
Change-Id: I7c5b9840ba50c1a9f167102966de63ef1040ab88
/frameworks/base/core/java/android/text/TextUtils.java
bd87e94100fdd68f8c6d5ddb9efdc3db5b557a52 08-Aug-2015 Roozbeh Pournader <roozbeh@google.com> Fix and deprecate TextUtils.join(Iterable<CharSequence>).

There seems to be only one caller of this signature, and even that is
in a deprecated method, so it should be safe to deprecate this.

The new implementation uses ICU for the format string and so removes
the need for a localized string, although it's still a hack and is
probably slower. It's added here since we may actually want to clean
it up later and use it for an improved simple list formatter.

Bug: 6823087
Change-Id: I2aa1af9b170e41da840d9d7bc663df06fb96d136
/frameworks/base/core/java/android/text/TextUtils.java
463b48203ab777e0b81632c480de3d1d6f608aa4 07-Aug-2015 Roozbeh Pournader <roozbeh@google.com> Support all RTL scripts in getLayoutDirectionFromLocale().

Previously, only the languages written in Arabic and Hebrew were
considered right-to-left. Now, ICU is used to return the direction
of the language, which not only support other right-to-left scripts
(such as Thaana), but also has better logic to determine the
direction of the locale and uses caching to improve the speed.

Bug: 22559274
Change-Id: I760be7984a9b35ea77d59ca84a220798e205af36
/frameworks/base/core/java/android/text/TextUtils.java
5cc0df214bbe2b169150c9060dc5288bb8aaf338 18-Jun-2015 Jeff Sharkey <jsharkey@android.com> Forget private partition keys.

When we forget a private partition, ask vold to also forget the key
for that partition GUID. This means we need to track both the
filesystem UUID and the partition GUID for a private volume.

Bug: 21782268
Change-Id: Icda1cbb65539d61dacc663428daf3d1a2e4c313e
/frameworks/base/core/java/android/text/TextUtils.java
f491c72e4a0b6d692aaf459a9a45a8c1462e713b 11-Jun-2015 Jeff Sharkey <jsharkey@android.com> Selected count string needs plurals.

Bug: 21717427
Change-Id: Ie0db8ac30244b022ca5838969fb085230bfc4499
/frameworks/base/core/java/android/text/TextUtils.java
a70d4a90a029910f788c3e7f8715cf3b842b1e2b 03-Jun-2015 Alan Viverette <alanv@google.com> Prevent poorly-extended ParcelableSpans from writing to parcels

If a developer extends an existing ParcelableSpan and overwrites
writeToParcel, TextUtils will crash when attempting to unparcel
since the span type ID is not accurate. This CL makes a separate
framework-private method for writeToParcel to ensure that even if
a developer extends a ParcelableSpan class, they won't modify the
parceling or unparceling code that's tied to the span type ID.

Bug: 21274544
Change-Id: If4c3506a55999df7a3b6d87cb8d550235d7a02c6
/frameworks/base/core/java/android/text/TextUtils.java
70616ecd22fafccf2fab7565ccfbb3b5f91c5580 04-Mar-2015 Raph Levien <raph@google.com> Start moving text measurement into native code

We want to move text measurement into native code, mostly so that
alternate measurement for hyphens can be performant. This patch begins
that migration, in the main StaticLayout case, but still surfaces the
widths array to Java (for ellipsis calculation), and also includes a
hack (used mostly for testing) for computing widths in Java and sending
them down to native code when TextPaint is subclassed.

Change-Id: I476c9e8b3aa8e4e3552eb18f66c4bcd5683f3a72
/frameworks/base/core/java/android/text/TextUtils.java
6cd132fef2a5d7af040707ca78560d13e0485539 19-Feb-2015 Scott Kennedy <skennedy@google.com> Annotate the parameter in TextUtils#isEmpty() as @Nullable

Change-Id: Iaccf7f568952399d5eb48c15a5428317dd75052a
/frameworks/base/core/java/android/text/TextUtils.java
d29bdb266d54b4551f42776bb790e80147a279d0 06-Feb-2015 Neil Fuller <nfuller@google.com> Avoid static initialization of Layout from TextUtils

This works around a bug in standalone (e.g. non-Zygote)
runtimes when a device is attached to a host that is running
DDM.

There is a race condition:

When the runtime receives a HELLO from DDM it calls
TextUtils.isEmpty().

Calling any TextUtils methods statically initializes
Layout. Layout has dependencies on other classes, which in
turn have dependencies on native methods that are not always
registered when the call takes place. Registration and DDM
handling are done in separate threads.

This is not a fix, merely a workaround until the race can
be resolved.

Bug: 18081539
Change-Id: If1bd3de6597bc93da381c8f86dacf40156449561
/frameworks/base/core/java/android/text/TextUtils.java
6f9f1d4b3b9f9844dc294758398f87cc7aa934b0 12-Sep-2014 Igor Viarheichyk <viarheichyk@google.com> Use constants instead of resources for ellipsis.

All supported locales use only U+2025 and U+2026 to represent
ellipses, and it will unlikely change in future. Given translated
resources are inconsistent and often use three dots it is safer
to use constants instead of resources.

(cherry-pick of ed0daa93e48d38e54a7ad1c99c461510a4c07599.)

Bug: 18542179
Change-Id: I51a6cb903f62f739fbadd6b78e5765c0028d641a
/frameworks/base/core/java/android/text/TextUtils.java
31e6b1445fc680f0ae79d1a71cf05d1cbaa0c0ec 30-Jul-2014 Narayan Kamath <narayan@google.com> Switch TextUtils over to new ICU API.

.. and use Locale.getScript() instead of ICU.getScript.

bug: 15876704

(cherry picked from commit 08b3516984850e04e9bb6feae29d691a7557191c)

Change-Id: Ifac179e0577d66062f32c95372b631bf574dfdf9
/frameworks/base/core/java/android/text/TextUtils.java
4f4ead481270d48f0374c40e72a77619a4ac2873 23-Jun-2014 Niels Egberts <nielse@google.com> Add TtsSpan class.

The TtsSpan can be used to provide addtional data for TTS engines.

For now it only includes the types text and cardinals, but more will follow.

Change-Id: I31392dd413c0902ba4ce702fa3307253c90c618f
/frameworks/base/core/java/android/text/TextUtils.java
8d2aa199774f50256617351bf9caaaef59d47c59 15-May-2014 Raph Levien <raph@google.com> Fix android.text.cts.TextUtilsTest#testRegionMatches

The CTS test expects an ArrayIndexOutOfBounds exception when passing in
an unreasonably large value for len. Since the actual implementation was
causing an integer overflow, we were getting a different exception.
Since integer overflow is potentially dangerous, this patch tests for it
and throws an exception explicitly.

Change-Id: I0420c06185d33d130853861d25d4f65b06fe0dfa
/frameworks/base/core/java/android/text/TextUtils.java
776abc24cdd18610232a50b997cce3cffa74609b 07-Mar-2014 Adam Lesinski <adamlesinski@google.com> Uses VMRuntime.newUnpaddedArray for ideal array sizes

Bug:13028925

Change-Id: I0a9301248b10a339afbdc5e4ffe3310ac4fa1fb7
/frameworks/base/core/java/android/text/TextUtils.java
d8415f4bf061000b049143b4f48b96b2005450bb 08-Aug-2013 Amith Yamasani <yamasani@google.com> Developer option to force RTL layout

Make sure screen layout changes are taken into account in Configuration diffs.
Initialize the SystemProperty from Global settings on startup of
ActivityManagerService.

TextUtils checks the override flag to decide if the default layout direction
should be forced to RTL.

Bug: 10244047
Change-Id: I23a2583d790a355060d0d898ba44e5f7dc896b46
/frameworks/base/core/java/android/text/TextUtils.java
577ba5354bf5a2899021e385ac9ca3cc07d35a60 19-Apr-2013 Victoria Lease <violets@google.com> do not attempt to parcel unknown ParcelableSpans

Bug: 8639983
Change-Id: I27335f6e9d3a0671ecdd161fdbf765785ef8065d
/frameworks/base/core/java/android/text/TextUtils.java
1b15ba5d194c1db71d0a34ee110bd1ab169c8a29 20-Feb-2013 Luca Zanolin <zano@google.com> Resubmitting "Enable correction/deleting notification via EasyEditSpan.""

Re-run "make update-api"

Original CL Ic227b8fd50066699915f69a54f225fb5330867c4

Change-Id: Ifb1a0f61801c544b01193435fbfdedd7f3888971
/frameworks/base/core/java/android/text/TextUtils.java
1b916301e044d1f6f672c9708c993090ecdf30cf 20-Feb-2013 Luca Zanolin <zano@google.com> Revert "Enable correction/deleting notification via EasyEditSpan."

This reverts commit 8cd8135b95da5b471804604b06084eecbe1cc23b

Change-Id: I6361cc47d58281ab37cb9ae0a67541b43f873147
/frameworks/base/core/java/android/text/TextUtils.java
8cd8135b95da5b471804604b06084eecbe1cc23b 14-Feb-2013 Luca Zanolin <zano@google.com> Enable correction/deleting notification via EasyEditSpan.

When the "delete" pop-up is clicked (and the wrapped text removed), the
creator of the span will receive a notification of the action.

Similarly, if the user modifies (i.e., add/remove a char), the creator of
the span will receive a notification too. The notification will not contain any
information about how the text has been modified.


Bug: 6905960
Change-Id: Ic227b8fd50066699915f69a54f225fb5330867c4
/frameworks/base/core/java/android/text/TextUtils.java
d3d9f3f1004dfee2649a26cfe8dba948cd364904 18-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7173351 API REVIEW: android.util.LocaleUtil

Change-Id: I08fd491eff714059e9ec874fadebe7eb556c34d5
/frameworks/base/core/java/android/text/TextUtils.java
df8ef4b139a8918895f8a5c62536123da06e81fe 18-Aug-2012 Victoria Lease <violets@google.com> DO NOT MERGE LocaleSpan makes Han disambiguation easy!

Cherry-pick of I7f1b0d49a2ece957a7b9b5d65d48385bf2c2a668 from master.

I've also provided TextView.setTextLocale() for use in single-language
TextViews.

Change-Id: I5692859bfd2aafc284172454d943afc250b22535
/frameworks/base/core/java/android/text/TextUtils.java
f3e64101bb2af1159518259229d5d429f8915787 31-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6908329 TextUtils.ellipsize does not work properly when Locale is changed

- load the ellipis resources on the fly to get the correct ones depending on the Locale

Change-Id: I42d591e3f5ed715c983f736f94a80143a3897f47
/frameworks/base/core/java/android/text/TextUtils.java
957c800ac0cb8e375dc3d4c38011456d5c429f95 06-Mar-2012 Gilles Debunne <debunne@google.com> Merge "Ellipsize avoids spaces and starts right after text"
6c488de023a4797069673dc619c1a4096079ea9e 02-Mar-2012 Gilles Debunne <debunne@google.com> 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
/frameworks/base/core/java/android/text/TextUtils.java
c70e7a0b8add16d2e6cec4d58c3cc74d08cc20b4 24-Feb-2012 Gilles Debunne <debunne@google.com> Ellipsize avoids spaces and starts right after text

Bug 5509226

Change ellipsize bounds to take spaces into account

The hardcoded ' ' character may be problematic with other langages.

Note that a different ellipsize logic also exists in StaticLayout.
Created 6062415 to track this.

Change-Id: I3406ec23a592f952bf3e0ca68f0838ee807baba0
/frameworks/base/core/java/android/text/TextUtils.java
f4832da16a9513e19881397abdbbf62285f8b852 13-Feb-2012 Marc Blank <mblank@google.com> Use &#39; for apostrophe in HTML encoding

* We were using &apos; which is not correct

Change-Id: I4872da7d5e19f18ecd570dbcaac295020d66681c
/frameworks/base/core/java/android/text/TextUtils.java
cb332649e44db86ff8b4e7f006db4bbfd82fed55 24-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5366547 TruncateAt.MARQUEE should be replaces with "two dot" ellipsis on hardware that dont support MARQUEE

- introduce TruncateAt.END_SMALL
- code refactoring for suppressing use of hardcoded constants

Change-Id: I70e24857cd5d6bd012a743cbc0ba46fbd06d5457
/frameworks/base/core/java/android/text/TextUtils.java
e90bed18cc123c0963bbcc023976fa355c16a352 30-Aug-2011 Gilles Debunne <debunne@google.com> Added an add to dictionary option in suggestions for misspelled words

Change-Id: I031f17a76b4a81ae375b778046b8c391f9b8b2b2
/frameworks/base/core/java/android/text/TextUtils.java
0eea6681519277310e1733d791bfc0342b8e5cea 29-Aug-2011 Gilles Debunne <debunne@google.com> Using ListView for Suggestion popup window

New background assets from Bug 5204807.
New text selection color and associated handles, bug 5217848.

Change-Id: I4eaea6be732843d8ff344400d029b4a1b80b084f
/frameworks/base/core/java/android/text/TextUtils.java
e6d368218918f911b1954296dab25bf84147b4c6 30-Aug-2011 Luca Zanolin <zano@google.com> Add EditTextShortcutSpan to provide edit short cut in the text view.

At the moment, EditTextShortcutSpan allows only the deletion of the text. In the future, we may decide to add extra functionality,
like "retry" where all the text is removed and a specific IME is triggered.

Fix the underline. The underline is not defined in thickness, and not as a multiplier of the default underline thickness.

Change the behaviour of SuggestionRangeSpan to match the specification.

Change-Id: I80437d9887c7a2ff8f62c38afbb0cb7add7ee9c8
/frameworks/base/core/java/android/text/TextUtils.java
28294cc74491885c7fe4442353026f01f5b773e8 24-Aug-2011 Gilles Debunne <debunne@google.com> Suggestions popup window is dismissed on tap outside.

But now the tap is not handled at all, as it was before. To do this, the popup window
is now focusable. As a result, the TextView's window loses focus. We hide the
cursor to prevent a non-blinking visible cursor. We should also fake the
state of the parent TextView to keep it visually focussed.

SuggestionRangeSpan and SpellCheckSpan had to made Parcelable since they are recreatedi
when the TextView is re-created when the popup is dismissed.

Change-Id: Ic99b2c4f02c282394f214938dd19168547af4886
/frameworks/base/core/java/android/text/TextUtils.java
fa4d7754edcbca7a3f651fe319e42d7624518452 18-Aug-2011 Jeff Sharkey <jsharkey@android.com> Combine list of CharSequence with delimeter.

Change-Id: I7d86b89a84f6d91e5441c8af63310b37f16974fc
/frameworks/base/core/java/android/text/TextUtils.java
cb379120456d8065d742021fc5c66748fc8a11a8 07-Jul-2011 Doug Felt <dougfelt@google.com> Implement textDirection heuristic selection.

Change-Id: I2fcf18de573f2d66494fa5ed61e4273c3c6078c7
/frameworks/base/core/java/android/text/TextUtils.java
f4c4a276e2a78528d2387319313e99c559142cf9 02-May-2011 Conley Owens <cco3@android.com> Merge commit 'f395e304' into m

Conflicts:
core/tests/coretests/src/android/text/TextUtilsTest.java

Change-Id: I7439f7f80cf91ff654c0ddd79c3e6b3808ba4784
f395e3042accd7f3f5df466dbb532befcd1db5d4 30-Apr-2011 Conley Owens <cco3@android.com> am 19653c64: am 425db473: Merge "CHAR_SEQUENCE_CREATOR cannot handle null string"

* commit '19653c6440eaf7328ecbc01c3ca6d7a910906484':
CHAR_SEQUENCE_CREATOR cannot handle null string
a00972ab9a95f945342fdbf58956992e01310398 14-Apr-2011 Gilles Debunne <debunne@google.com> Fix around suggestionSpan.

Since the kind was unknown, doing a copy/cut on text with a SuggestionSpan crashed.

Change-Id: I10c0677b3587897b82c794db57d7b07149f12e09
/frameworks/base/core/java/android/text/TextUtils.java
cee2051adac53a85653ba8ead3a671c0978af43b 07-Apr-2011 Martin Wallgren <martin.wallgren@sonyericsson.com> CHAR_SEQUENCE_CREATOR cannot handle null string

TextUtils.writeToParcel can handle null as input CharSequence
but createFromParcel will throw NullPointerException. Transforming
to and from parcel should handle null in the same way.

Change-Id: I707ea9be2091d2655c5f63eaa57c5674befa5ad3
/frameworks/base/core/java/android/text/TextUtils.java
adb435835fb9a5f2bb74d29930b239dde18504a7 09-Mar-2011 satok <satok@google.com> Add CorrectionSpan and APIs to pass a secure CorrectionSpan to TextView

- CorrectionSpan is a span which has suggestions made by IME.
This has a function to change the current IME to other IME specified
in this span. For security reasons, only the current IME
is allowed to use this function through InputConnection.
(IME token is used for checking the validity of it.).

- CorrectionSpan stores following information:

flags, subtype Id, InputMethodInfo Id, suggests, locale, original string

Change-Id: Id3abc9ea4d11753cdc4f483a2bb3128f49ba198a
/frameworks/base/core/java/android/text/TextUtils.java
1e3ac18e7ad03e02819f3e1a89d6a80a2bb7645f 08-Mar-2011 Gilles Debunne <debunne@google.com> Empty spans are not considered in text layout/rendering process.

Bug http://code.google.com/p/android/issues/detail?id=14786

Empty spans are affecting the text before and after them. See the
comment in TextUtils.removeEmptySpans for details.

Change-Id: I40376c32fd56a17efde6219f9b2593e4b4ab1ba1
/frameworks/base/core/java/android/text/TextUtils.java
4c8ad6eb6241a0f689e49237ecadb65e8ffa4b6c 28-Jan-2011 Brian Muramatsu <btmura@google.com> Fix TextUtils#commaEllipsize

Bug 3400770

TextUtils#commaEllipsize creates a MeasuredText "mt" object with the
text to be ellipsized. It calls setPara which initializes mt's mPos
member to be 0. It then calls addStyleRun which moves mPos to the end
of the string. The loop back in commaEllipsize then calls mt addStyleRun
again and this causes IndexOutOfBoundsException, because the paint
object is trying to measure text past the text's length.

It seems this was a typo and that the tempMt variable should be used,
because the code is trying to measure the format string...not the
the string to be ellipsized. This makes the saner parts of CTS test
for this method pass now.

Change-Id: Ib6aa6e4bbd6afff4c95ad4c4d51a384cc1389875
/frameworks/base/core/java/android/text/TextUtils.java
42a5ed2015461126bd012d6f8f3e1311e5721807 12-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 171c83f4 to master

Change-Id: I56a4c1838b17cf40d96763f95df3c84fc86359eb
11fe181e16501103d7c0f70344661ea2ef5d3df9 11-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> Add faster TextUtil function for searching delimited lists.

The previous version in Settings allocated memory.

Change-Id: I0f821112dc8f830689489f201ce268195f9e6cbd
/frameworks/base/core/java/android/text/TextUtils.java
e8e45f2c05cb3b6d23f30c8f96d8e0b3699cea7a 29-Mar-2010 Doug Felt <dougfelt@google.com> Refactor Styled utility functions into reusable objects.

This takes utility functions from Styled and a few other classes and
incorporates them into two new utility classes, TextLine and
MeasuredText. The main point of this is to support shaping by skia,
to experiment with how this will look, this also introduces
character-based Arabic shaping.

MeasuredText is used by code that determines line breaks by generating
and examining character widths in logical order. Factoring the code
in this way makes it usable by the ellipsize functions in TextUtils as
well as by StaticLayout. This class takes over the caching of widths
and chars arrays that was previously performed by StyledText. A small
number of MeasuredText objects are themselves cached by the class and
accesed using static obtain and recycle methods. Generally only these
few cached instances are ever created.

TextLine is used by code that draws or measures text on a line. This
unifies the line measuring and rendering code, and pushes assumptions
about how rtl text is treated closer to the points where skia code is
invoked. TextLine implements the functions that were previously
provided by Styled, working on member arrays rather than
explicitly-passed arguments. It implements the same kind of static
cache as MeasuredText.

TextLine and MeasureText simulate arabic glyph generation and shaping
by using ArabicShaping, ported with very minor changes from ICU4J's
ArabicShaping. This class generates shaped Arabic glyphs and Lam-Alef
ligatures using Unicode presentation forms. ArabicShaping is not
intended to be permanent, but to be replaced by real shaping from the
skia layer. It is introduced in order to emulate the behavior of real
shaping so that higher level code dealing with rendering shaped text
and cursor movement over ligatures can be developed and tested; it
also provides basic-level support for Arabic.

Since cursor movement depends on conjuncts whose formation is
font-dependent, cursor movement code that was formerly in Layout and
StaticLayout was moved into TextLine so that it can work on the shaped
text.

Other than these changes, the other major change is a rework of the
ellipsize utility functions to combine multiple branches into fewer
branches with additional state.

Updated copyright notices on new files.

Change-Id: I492cb58b51f5aaf6f14cb1419bdbed49eac5ba29
/frameworks/base/core/java/android/text/TextUtils.java
60919953ce80dbf75673837ea51497c84da7ac78 01-Mar-2010 Mark Wagner <mxw@google.com> check offset and don't crash
/frameworks/base/core/java/android/text/TextUtils.java
973afa96bf184be6b8b5a25963568650e70750f7 03-Dec-2009 Daisuke Miyakawa <dmiyakawa@google.com> Add isPrintableAscii() and isPrintableAsciiOnly() to TextUtils.java as hidden methods, and make vCard code use them.

In the future, ContactsProvider will use those methods.
See also the change 34604

Internal issue number: 2275764, 2195990
/frameworks/base/core/java/android/text/TextUtils.java
c1d2748d442f06a7266be04b9e9c7d20609ad5cc 25-May-2009 Daisuke Miyakawa <dmiyakawa@google.com> Manual merge from cupcake_dcm. Need to be reviewed by enf.
/frameworks/base/core/java/android/text/TextUtils.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/text/TextUtils.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/text/TextUtils.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/frameworks/base/core/java/android/text/TextUtils.java
f1e484acb594a726fb57ad0ae4cfe902c7f35858 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127436
/frameworks/base/core/java/android/text/TextUtils.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/android/text/TextUtils.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/core/java/android/text/TextUtils.java