Fixes an issue where input intended for the keyguard could end up going
to a different display.
To prevent this, make sure that only the default display can get focused
when the keyguard is showing.
Change-Id: I6463c44aedca06930d2c9bda7c45ffd93141308c
Merged-In: I6463c44aedca06930d2c9bda7c45ffd93141308c
Fixes: 71786287
Test: atest DisplayContentTests
- KEYCODE_ASSIST: Looks for default VIS in system partition
and launches it.
- Ensure foreground activity assist context extras are collected
and sent to VIS.
- KEYCODE_ALL_APPS: Sends Intent.ACTION_ALL_APPS. For TV,
this targets default launcher package in system partition.
Test: Manual: ASSIST: adb shell input keyevent 219
Test: Manual: ALL_APPS: adb shell input keyevent 284
Test: also tested with --longpress for these keys
Test: Manual: Checked with dummy app populating overridden
onProvideAssistData()
Test: Keypresses after overriding ALL_APPS and ASSIST
on Nexus Remote
Bug: 37950079
Bug: 38496261
Change-Id: I96d9de67d4a442a8c6cb7feec28fc9aeb0dcbc18
Bug: 62196835
Test: I solemnly swear I tested this conflict resolution.
Merged-In: I1a3e3c5b1696a5f5b95eac187acb5a03863b4a0b
Change-Id: Ib00a23ae9a329cfc102b1a116b5a585be36b56f6
Replacing app opps fix with the flag that is used
elsewhere.
Bug: 37442941
Test: Verified that toast and system overlay still goes
away on permission and a11y service capability screens.
Merged-In: I1a3e3c5b1696a5f5b95eac187acb5a03863b4a0b
Change-Id: If9bec515105369055415d54c7fcad7a65431f8e7
Rolls back one line of ag/2257919.
Bug: 63811145
Test: TalkBack no longer reads the page backwards in:
Settings > System > Reset > Factory data reset
Settings > Connected devices > Android Beam
Change-Id: I6b04e64cd650ebda193da4a54bf0721bd256820c
The events were ending up not important for a11y and
with invalid window ids, which prevented TalkBack from
seeing them properly.
Bug: 64428961
Test: Ran YouTube in PiP, now able to select it.
Change-Id: I38ccbf5f2f35ffda255b84f229e98ca23e6b11aa
Add black background behind letterboxed apps on displays with tall
aspect ratio. This is needed to make sure that other windows won't
bleed through status/navigation bar area, because letterboxed
windows are not considered fullscreen.
Bug: 63156733
Bug: 62893418
Test: go/wm-smoke
Test: Trigger animations to/from recents with different rotations.
Change-Id: If0eac9a3801518185d560a87d9f88ee0aafa3a9c
Consider this VirtualDisplay (VD) scenario:
HostActivity creates a VD which holds SettingsActivity. When EditText
on SettingsActivity is tapped, it gains focus.
On eventual taps, it loses focus i.e. the Window in VD loses focus and
the host activity in primary display gets the focus instead. This
happens because WM's TaskTapPointerEventListener.onPointerEvent()
is called on the default display only.
Root cause:
1. Tap detector isn't registered for non-default display.
2. Tap detector has no info on which displayId touch was received.
3. InputFlinger doesn't deliver InputMonitor events for
non-default displays (fixed in a separate CL)
Fixing above results in onPointerEvent(MotionEvent) to deliver the
Touch events successfully to VD. We restrict these changes to physical
multi-displays and VR VirtualDisplays (which uses virtual touch device).
[VrManagerService calls WMInternal.setVr2dDisplayId(int)]
In future, displayId should be part of InputEvent. Bug: 64258305
Bug: 62033391
Test: bit FrameworksServicesTests:com.android.server.wm.DisplayContentTests
Change-Id: I3626f4de5aa9bcf905da9abd39f3ab1baefc4c48
Instead of ANR in an infinite loop, this will detect
a cycle and return null.
Bug: 62960867
Test: Added in CTS FocusFinderTest#testChainVisibility
Change-Id: Ifb4638e3350642f065c40b3bea112cc12efff447
We need to omit it from screenshots, and screen mirroring, so SurfaceFlinger
will have to have some knowledge. Eventually we'd like to do this by
having everything else have a parent, and mirroring and screenshotting will
operate on that parent. Since we aren't comfortable doing that for DR though, here's
a quick and dirty hack to tide us over with low risk.
Bug: 63311708
Test: screencap, screenrecord, android.view.cts.SurfaceViewSyncTest
Change-Id: I2b43be00567ee19cf27aeef344e5415f4a69297f
The presence of these new flags leads to issues with application that
do not expect their presence. Since these flags can appear at
critical times, such as on orientation change, these issues are
brought to the surface often.
This CL remedies this problem by first removing the rotation
property. It is not used and the original issue of orientation and
Configuration alignment has been addressed. For app bounds, the CL
reverts the behavior back to identifying diffs as a screen size
change.
Fixes: 64004417
Test: bit FrameworksServicesTests:com.android.server.wm.AppBoundsTests
Test: go/wm-smoke
Change-Id: I1fabb564dfb5c13d897336708523cf7cd5099fa0