- Remove some currently unused pip interface methods
- Remove some usages of handler
- Remove update thread (will eventually run on shell main thread)
Bug: 161979899
Test: atest WMShellUnitTests
Change-Id: If97e5182e396029120f0d0fb9e730ece93cddcc8
Signed-off-by: Winson Chung <winsonc@google.com>
The tests are stable in postsubmit, so they can be moved to presubmit
Bug: 162923992
Test: atest FlickerTests
Change-Id: Ie691d8ae11672337e46529b26cc358f99e5a0bf4
The tests are stable in postsubmit, so they can be moved to presubmit
Bug: 171049720
Test: atest FlickerTests
Change-Id: I116157823f192ce31473d2d7d33ae7b8bf4e7a43
Use media projection instead of the shell command for screen recording.
Test: atest FlickerTests
Bug: 177077842
Change-Id: I9ac7351bf04004b5512316232637fd5cc2dd5fcc
After this CL each assertion in the AppPairs test will appear as independent tests
Bug: 162923992
Test: atest FlickerTests WMShellFlickerTests
Change-Id: Id704301b3396c4330001ef639faed6e978237f10
Runner now prints each assertion individually to aid debugging.
Bug: 162923992
Test: atest FlickerTests WMShellFlickerTests
Change-Id: I1c9a49ec3c283e5e034f0223573fca3ccafaf64c
This does the basics to adapt recents animation to shell transition.
Replaces startRecentsActivity with a normal startActivity. Once
we make a full switch to shell transitions, we can hopefully remove
it.
Updates the TransitionHandlers in shell and RemoteTransitions to
support attaching a WindowContainerTransaction to a transition's
finish. For recents, this is used to move the "pausing" app (the
one getting animated into the recents carousel) back to the front
if the gesture doesn't go all-the-way into recents.
Bug: 162503077
Test: enable shell transit. launch an app, use gesture to open
recents. use gesture to start going to recents, but then
release early to return to the app.
atest ShellTransitionTests
Change-Id: Ied54f1b2c70c5c129b2f5798117d6d8a85360998
1) Move UiEventLogger from static to non-static
2) Rename to OneHandedUiEventLogger to align wm-shell components
3) Remove unused code from OneHandedUiEventLogger
4) Refine the call of stopOneHandedWithUiEvent()
5) Only register TaskStackListenerCallback when enabled
6) Override getId() in the enum to ensure UiEventLoggerImpl
can obtain the event corresponding id accordingly
Fixes: 176513465
Test: adb shell cmd stats print-logs
Test: manual + statsd_testdrive -terse 90
Test: atest WMShellUnitTests
Change-Id: Ic2fb1a2bbf87e647b0883d50b64ced53aa37d613
b/177374067 indicate OpenAppToLegacySplitScreenTest still flaky
1) Extend the filter in visibleLayersShownMoreThanOneConsecutiveEntry()
- Toast window
2) When going split transition, waitForAppTransitionIdle() at end
3) Enable navBarLayerIsAlwaysVisible() & statusBarLayerIsAlwaysVisible()
Test: atest com.android.wm.shell.flicker.legacysplitscreen
Test: Set TEST_REPETITIONS to 100 and run flicker test stressfully
Bug: 177374067
Bug: 176923301
Bug: 176134495
Change-Id: I1caface176f4af591d5383877c81b786eb23ba58
This adds IRemoteTransition interface for other processes (like
launcher) to register for playing transition animations.
Then there are 2 supported ways to "register":
1. Is to attach an IRemoteTransition to ActivityOptions. To
support this pathway, requestStartTransition now takes a
TransitionRequest object which can contain whatever info
is needed at the time. One piece of that is the passed-in
IRemoteTransition.
2. Is to register directly with shell (via systemuiproxy for
now) with a TransitionFilter. This filter allows shell
transitions to dispatch a transition to a remote without
need to make queries over binder.
This also hooks up launcher animations by converting the new
transition info to the old RemoteAnimationTargetCompat stuff.
Bug: 169035082
Test: launch app from launcher and observe the icon animation.
atest ShellTransitionTests
Change-Id: I8014a6f46cffda3a48a1a4ae101e2643078f4a14
Add a callback in split layout to notify registered listener when users
double tapped the divider bar. Use this callback to switch side stage
position.
Bug: 176061049
Test: atest SplitLayoutTests
Test: manual check stage position changed when double tapped divider bar
Change-Id: Id3929b01a194b8eb0838cc892156bbbe48dc8690
Add some more interfaces APIs for manipulating main/side stage
split-screen.
Also, renamed pinTask/unpinTask to moveToSideStage/removeFromSideStage
for consistency.
Test: Command line
Bug: 176061049
Change-Id: Ic5b909c42e027e6f4809931c6dc92af1bf79b050
- Clean up some usages of handlers and explicit main loopers to use
the shell executors
- Remove the update thread (will eventually move to the shell main thread)
- Make timeout handler non-static (it only has one instance at the moment)
- Post calls from shell back onto the sysui thread
Bug: 161979899
Test: atest WMShellUnitTests
Change-Id: I1db0f0d8e7f83eeb7e4581fb266ffd77aa73fea1
In order to make shell transitions testable, this makes the
default animations into a TransitionHandler. This is also cleaner,
more consistent, and will make expanding the default animations
easier later.
The reason this is needed is because animations themselves aren't
very amenable to testing, so to test the interface logic, we need
to be able to replace the default handler with one that simulates
just the contract of the default handler (don't claim any requests,
but always perform animation).
Also added some tests for both basic transition flow and for
the TransitionHandler contracts
Bug: 169035082
Test: atest ShellTransitionTests
Change-Id: I92e367af155831c11f583322e95151a2cb645caa
the screen has entered one handed mode
Add a new DisplayArea feature color background layer to fix it.
Bug: 157124724
Test: manual
Test: atest WMShellUnitTests
Test: atest DisplayAreaPolicyBuilderTest
Change-Id: I16beddb182125551621d0083dba2f259140d7b78
- This CL also changes TV.setListener to have a separate Executor.
Bug: 165794075
Test: atest TaskViewTest BubblesTest NewNotifPipelineBubblesTest
Change-Id: Ib0324ec06d088694556f8cef6cee726d9789ce2c
- Remove Handler usage in some (non-feature specific) shell code
(Note: The shell main thread will still be the sysui main thread)
- Add explicit executor for display organizer
Bug: 161979899
Test: atest WMShellUnitTests
Change-Id: I9a354f742167b907c32537eb022e22c0d5bfb97a
Make TvPipNotificationController (formerly PipNotification) responsible
for handling broadcasts sent from the Pip StatusBarNotification.
Previouslt TV PipContoller was in charge of that.
Also, as mentioned above, rename PipNotification to
TvPipNotificationController.
Bug: 153784643
Test: atest WMShellFlickerTests:TvPipNotificationTests
Change-Id: Iabdf5ee9d464653e233aee9044ac8cbb26478dea
Implement an alternative way of showing/hiding IME in PipKeyboardTest on
TV - via "re-launching" the ImeActivity with a particular action. The
original way - calling UiObject2.click() on the EditText does not work
well on TVs, because the touch events injected by the Instrumentation to
emulate the click force TV into the touch mode.
Bug: 176413558
Test: atest WMShellFlickerTests:PipKeyboardTest
Change-Id: Id3462eba548c8ed639ba44437db573928348c1e6
By default if application didn't specify a theme, PhoneWindow will
get the default theme by Resources#selectDefaultTheme for itself
and currently it could be Theme_DeviceDefault_Light_DarkActionBar,
which will shows an ActionBar on splash screen window, and looks
bad for starting window.
For this case, use Theme_DeviceDefault_DayNight for splash screen
window should be a better choice.
Bug: 73289295
Test: atest StartingSurfaceDrawerTests
Change-Id: Ia47afcb26c7aaa7781a24e3fe8122e58901776dc