There's a scenario that the display is removed before DAOrganizer callbacks
propagate to the client side.
This CL checks if the display still exists before applying
DisplayAreaInfo changes.
Test: manual - repro steps in bug
fixes: 182790285
Change-Id: I1180ca6bea4e5bd87f22298483400c9d604bae06
It looks like the empty branding view was causing the underlying
view to bleed through it so ensuring that it is removed if empty.
Bug: 182708883
Change-Id: I868931768bed5b083433fd5222720724bfe3e60e
* changes:
Add trace for tracking the performance of new starting window
Force enable hardware accelerated for starting window
Pre-draw AdaptiveIconDrawable and cache it before doFrame
Currently the hardware acclerated was disabled for starting window, we
will need to enable it to fix the reveal animation janky.
With software rendering, each frame would cost 20~30ms on redfin.
Test: atest KeyguardTests KeyguardLockedTests SplashscreenTests
Bug: 182708883
Bug: 173975965
Change-Id: I4df6891e0b24231b7fd3a1d2d630ca2b9eead79f
The AdaptiveIconDrawable can spend much time which will impact the
time for first window drawn. But usually there is a small time
between setContentView to doFrame, we can use this gap to pre-draw
the AdaptiveIconDrawable and cache it since we already know the size
and it won't change anymore.
Bug: 173975965
Test: atest StartingSurfaceDrawerTests SplashscreenTests
Change-Id: I759de2e1b4025dd150532f3fd5c67d1b404f56a0
Revert "Update GoogleWifiTrackerLib min_sdk_version to match Wif..."
Revert "[WifiTrackerLib] Put @hide methods in separate wrapper p..."
Revert "Update TwoPanelSettingsLib min_sdk_version to match Sett..."
Revert "Update BluetoothServices min_sdk_version to match Settin..."
Revert "Update DroidTwoPanelSettingsLib min_sdk_version to match..."
Revert submission 13842044-wifitrackerlib-hideapi
Reason for revert: build breakage
Reverted Changes:
I85b8ed34a:[WifiTrackerLib] Put @hide methods in separate wra...
I891f51aab:Update DroidTwoPanelSettingsLib min_sdk_version to...
If8e82e047:Update GoogleWifiTrackerLib min_sdk_version to mat...
I4529627fb:Update BluetoothServices min_sdk_version to match ...
I87b46a09b:Update TwoPanelSettingsLib min_sdk_version to matc...
I65a3246b4:Update min_sdk_versions to match WifiTrackerLib
Change-Id: I083b764b42e5cf5476b1ec9ed3a9b2d5ed12afc9
Add new API for developer to customize starting window, set a
background color behind the icon.
Also masking the AVD and icon background like AdaptiveIconDrawable.
Ref doc: go/improved_app_launch_animations
Bug: 73289295
Test: atest SplashscreenTests
Change-Id: Ibba49ecc3ca020022cf775fed302e383908be327
1. Update the flag of DEVELOPMENT_ENABLE_NON_RESIZABLE_MULTI_WINDOW
during tests.
2. Before, the tests only checked whether the app window/layer became
visible/invisible, which could also happen during opening recent. Now,
we also check the visibility at the end.
Bug: 182235458
Test: atest WMShellFlickerTests
Change-Id: Ibc7b359d600a0e4105cc3a84b3111d59813eb9f1
- Expose interfaces for splitscreen, one handed, shell transitions,
starting window
- Make the shell code only reference the starting window controller and
not the exported interface
Bug: 180074017
Test: atest WMShellUnitTests
Test: Verify Pip calls from Launcher work
Change-Id: Idafed90a8ed3382adfb4322b4b1797237be86a90
- Also split impl and controller for ShellInit/ShellCommandHandler
(as with ag/13502602)
- Example implementation of exposing a subset of the Pip interface to
Launcher directly. This has the benefit of reducing unnecessary code
in SysUI just to pipe calls to the Shell.
The controller implements the binder interface which is collected
and exposed to Launcher when it binds to the overview service
and Launcher can call through the binders directly.
Note: this requires the shared lib to also build with the Shell
interfaces so changes to the Shell aidls will still require updating
the shared lib (until the shared lib prebuilt can removed).
Bug: 180074017
Test: atest WMShellUnitTests
Test: Verify Pip calls from Launcher work
Change-Id: Id74114da6a6a73d32c957f84fce5bbe23e87ba01
Note:
1) The "Swipe bottom for notification" will still available
in Settings
2) If user had ever turn ON this settings, then we will NOT help
user change() any setting for this purpose.
Test: facory reset and observe the default function if OFF
Test: atest WMShellUnitTests
Bug: 182711813
Change-Id: Iaea9c31e263d4b86096aeecf5287c7c738a5c69e
- Refactor OneHandedSettingsUtil.java
- Remove redundant test for SettingProvider
New policy: b/175024829
Settings key: <one_handed_*> is not readable.
From S+, new public settings keys need to be annotated
with @Readable unless they are annotated with @hide.
Recent changes :
ag/13764747 Remove @Readable for hidden fields added in S
Test: atest WMShellUnitTests
Bug: 183064974
Change-Id: I85bf3680cbcdba4c85aa96de058bc85cfabead46
These flaky tests have been stable for the past week and can be promoted
Test: atest WMShellFlickerTests:com.android.wm.shell.flicker.pip
Bug: 171049720
Bug: 167521849
Change-Id: Ibd78e9d9e53a5712ca781b265b1b65c830a74c08
New policy: b/175024829
Settings key: <one_handed_*> is not readable.
From S+, new public settings keys need to be annotated
with @Readable unless they are annotated with @hide.
Recent changes :
ag/13764747 Remove @Readable for hidden fields added in S
Test: atest WMShellUnitTests
Bug: 183064974
Change-Id: I185491189a3804d7038be3c117583ab571e7a961
Remove the internal timeout to clean up the starting window, for now on
the developers are responsible for removing it.
- Also clean up some redundant members.
Bug: 181838419
Test: atest SplashscreenTests
Change-Id: Iebcccbca454eb7fda4bed637cb5866deec36cf6b
Bug: 182509392
Test: enter PIP, stash, open chrome to trigger offset - verify back
gesture works correctly
Change-Id: If80ec31035d7da9718267133e10493bd2a363495
This puts display-content as another WC in a transition. It then
adds WC rotation to change tracking. If there is a rotation,
the shell-side handlers will play the transition.
This replaces ScreenTransitionAnimation, seamless-rotation, and
fixed-rotation:
ScreenTransitionAnimation implementation will move to shell.
seamless-rotation is redundant because the rotation setup is
intrinsically "seamless": it requires shell to imbue an
animation onto it rather than just doing the jump-cut.
fixed-rotation is now just a custom animation where we
counter-rotate the closing app on frame 1 and then perform
the normal open animation on the opening app.
Bug: 179270750
Test: DisplayContentTests#testShellTransitRotation
enable shell transitions and rotate the device or launch
and close apps in different orientations.
Change-Id: I4bc23b2e614ba85bf9752f62da4c3f8d0c90436d
Insets source window can be moved by the display area policy so that
the window would not on the edge of the display. This makes the window
cannot provide insets to the display frame. The default animation uses
the display frame to compute insets, so the moved types cannot be
animated properly.
This CL adds an insets hint to InsetsSourceControl. It is the insets
computed from its owning window bounds. With the insets hint, the insets
animation can be played regardless of the display frame.
This CL also fixes an issue that the insets animation would be played in
the wrong direction by the fixed-rotation window.
Bug: 175775686
Fix: 181939099
Fix: 163018915
Test: atest ImeInsetsSourceConsumerTest InsetsAnimationControlImplTest
InsetsControllerTest InsetsSourceConsumerTest
DisplayImeControllerTest
WindowInsetsTests (manual)
Change-Id: Ic6a8a215bd9b3a3b1af18e425dabe803c9be323e
We will use splash screen as starting window if the activity is in
finishing state. Now we will not use the activity with finishing
state to show the starting window, so we check the top activity
component to avoid using obsoleted snapshot as starting window.
Bug: 180893837
Test: atest ActivityStarterTests ActivityRecordTests
Change-Id: I27fb40d6d4e8808caf803ef78c39050258eab1a2
It is already possible to ignore windows/layers on the verification of visibleWindowsShownMoreThanOneConsecutiveEntry and visibleLayersShownMoreThanOneConsecutiveEntry. However many tests need to manually add the Snapshot and Splash Screen entries.
Those entries are not guaranteed to show for more than 1 entry, they depend on the app behavior and when the SF actually renders the information sent by WM.
This CL removes those windows by default from the verification and refactor the tests to make it easier to update in the future
Test: atest FlickerTests WMShellFlickerTests
Bug: 182720234
Change-Id: I0e3346e078515b3e9a2065256ac04696acfa59fb
Splits the connection callback out from the session
callbacks.
Use ListenableFuture at the ScrollCaptureClient layer
to safely chain together futures, provide a better
exception handling/reporting path, and allow for
cancellation of background tasks.
Bug: 180671218
Test: atest ScrollCaptureClientTest ScrollCaptureConnectionTest
Test: atest ScrollCaptureFrameworkSmokeTest
Change-Id: Ibc8536d12a5554f62b3d7e1f4f717d3589ec45e0