This CL logically reverts my previous CL [1], which added an @hide
method
CursorAnchorInfo#createForAdditionalParentMatrix()
as a preparation to support CursorAnchorInfo API on ActivityView.
Now that InputMethodManager#reportActivityView() is removed [2], we
also do not need this @hide method any more too.
Note also that CursorAnchorInfo is now fully tested in CTS rather than
FrameworksCoreTests [3]. Thus it's fine with removing
CursorAnchorInfoTest.java from FrameworksCoreTests.
[1]: Ic7f9057623ffc61ec7a6121735dc39adecf4649d
e4410a135b
[2]: Idd60d96a39f827197d189beb5de016446576d9cd
44c499d853
[3]: Ib758bddff34b4722b39c94e7ad4e8f8da2bb8b92
c4ef1d6ec22dc2af2ed339fd4e78075903783be0
Bug: 115693908
Bug: 179161778
Test: atest CtsInputMethodTestCases:CursorAnchorInfoTest
Change-Id: I0a05453eeed863db5bfe4b965ab4bcbad67f2783
This CL logically reverts my previous CL [1], which re-enabled
CursorAnchorInfo API for ActivityView since ActivityView is finally
removed [2].
There should be no user/developer impact in this CL as
InputMethodManager#reportActivityView()
is called nowhere.
[1]: Id0411a80456182111bb5b681c6d1230b58e7ec2e
b4f328a2f3
[2]: Ic66f3740819634366edb20a34a7c8177af258c2f
5456990f7e
Bug: 115693908
Bug: 179161778
Test: atest CtsInputMethodTestCases
Test: atest CtsWindowManagerDeviceTestCases:ActivityViewTest
Change-Id: Idd60d96a39f827197d189beb5de016446576d9cd
For the Recents gesture animation, the navbar gets attached to
the app while dragging. The actual navbar attach/detach logic
lives in Core, so this change basically hacks the logic into
the core-side of shell transitions. This is ugly and should
be a temporary solution until that behavior can move to Shell.
This also had to add an ugly API on IATM because the lifecycle
of the navbar reparent is different from the transition lifecycle
in this instance because of LiveTiles.
Bug: 188595497
Test: With shell transit enabled, open app, swipe up to recents.
Observe navbar attached to app during drag and put back
on screen afterwards. Also, no more crash.
Change-Id: I1aba53314329e3fd7678a7e8a5fc8ffa0294e395
Currently, TextView uses its default implementation even developers
uses setViewTranslationCallback() to set their customized
ViewTranslationCallback, we should only set default TextView
implementation if developers don't set it.
The onViewTranslationResponse() will call getViewTranslationCallback
instead of getting TextView default implementation directly. This can
make sure we can get the expected ViewTranslationCallback.
Bug: 183467275
Test: manual
Test: atest CtsTranslationTestCases
Change-Id: I41417140f8985aec6c80f1bca3cfba804727d5df
Add an API to WindowInsets that allows apps to see the maximum bounds
of the system privacy indicator
Fixes: 185932128
Test: atest PrivacyIndicatorBoundsTests
Change-Id: I01d9e36ccbbea15752eccadfbce4c54bdd35ed5a
CL[1] used to fix some IME animation issue.
And simplified the check focused view logic.
But when window focus changed, the focused view
may still be null. So ImeFocusdController use the
DecorView to start an new Input and hide keyboard.
Use the focused view after focus change callbacks
when we call onPostWindowFocus as before.
[1]: Ib140801f1ce03b5566e756914f96dacba3ad8892
Bug: 186331446
Test: Manual test with the bug steps
Test: atest FocusHandlingTest#testRequestFocusOnWindowFocusChanged
Change-Id: I2f8fde0b6575db17955ff8b8804b61378f9d6dad
Screen reader(Talkback) will read content description first if the
developers set. We only translate TextView text, this may cause the
screen reader will not read the translated text if the developers set
content description.
To fix the issue, we also send the content description to translate.
When the translated text is shown, we also set content description
with translated content description and reset to original content
description if show original text.
Bug: 187134784
Test: atest CtsTranslationTestCases
Change-Id: I6986384260627a0539780b7293d47666c442d852
This CL revokes navigation bar control to make navigation bar visible
while IME is showing, so the button to dismiss IME would be available.
This CL also lets IME receive visible navigation bar insets, regardless
of the navigation bar visibility.
Fix: 167971834
Fix: 186789472
Test: atest WindowStateTests WindowInsetsControllerTests
Change-Id: I2e723d4fc50d006127caa473d67c2f6af0d2cbcd
There are some Parcelables which offer to perform Binder calls, and
when these are delivered via Intent extras they fallback to
ActivityThread.currentAttributionSource(), instead of being tagged
based on the relevant app component.
This change begins using Intent.prepareToEnterProcess() as a hook to
fix-up AttributionSource when those extras finally land in the
destination process. It uses the relevant AttributionSource based
on the Activity or Service the Intent is delivered to, which
developers have control over via AppComponentFactory.
In the case of <receiver> manifest elements, this change applies the
first android:attributionTags value to the Context used for that
BroadcastReceiver.
Bug: 187097694
Test: atest AttributionTest
Change-Id: I8f5197db7e8d7277d34f0ef2bb90bfdf1871186a
- Switch from PhoneWindow to FrameLayout
- Ensure the Action bar is not shown on the splashscree
- Do not show the contrast scrim under the system bars
- Use the latest insets API to layout fullscreen
Test: Updated CtsWindowManagerDeviceTestCases:SplashscreenTests
Bug: 181852475
Bug: 184941669
Change-Id: Ifc04bd2227394415cc74c20d2974f4726ec9c789
Allows custom Input Method Pickers to exclude relevant IMEs, like the
system picker does now.
Fix: 184890628
Test: atest InputMethodInfoTest InputMethodManagerTest
Change-Id: I20033de2f6679ed8cd538de66e157f737792d847