This is a groundwork for enabling LocaleSpan.
To enable LocaleSpan everywhere, we need to switch to
CharSequence from String so that Span infromation can be
preserved end-to-end. To achieve this, we need to have
CharSequence version of String#split.
BUG: 16029304
Change-Id: I0dd103185dcf62fb1e25054a374340790e6a4678
This CL simplifies the wrapper method for
TextInfo#getCharSequence() because in the almost all cases we want
to use the result of TextInfo#getText() as the default value.
BUG: 16029304
Change-Id: I62f987aed8ca42b093255e6c0703d6120fa01299
This is a groundwork for enabling LocaleSpan support in spell
checker service. TextInfo#getCharSequence is supposed to be
available in API Level 21 and later. We need some abstraction
layer as usual.
BUG: 16029304
Change-Id: Iafbf2877db393dbd040295c21d429334e3a13a5f
This is a groundwork to attach LocaleSpan for committed text
in LatinIME.
This CL adds a utility method to ensure that a given range
of the text is coverted by at most one LocaleSpan. Of course
it could be possible to allow a substring to be coverted by
multiple LocaleSpans at the same time, but ensuring uniqueness
for LocaleSpan is supposed to be a good starting point.
BUG: 16029304
Change-Id: Ic33a7178d0df1f05d3626aeb5773ec902254703f
This is a groundwork for enabling LocaleSpan support.
LocaleSpan is available in API Level 17 and later. We need some
abstraction layer as usual.
BUG: 16029304
Change-Id: Iead1afdc540216edb1b17f91a40d9edb2e790168
This CL removes following methods from StringUtils, which are
no longer used since Id3c262386a7bc7ed75966b1395a50171abe550d3.
- #joinCommaSplittableText
- #appendToCommaSplittableTextIfNotExists
BUG: 16000850
Change-Id: Ibdc9b7e463a19cdfac788b24c0a6322d0c5850c5
This CL consolidates the initialization logic for additional
subtypes so that each additional subtypes can have predictable
subtype ID regardless of OS version.
Previously subtype IDs for additional subtypes are calculated
differently depending on the running OS version with hoping it
minimizes the risk of compatibility issues. However, it is
getting harder and harder to maintain slightly different
logic between OSes. Thus we decided to unify the logic into
that in KitKat even though it may causes some breaking changes.
Note that the actual extra values that are used to instantiate
InputMethodSubtype object are still determined on the fly
depending on the running OS version. However these actual
extra values are no longer used for the subtype ID calculation.
BUG: 16000850
Change-Id: Id3c262386a7bc7ed75966b1395a50171abe550d3