This patch adds a hidden API to return a hardware canvas with wide color gamut
support. The hardware canvas returned from BaseSurfaceHolder.lockHardwareCanvas
doesn't support wide color gamut, this patch makes sure that a wide color gamut
canvas context is created when calling lockHardwareCanvas.
Verified this approach works by building ImageWallpaper to use this API.
Without this API an 8 bit logo P3 doesn't show the logo, with this API the logo
is shown correctly. See b/74116826 for more info.
BUG: 74116826
Test: Build ImageWallpaper using this API with an 8 bit P3 image
Change-Id: Id20343fabcd7f0873d79ce72a235ea9b7c1f3e77
The terminal shall send the ENVELOPE (EVENT DOWNLOAD - User activity)
command to the UICC when some user activity like a key-press or touch is
detected if the user activity event is a part of the current event list.
This change allows the SIM Toolkit application to support that event.
Please refer to the specification of SET UP EVENT LIST command described
in ETSI TS 102.223.
Bug: 65884891
Test: Confirmed the expected seq 1.1 of ETSI TS 102.384 TC 27.22.4.16
Change-Id: I7d3faa09cd4625db53bcfe21f90570389a4ea037
We were using an int for a bitmask, but the number of
standard actions reached 32 with the tooltip actions.
Switching to long.
This CL is mostly ag/3662206, but that CL did not
convert everything to ints.
Bug: 73897184
Test: AccessibilityNodeInfo tests caught this bug. I've also
enhanced it to make sure that all standard actions work
across parceling.
Change-Id: I2adae3ec34ac327af354449fbe6511f01cc30b2f
(cherry picked from commit c9bf45564b)
Provides a better estimate to the ViewRootImpl about the likely
window frame size than it can get from the configuration, which
allows it to avoid unneccessary measure passes.
Bug: 73813813
Test: atest PhoneWindowManagerLayoutTest
Change-Id: Ia4de6509416d90eed61929ce1646904c31afdd8d
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