This reverts commit e77386e8fb [1].
Reason for revert:
The protocol is not yet ready to be exposed and we are still unsure
what is the best approach.
[1]: Ie86edafd1ed68b58f702116f561fc448fdbb57a8
Bug: 7031513
Bug: 72522601
Fix: 74087970
Test: atest CtsInputMethodTestCases
Change-Id: Ia61dc9b3d5b116199382994430fb16ee804942b3
Systemui can control when to allow vibrations on virtual key vibrations
on key down when overview proxy service is connected. This prevents
vibrations from KeyButtonView when swiping up over a navigation button.
This gives more control over haptics to systemui so that in the future
launcher can send haptic feedback when quick step begins.
Bug: 73919295
Bug: 73942704
Test: swipe up from navigation bar
Change-Id: I5de2a6f199d7e08b4d146e729f4b9c89b2adcded
Recently we successfully removed the restriction that up to one
SpellCheckerService can be active at the same time [1]. This still
makes much sense at high level, but at the ecosystem level there are
still some products / components that depend on the previous behavior
that child profile users can use parent profile's spell checker
service, which was originally introduced as a stopgap solution for
Android N MR1 [2].
Our decision for Android P for now is to revert back to the previous
behavior only when the calling process is running under work
profile.
At the implementation level, we can summarize the new behavior as
follows:
* When TextServicesManager APIs are called from work-profile
processes, those API calls will be evaluated with parent-profile's
user ID to match the previous behavior [2].
* If the currently selected spell checker is not a pre-installed
one, then API calls from work profile will fail to match the
previous behavior [2].
* When TextServicesManager APIs are called from non work-profile
processes, those API calls will continue being evaluated with
calling user ID, as we planned for Android P [1].
* TextServicesData will not be created for child profile users.
[1]: I06c27ef834203a21cc445dc126602c799384527b
06a2624049
[2]: Iae9045ba5baccd04ed68906e7afb9160677ec4a5
095fa37164
Bug: 63041121
Bug: 64718412
Bug: 70922751
Bug: 73609140
Fix: 73862883
Test: atest FrameworksCoreTests:com.android.internal.textservice.LazyIntToIntMapTest
Test: Manually tested with Test DPC as follows:
* When AOSP Spell Checker is pre-installed and the current spell
checker, both main profile and work profile can use AOSP spell
checker.
* When SampleSpellCheckerService is side-loaded and the current
spell checker, only main profile can use
SampleSpellCheckerService.
Change-Id: Ic046f832f203115106409a53418a5746eb6d4939
ag/3434666 causes a regression:
Before ag/3434666, autofill gets touch event after IME, autofill
close itself if it gets ACTION_OUTSIDE touch event.
But after ag/3434666, autofill intercepts touch events before IME, if
user touches within IME, autofill still gets ACTION_OUTSIDE event,
and close itself unexpectedly.
The fix moves the closing code to ViewRootImpl.EarlyPostImeStage
around the same place closing tooltip.
If user taps outside autofill window, we will force to close window,
even last autofillid that requestShowUi does not match.
Bug: 73796497
Test: atest CtsAutoFillServiceTestCases
Test: Added LoginActivityTest.testAutofillTapOutside
Test: manually tested using IME and sample app
TODO: need a fake IME service to dispatch given key upon touch.
Change-Id: I10fc0d29dc30d29a48b2118264ec1c4375062deb
Bug: 72747726
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationConstantsTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Change-Id: I0d6cb5eaf3f9baa0564672c4d4b680fb00f40a51
Accidentally had enabled state effecting children in setFlags
which would sometimes cause child views to lose focus when their
parents changed enabled state.
Bug: 70718160
Test: Trello app issue fixed.
Added regression test View_FocusHandlingTest#testEnabledHandling
Change-Id: Idcd672d833969d11b235357230ce2f560dd90c43
Currently it's only in place applying for operations on the global transaction.
Bug: 70666541
Test: Manual
Change-Id: I5c2facba14c783bad0d3aca0e8b66fea73df0776
First we have the client pass up the next frameNumber from relayoutWindow
and then we simply deferTransactions at the WindowState level until
this frame number is reached. This was always a little terrifying
because deferring transaction effecftively meant we gave up
control of the surface until the frame number was reached. However now
we can still control the surface from the stack and other SurfaceControl
nodes and so the window can still be moved around and animated even if
the client is unresponsive.
Bug: 70666541
Test: Manual. go/wm-smoke
Change-Id: I2fecbeaa30fc0eb9cc8f08e1ea734dcc65da0aa0
- Draw over other apps
- Camera
- Microphone
The icons are not yet clickable, and the system 'drawing over
other apps' notification still appears even when the app's
notification is tagged.
Test: runtest systemui
Bug: 64085448
Change-Id: Ib3b0cdd9adced82f562f256cb81af80dc395440d
Allows native apps to request a layoutInDisplayCutoutMode without
having to implement a custom NativeActivity subclass.
Change-Id: I0b7fd4624e89fabe177462d615360442f72a1e11
Fixes: 73807928
Test: atest PhoneWindowTest
Also updates flags list.
Bug: 72946306
Bug: 72946123
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationConstantsTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Change-Id: I8af9d3d1da01836fbadcbbf6ce7c1c0db7456a05
This reverts commit 574aea0f1b.
Reason for revert: Crashes sometimes (chaselist issue)
Change-Id: I1440ef7a002e85c3e020d424f13073ca2516dd9c
Fixes: 73991490
Only used by a test which is now deleted. Obsoleted by protobuf
tracing.
Bug: 70693884
Test: Boots
Change-Id: I3bc95880afc0e72bb05640cdd18a916fbb664eae
This method returns config_showMenuShortcutsWhenKeyboardPresent value.
It is necessary for the correct support library implementation of menus.
Bug: 31045453
Test: build and flash Android
Change-Id: Ibdd354b2d00f0c5f5ed91aa4840e942d772516ef
If we have another process running a remote animation, we need to
elevate its scheduling priority in order to achieve a smooth
animation. To do that, we set the priority as if it would be the
top app.
Test: go/wm-smoke
Test: Capture trace, open/close apps/recents, inspect priority in
trace.
Change-Id: Ia167eeff95700d86e96e96a984099f1e28040b59
Fixes: 73555925
Previously, the code calls destroy which will be invoked immediately so there
needed to be ways to delay destroy. This caused some overhead where there
needed to be Runnables to ensure client state updates were called before the
destroy. Instead, use the Transaction.destroy so the destroy doesn't get invoked
until apply is called. This allows any other client states to get updated before
the destroy is called.
This is specifically necessary for reparent calls since a Surface can be
reparented from a Surface that's about to get destroyed to a valid Surface
that's not getting destroyed. This change ensures that Surfaces will get
reparented before Surfaces are destroyed when Transactions are applied.
Original CL: ag/3573288
Reason for revert: Original issue is fixed in ag/3647191.
Fixes: 72953020
Test: SurfaceAnimatorTest
Change-Id: I8bc58e0efc2ae1558c122a40eb52e9c874c0c997
From the Autofill workflow point of view, each view has an unique AutofillId
that is used to semantically, semantically identify the view. Currently, once
the View's AutofillId is set it cannot be changed, which make it hard to reuse
views for optimization (for example, in a RecyclerView).
This change introduces 2 new APIs (View.setAutofillId() and
Activity.getNextAutofillId()) that let app developers reuse views without
breaking their logical autofill semantics.
Fixes: 73555342
Test: atest CtsAutoFillServiceTestCases:MutableAutofillIdTest
Test: atest CtsAutoFillServiceTestCases
Change-Id: I35fe07b10657f17d7b260f90f578ca7a13782a18
Using the new accessibility pane title API
to identify the pattern, pin, and password unlock
screens.
Bug: 73131182
Test: Verified that accessibility events are properly
sent when unlocking the phone with each of the lock
methods.
Change-Id: I32594f4736b503e7f9e3be96e9f77a84ffcadc54