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 CL introduces fontDefault flag to keyLabelFlags of Key attribute
to reset font specification to keyTypeface attribute.
This is a followup of I065824f3fa.
Bug: 6911143
Change-Id: I33bd4a23aaea73e2b17175ddd39053ec915d5451
With this CL, Intent#ACTION_MY_PACKAGE_REPLACED will
not only update the visibility of the setup activity but
also reconstruct additional subtypes.
This is important because the system always removes all
the additional subtypes whenever the package is updated.
BUG: 15890448
Change-Id: Ic36ea68f50b1ac89b4cbd268ee53f9a5e5d60afd
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
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
...otherwise we can't recompute the composition when we
change scripts.
This also fixes when we register that we need to take note
that the current subtype was used. Luckily this is a good
occasion for some cleanup that I've wanted to do for some
time: use InputTransaction for onTextInput (with the goal
to ultimately remove it entirely)
Bug: 15840116
Change-Id: Ie4f4f9157b66b79237eeb3db75535803124d3e19