This commit is part of a large scale change to fix errorprone
errors that have been downgraded to warnings in the android
source tree, so that they can be promoted to errors again.
The full list of changes include the following, but not all
will be present in any one individual commit:
BadAnnotationImplementation
BadShiftAmount
BanJNDI
BoxedPrimitiveEquality
ComparableType
ComplexBooleanConstant
CollectionToArraySafeParameter
ConditionalExpressionNumericPromotion
DangerousLiteralNull
DoubleBraceInitialization
DurationFrom
DurationTemporalUnit
EmptyTopLevelDeclaration
EqualsNull
EqualsReference
FormatString
FromTemporalAccessor
GetClassOnAnnotation
GetClassOnClass
HashtableContains
IdentityBinaryExpression
IdentityHashMapBoxing
InstantTemporalUnit
InvalidTimeZoneID
InvalidZoneId
IsInstanceIncompatibleType
JUnitParameterMethodNotFound
LockOnBoxedPrimitive
MathRoundIntLong
MislabeledAndroidString
MisusedDayOfYear
MissingSuperCall
MisusedWeekYear
ModifyingCollectionWithItself
NoCanIgnoreReturnValueOnClasses
NonRuntimeAnnotation
NullableOnContainingClass
NullTernary
OverridesJavaxInjectableMethod
ParcelableCreator
PeriodFrom
PreconditionsInvalidPlaceholder
ProtoBuilderReturnValueIgnored
ProtoFieldNullComparison
RandomModInteger
RectIntersectReturnValueIgnored
ReturnValueIgnored
SelfAssignment
SelfComparison
SelfEquals
SizeGreaterThanOrEqualsZero
StringBuilderInitWithChar
TreeToString
TryFailThrowable
UnnecessaryCheckNotNull
UnusedCollectionModifiedInPlace
XorPower
See https://errorprone.info/bugpatterns for more
information on the checks.
Bug: 253827323
Test: m RUN_ERROR_PRONE=true javac-check
Change-Id: I454a105ae82484a2d19aff1808e8d9dd55ba64f4
The ArrayEquals, ArrayHashCode, ArrayToString, and
ArraysAsListPrimitiveArray errorprone findings were
demoted from errors to warnings. Fix existing
occurrences of them so they can be made errors again.
Bug: 242630963
Test: RUN_ERROR_PRONE=true m javac-check
Change-Id: I689397a7196277de3fd301836e72f7555e2036cb
Remove the showDictionaryAvailableNotification
method since there is no module use it.
Bug: 209479751
Test: presubmit
Change-Id: I4c88b4a2d0cb36761d9102ce35260f93303625d9
The keyboard key-press haptic feedback should follow the user
settings for "Touch feedback".
Bug: 185351540
Test: manual
Change-Id: I718d3bf15b1ef841a869a898038d0eca1eca78f0
With CL[1],[2] to migrate InputMethodService as the subclass of the new
introduced class WindowProviderService in S_V2, IME context resources
can be managed by associating the window container of IME window when
its display/window configuration changed.
So we can get rid of createDisplayContext logic from S_V2 with gated
by SDK version and refining the method of get IME context with
documentation to make it clear.
[1]: Ie565e30ed5dd3f2cfe27355a6dded76dc3adc14b
[2]: I64a1614f32d097785915f6105b1813a929e0fe32
Bug: 213118079
Bug: 133825283
Test: manual with below steps
1) adb install -r EditTextVariations.apk
2) tapas LatinIME
3) make
4) adb install -r out/target/product/generic/system/app/LatinIME/\
LatinIME.apk
5) adb shell ime enable com.android.inputmethod.latin/.LatinIME
6) adb shell ime set com.android.inputmethod.latin/.LatinIME
5) Enable screen auto-rotation
7) Launch EditTextVariations from launcher's shortcut
8) Tap the first EditText field to show IME
9) Rotate the device to the landscape mode
10) Expect the IME should not be shrunk
Change-Id: If2cc1c5bdb257a9c0af653fa7157cf781a90bf1d
As CL[1] introduces diplayContext to address
IME service context's Resources / DisplayMetrics update when
switching IME window to another display after onConfigurationChange.
In LatinIME#onInitializeInterface, we only update keyboard theme context
and displayContent when the displayId is changed, but overlooked even
the displayId is the same, the display context's resource configuration
might changed like the device orientation changd.
It leads getDefaultKeyboardHeight will get wrong config_max_keyboard_height
fraction value when rotating to landcape because the context resources
didn't get updated.
Add a check to update keyboard theme context when the current display
configuation is changed accordingly.
[1]: I0ed6a079af1ed90c75fee1d36d5ce3ef3c41f8ed
Fix: 186507147
Test: manual as issue steps
1) Turn on auto-rotate
2) Open Settings
3) Rotating the device to landscape mode
4) Tap “Search settings", verify if the soft-keyboard shown and the
size is expected.
Change-Id: I288a31baf04fa2e63d6b4a14ad81b401cb36ece5
Merged-In: I288a31baf04fa2e63d6b4a14ad81b401cb36ece5
With this CL, versionCode, targetSdkVersion and minSdkVersion will be
bumped/set as follows:
versionCode: 28 -> 30
targetSdkVersion: 28 -> 30
minSdkVersion: 21
As far as we know, there should be no user-visible behavior change on
supported OS versions.
Fix: 189558760
Test: manually verified that LatinIME still is functional
Change-Id: I3a7deb452960b370f5290f3d1bac9c79fe935303
Merged-In: I4bf7588c62fb77bf78d4afcb665e9bfbbef53966
(cherry picked from commit 360052f304)
We are enabling a new lint check where the min sdk != compile sdk.
It has produced a lot of errors and adding the baseline file(s)
allows us to continue work without introducing more problems.
Bug: 150847901
Test: m lint-check
Change-Id: Ic37bd8c531af7e68c939ce9c05614c37e6699b03
With b/150232615, we will need an explicit value set for the exported
flag when intent filters are present, as the default behavior is
changing for S+. This change adds the value reflecting the previous
default to the manifest.
These changes were made using an automated tool, the xml file may be
reformatted slightly creating a larger diff. The only "real" change is
the addition of "android:exported" to activities, services, and
receivers that have one or more intent-filters.
Bug: 150232615
Test: TH
Exempt-From-Owner-Approval: mechanical refactoring
Change-Id: Idc43e262fd2911e19f0bcd20add29e4c3392d3da
Although modern Greek is typically written with only acute accent marks,
polytonic diacritics are still used by the Greek orthodox church, the
Greek newspaper Estia, and students of classical Greek texts. Supporting
these special characters is helpful to all of those groups.
Note that for the short vowels (epsilon, upsilon, iota, and omicron) all
of the diacritics permitted on lowercase letters are also permitted on
their uppercase forms. However, for the long vowels (alpha, eta, and
omega) the diacritics permitted on uppercase letters are a subset of the
diacritics permitted on lowercase letters. That's just how Greek is.
Test: Manually turned on the Greek (Greece) keyboard in the aosp_x86-eng
emulator and tried out all the new characters with Shift, with Shift
Lock, and without any modifiers.
Bug: 142007431
Change-Id: Iec4a82cab02aea5176721e8447f7dfdba46bacb3