Status bar icons are displayed only in the last 25% of the unfold progress. Otherwise, during unfold to app scenario, they were going outside the app window.
+ Minor kotlin fixes.
Test: Unfold while app opened
Bug: 210997078
Change-Id: I26ab9cb28ce4d894ad33b6b26e11ae59e28234bd
Adds some constant translation to elements of the notification shade during fold/unfold. This is only applied when the device is in natural rotation.
KeyguardUnfoldTransition was doing the same: the logic has been extracted in UnfoldConstantTranslateAnimator, that is now used by both classes.
KeyguardUnfoldTransition's tests related to the animator have been moved to UnfoldConstantTranslateAnimatorTest.kt.
+ Minor formatting issues fixed (using ktfmt)
Bug: 201411030
Test: atest UnfoldConstantTranslateAnimatorTest KeyguardUnfoldTransitionTest + Tested manually on lockscreen and notification shade
Change-Id: Ic8d4cf5d7b2a9f8fc366842623c87c15cf79766f
This changelist removes the CommunalSource AIDL interfaces that are no longer used.
Bug: 216515830
Test: manual
Change-Id: I82f96e1b30da7eb46145e46cbe629135cc342c8e
* changes:
[Media TTT] Add NoLongerCloseToReceiver callback.
[Media TTT] Add TransferToThisDeviceSucceeded callback.
[Media TTT] Add an undo callback to the interface for when a transfer has succeeded. The callback will be invoked when the user presses the undo button.
[Media TTT] Add the #transferToReceiverSucceeded callback.
[Media TTT] Add transferToThisDeviceTriggered callback.
[Media TTT] Update chip states to not require otherDeviceName if they don't need it. Define a #getChipTextString method instead.
* changes:
[Media TTT] Add the #transferToReceiverTriggered callback.
[Media TTT] Don't use futures for determining whether a transfer has succeeded or not.
The opening task from Recents can be invisible because there would hide
the created leash, which should be unnecessary since the recents window
animator would handle the cross fade animation.
Test: Enable shell transition, enter recents, swipe to right-most page(
the page shows "Clear all"), then click the task and verify the task
won't become invisible during animation. Test on both NexusLauncher and
3rd-party Launcher.
Test: atest FlickerTests:OpenAppFromOverviewTest
Test: atest TaplTestsQuickstep
Change-Id: I0f7b7855de944c744190f6599ed48490f6e0d9f0
Send the remove transition-leash transaction back to the transition
handler, so it can be applied with finishTransaction together, in
case the task surface suddenly disappears due to no parents.
Bug: 213867585
Bug: 214352241
Test: atest WMShellFlickerTests:QuickSwitchBetweenTwoAppsForwardTest
Test: atest WMShellFlickerTests:MovePipDownShelfHeightChangeTest
Change-Id: I5fca942c92d7175dc2f08c3f14f4da464405709c
Unlike usual opening/closing app transition, the Recents task should
above Home task when opening recents, otherwise the home task would
above the recents task so it will seems like the home been add into
recents animation.
Bug: 207297486
Test: enable shell transition, setup 3rd-party launcher as default
home. Entering recents at home page and verify the home task won't
stay on top.
Change-Id: I9bac97cb79febf112ec9ac1bdbe3de205604b01d
This CL creates a new DesktopNavbarButtonsViewController class to allow
for taskbar buttons and status icons customization on desktop
environment.
Recall: http://recall/clips/1f3b88e2-9f4e-4291-a9fe-a17641d1fd0c
Bug: 213964564
Bug: 196757951
Test: Switch between different system navigation modes and verify the
desktop taskbar buttons/status icons stay on screen, and are functional.
Change-Id: I05846b61689213ded88b8f49460aced88e49fd65
This runs ktfmt on all unfold shared lib files. In this way there is always only one valid and consistent way to format our files.
+ Some documentation comment spacing refactored to look nicer.
Bug: 193798864
Test: m
Change-Id: I031a6e8c580ff763f9d2f4ee364807f1d405ba6d
Make sure to delegate recent transition to launcher after split screen
activated.
Bug: 206487881
Test: manual check swipe split-pair to overview panel and swipe to home
behavior
Change-Id: I1177b1efdd7a45e8f9ec162b2155dbea1660e1af
Android T allows apps to declare a runtime receiver as not exported
by invoking registerReceiver with a new RECEIVER_NOT_EXPORTED flag;
receivers registered with this flag will only receive broadcasts from
the platform and the app itself. However to ensure developers can
properly protect their receivers, all apps targeting T or later
registering a receiver for non-system broadcasts must specify either
the exported or not exported flag when invoking #registerReceiver;
if one of these flags is not provided, the platform will throw a
SecurityException. This commit updates all the exposed receivers
with a new RECEIVER_EXPORTED_UNAUDITED flag to maintain the existing
behavior of exporting the receiver while also flagging the receiver
for audit before the T release.
Bug: 161145287
Test: Build
Change-Id: I5faa64ae0d2b22b62390bf13cb2b87fd6926e0c7
has succeeded. The callback will be invoked when the user presses the
undo button.
Bug: 203800643
Bug: 203800347
Test: verify `adb shell cmd statusbar media-ttt-chip-add-sender Device
TransferToReceiverSucceeded` shows a chip with an Undo button. Verify
tapping the undo button switches the chip to the loading state again.
Test: media.taptotransfer tests
Change-Id: I912caa4408badffaa7a8e19f04e89bafd5d9a8ad
Also renames TransferInitiated -> TransferToReceiverTriggered, because
we also need a TransferToThisDeviceTriggered callback.
Bug: 203800643
Bug: 203800347
Test: verify `adb shell cmd statusbar media-ttt-chip-add-sender Tablet
TransferToReceiverTriggered` works
Test: media.taptotransfer tests
Change-Id: Ibb968d5c35391cf84e28fc2460148ea6bf396d14
UnfoldTransitionProgressProvider is used in sysui and in other places that don't use dagger (e.g. Launcher).
However, we want to use dagger for all unfold transition related classes.
The solution in this cl is to create FoldSharedComponent. If an app that doesn't use dagger need UnfoldTransitionProgressProvider (or other shared classes), it can create the component with the factory, and get those object (now created by dagger, previously manually created).
If the app uses dagger, UnfoldSharedModule should be used instead.
The external interface is not changed in this cl: createUnfoldTransitionProgressProvider is left as it was before, therefore launcher doesn't require any change and continues to work as before.
Test: atest com.android.systemui.unfold
Test: Manually tested
Bug: 213908821
Change-Id: I22885ec15fed99254405e26ed2fe99a9567625b6
A new TransitionProgressListener is added to start and stop the jank monitor during the transition. This is a no-op if the jank monitor is disabled.
The reason why it is added in StatusBarWindowController is that InteractionJankMonitor needs an attached to begin, and the status bar should always be present during the animation.
Bug: 213862831
Test: Running test suite in forrest with config in g3
Change-Id: I99dcd4e879b9c2c47611096b29b164881e8714c7
Before, the surface will be removed, and the children will be reparented
to root in a separate transaction when animation is done. That would
cause a flicker because the reparented children may be above the
rotation activity.
Bug: 206094140
Test: manually test expanding PIP
Change-Id: I0f16b7590d4bd0f4c377158d555cb94f28f134cd
stopAndDestroy() was being called from the main thread, while
registration was happening on the background. This would lead to
concurrency bugs because this class is not thread safe.
Test: atest RegionSamplingHelperTest
Fixes: 201962411
Change-Id: I01290f5931972ad3eb322e7dddc44e002324e405