Required to allow DeviceStateMonitor to monitor changes in car mode to
get an accurate state of when all screens are on/off.
Test: build
Bug: 160898432
Change-Id: If3ad86a2564ce3ba53afea44e8ad5bf02b8d51e0
This change ensures that while parsing a package, we require an explicit
wildcard in the queries->intent->data->host field. Prior to this change,
we were defaulting to wildcard when not provided. This resulted in,
e.g. someone trying to get visibility to just browsers actually getting
access to all packages that handle any web intent.
Fixes: 160868841
Test: atest AppEnumerationTests IntentFilterTest
Change-Id: I771845467928b6655fe19efe89bd2ca548dca6e5
Currently, all buffered layers are included in input occlusion
calculations, the overlay window which can't receive input event
should also need to explicitly opt out by setting window type.
- For overlap window, reuse the invalid input window handle and fill the
necessary fileds, it could also fill some fileds in SurfaceFlinger
because the token is null.
Bug: 160590776
Bug: 158717144
Test: enable pointer location, launch app which would popup grant
permission dialog
Test: atest WindowInputTests
Test: test suite on Cuttlefish API 30
Change-Id: I9d618a0a7d7cef7f8f90200b22138c78ae6d6cc8
Fixes a flicker that occurs during transitions between windows.
This happens for two reasons:
1.) Control is immediately transferred to the new window, and the
previous window didn't get a chance to play the animation.
This is addressed by adding logic to keep control on the
exiting window for the duration of the transition - similar to
what we do with the target for z-ordering purposes.
2.) Upon the input connection being severed, the InputMethodService
immediately hides its window, preventing any animations whenever
the input connection changes
This is addressed by moving hiding of the surface into the
controlling windows - where upon receiving control, we now
trigger removal of the IME surface if we don't show it.
Additionally:
- Now ensures that any requests from the ImeInsetsSourceConsumer
ensure that they come from the window that is currently served
by IMM.
- Removes the transparancy clause from isImeTargetFromDisplayContentAndImeSame
to match the updated IME target computation in DisplayContent in [1].
[1]: Iedd5f7407926167f4891ce9b7e9a79e22751e668
Fixes: 153145997
Fixes: 150902448
Test: atest WindowInsetsAnimationControllerTests
Test: atest DisplayContentTests InsetsSourceConsumerTest
Test: Open app with IME, press HOME button, verify IME smoothly animates away
Test: Open Messages, open a thread, open IME. Click search icon, verify IME opens in the search activity
Change-Id: I4910c2a06cc67b0470477b245fc1de54b75f10f9
With scoped storage, more apps will need to rely on
SAF to get access to non-media files. Allow more grants
by bumping up the limit to 512.
BUG: 149370983
Test: m
Change-Id: I26ae0ff660ecfb846a06fca00de7c1ad41ace2b2
System Server dex files has a special dexopt path while the
OTA service uses a PackageDexOptimizer backdoor which breaks
the assumptions.
Ignore any file loaded by system server until we update the
OTA service to use the proper PMS dexopt paths.
Test: adb shell; /system/bin/otapreopt_script 1
Bug: 160735835
Change-Id: Ic3d0a3127862c99c7e29ce552f6d89c248df1d0c
It was showing up as an unlabeled element, but can't usually
be scrolled anyway. And when it's scrolled it can still be performed
using talkback.
Fixes: 160329869
Test: enable talkback, drag down notification panel
Change-Id: Iaf4785213c58cb9efeb19aff4c164f78cdacfdab
If a requestLayout happens on a child view after the measure
pass, before the layout pass then the child view will not layout.
This can happen if a view calls requestLayout during measure
or during SurfaceView surface destroyed callback.
This fix addresses the second scenario by moving the callback
to after the layout pass.
Bug: 159183008
Test: Repro steps in bug
Test: go/wm-smoke
Change-Id: Ie2794a3751c99cabf6e07445c91159e35eeb1729