| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before, we only provide startBounds when the animation target is
MODE_CHANGING, with which we won't know the start bounds for target that
is closing while resizing.
Now, we provide startBounds for all targets, so that we can use it to
provide seamless animation when the target is closing while resizing.
Also make sure the closing container's surface is in the start bounds
before the animation starts to avoid any flicker.
Bug: 241043533
Test: Verify with switching between split and stack.
Change-Id: I4d8e1ee44d418249dcb434425c7ab3d63a429bad
|
| |
|
|
|
|
| |
Bug: 221961069
Test: Presubmit
Change-Id: Ibea2ba0694c5afe77dc809e8ad890f620bb92fda
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
..used for signaling the launcher to crop the
remote animation target bounds when task animating on the taskbar.
If the task will show IME on the top means the animation taget would not
need to be cropped according to the taskBar insets, since visually the
taskbar is hidden when IME is visible.
Bug: 219981732
Test: manual as steps
0) enable taskbar with Settings > Developer options > Smallest width
as 600dp.
1) launch an app from all apps and show the IME by tapping the editor.
2) swipe out to home and launch it again by pressing the shortcut.
3) Verify the animating task preview with IME shown without being
cropped.
Change-Id: Iab526e78614c68626bd5424e0e3219044f671f4d
|
| |
|
|
|
|
|
|
|
| |
This registers system default clear-top xmls and propagate the
showBackdrop flag.
Test: atest RemoteAnimationsControllerTest
Bug: 221048002
Change-Id: I664f7edd181fd7d625b7010a77cd1f7b58fc3113
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
With shell transition, there won't be task info if the transition
is launching activity in the same task. ActivityLaunchAnimator
assumed the task info is non-null, which causes NPE.
Bug: 223397404
Test: adb shell setprop persist.wm.debug.shell_transit 1; reboot
Long press quick settings tile from notification multiple
time. Especially launch the same tile twice, systemui
should not crash.
Change-Id: I0ad1fef17653d72162d430339ac7e8a716aa9bfe
|
| |
|
|
|
|
|
|
|
|
| |
We may set a z-order different from the prefix order, for example
TaskDisplayArea#adjustRootTaskLayer. As a result, we should no longer
set animation leash layer based on the prefix order.
Fix: 208793409
Test: manually test launching activity over another
Change-Id: If8d545ca7a9ac42162262ad3a8f95b4ac9f65585
|
| |
|
|
|
|
|
|
|
|
|
| |
There is case when a TaskFragment is resizing while one of its children
is open/close. In such case, both the TaskFragment and its child will be
included in the transition, but we don't want to animate both of them.
Use the new flag to determine if the child need to be animated.
Bug: 196173550
Test: test with demo app
Change-Id: Ib5ad32501e046e5b612f6d5ae2faed6266d99f3d
|
| |
|
|
|
|
|
|
|
| |
Missed some null checks which resulted in crashes during some
tests.
Bug: 183993924
Test: atest WindowInsetsPolicyTest
Change-Id: Iaa84b2d9e824223cead9ba78247129b77b1f217e
|
| |
|
|
|
|
|
|
|
|
| |
This result will be used by Launcher when deciding if we should start
the auto-enter-pip transition.
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/c9raN4jiaNqbiV7DF4YTJ6
Bug: 194272108
Test: try auto-enter-pip with permission disabled
Change-Id: Iea3a45fd68b54d74e7d5da91b63684c206a0132e
|
| |
|
|
|
|
|
|
|
|
| |
- Allows launcher to get the associated launch cookies for
the task
Bug: 129067201
Test: Manual, check the task info for the animation targets
Change-Id: I4b9d974af1732d0ec7b19681f4772b692f614e5e
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Only send navigation bar target when:
- It is the transition of launching an app
- In gesture navigation bar mode
- The navigation bar is not controlled by fixed rotation or recents
2. Add a windowType field to RemoteAnimationTarget so that the remote
clients could use this to find the non-app window they want.
3. Handle the onAnimationFinish() callback for non-app adapters.
Bug: 139273001
Test: atest RemoteAnimationControllerTest
Change-Id: I0612163502bdda01c4bdbae3b0ecda47efedad51
|
| |
|
|
|
|
|
|
| |
This reverts commit f17300e70640a95d255f634bc73afa6c039e0569.
Reason for revert: <Caused test failures>
Change-Id: Id199e36e189c586c92f994023f60f64be9f5f443
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Only send navigation bar target when:
- The transitition is app launch
- In gesture navigation bar mode
- The navigation bar is not controlled by fixed rotation or recents
2. Add a windowType field to RemoteAnimationTarget so that the remote
clients could use this to find the non-app window they want.
Bug: 139273001
Test: atest RemoteAnimationControllerTest
Change-Id: I7003011351913b040b47e6fb567eedb4baf34a55
|
| |
|
|
|
|
|
|
|
| |
Eliminate the overhead of class name. A read/write pair
of RemoteAnimationTarget can be reduced from 30us to 7us.
Bug: 181025587
Test: CtsWindowManagerDeviceTestCases
Change-Id: I58bd69012fcc3e6cb72c1fcfbb1db697e6c70e87
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is in response to API feedback - dump() methods for most of the
public classes describe complex internal state, which does not fit for
the Point class. Point#dump does not need to exist anyways, because
1. Point#toString exists, and
2. Point#dump only printed out the x,y coordinates, which are already
part of the public api, so printing out a more concise string
representation is trivial.
So, this patch removes Point#dump and just has RemoteAnimationTarget
implement its own print method for Point, since it was the only caller.
Bug: 159683987
Test: builds
Change-Id: I5c947330768b3e4e450eba3971de939a904d30d4
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.
This is a resubmit of ag/12929664 with some APIs excluded that caused
test failures; see bugs 171886397, 171888296, 171864568.
APIs excluded:
Landroid/bluetooth/le/ScanRecord;->parseFromBytes([B)Landroid/bluetooth/le/ScanRecord;
Landroid/os/Process;->myPpid()I
Landroid/os/SharedMemory;->getFd()I
Landroid/hardware/input/InputManager;->INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH:I
Bug: 170729553
Test: Treehugger
Change-Id: I8285daa8530260251ecad6f3f38f98e263629ca7
|
| |
|
|
|
|
|
|
|
| |
This reverts commit 72f07d6a8a32db4a0dedd7682a0b3385be2b9cd6.
Reason for revert: Droidcop-triggered revert due to breakage https://android-build.googleplex.com/builds/quarterdeck?testMethod=testAppZygotePreload&testClass=android.app.cts.ServiceTest&atpConfigName=suite%2Ftest-mapping-presubmit-retry_cloud-tf&testModule=CtsAppTestCases&fkbb=6936597&lkbb=6936969&lkgb=6936551&testResults=true&branch=git_master&target=cf_x86_phone-userdebug>, bug b/171886397
Bug: 171886397
Change-Id: Ibe0f0430a3451477c1ee8ef56a596e91ea1e7672
|
| |
|
|
|
|
|
|
|
|
| |
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.
Bug: 170729553
Test: Treehugger
Change-Id: I4c8fd0006f950de9955242e93968fb0996ceb372
|
| |
|
|
|
|
|
|
|
| |
Add PictureInPictureParams to RemoteAnimationTarget, which would allow
Launcher to determine whether the current app can auto enter PiP.
Bug: 143965596
Test: N/A
Change-Id: I5bc8dd29e9e4e7f3acfe9b841e64344211f57758
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Point is moving into the UI/graphics module, so hidden apis need to be
cleaned up:
* printShortString is now publicly exposed and renamed to Point#dump, to
mirror already public APIs such as TokenWatcher#dump
* The two convert methods have very few users and their implementations
are both trivial and only rely on the existing public API, so they are
in-lined directly in the callers.
* Introduce a GraphicsProtos utility class living outside of the module
that just converts Graphics parcelables into protobuf objects. Currently
WindowManager and the view system dump protobuf representations for
debugging. Accordingly GraphicsProtos is a hidden public class, as the
protobuf representation of the graphics classes are not publicly
exposed and should be considered an implementation detail of the system.
Bug: 152804266
Test: boots, builds
Change-Id: I5e25dbbe47b3c690d7d763a0082beb8d8a9c86d3
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With Hierarchical animation, the animation layer will no longer
be a fixed fullscreen layer but animate on the parent container's surface.
In order to run a remote animation, the animation controller needs to
know bounds of the target relative to both its parent and the screen.
The CL includes:
1) RemoteAnimationTarget changes:
- Add localBounds field for indicating the target bounds which
the coodiates relatives to its parent.
- Add screenScreenBounds field to replace souceContainerBounds
to reflect the target bounds relatives to the screen.
- Mark position & sourceContainerBounds as deprecated.
2) Modified related places to set correct localBounds information.
Test: build / run, make sure installing the old version of launcher on
the this new platform change still compatible without crash.
Test: manual as follow steps:
- Launching app from launcher to split-screen secondary stack
- Swipe up to overview screen and drag TaskView to see if the TaskView
surface is shfted, expected is not.
Bug: 148780840
Change-Id: Id9dbf6de193ab73fe94bc24ef6a27edc93380a14
|
| |
|
|
|
|
|
|
| |
Existing annotations in libcore/ and frameworks/ will deleted after the migration. This also means that any java library that compiles @UnsupportedAppUsage requires a direct dependency on "unsupportedappusage" java_library.
Bug: 145132366
Test: m && diff unsupportedappusage_index.csv
Change-Id: I5be7335b23a92b8ac80d2fd890198273b66ad644
|
| |
|
|
|
|
|
|
|
| |
We want to eventually migrate some of these APIs to be @SystemApi for mainline modules.
The #dumpDebug name is more appropriate than #writeToProto.
Bug: 142279786
Test: Manual
Change-Id: I60793e91cedf6b720d4ecef6a8484f4fed4ff30f
|
| |
|
|
|
|
|
|
|
| |
If they were null, then the Parcelable would fail to work.
Bug: 126726802
Test: manual
Change-Id: I7929ffa2f20e5de1c8e68e8263cca99496e9d014
Exempt-From-Owner-Approval: Trivial API annotations
|
| |
|
|
|
|
|
|
|
|
|
| |
Change-related variables are null when not changing, thus
we need to check for that before trying to write them to proto
Bug: 123538318
Test: ActivityLifecycleTopResumedStateTests#testTopPositionLostOnFinish
passes
Change-Id: I643c48621602b5203f7f64a9af0578273f115dbe
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a new transition classification for apps which are
switching between 2 visible states. The primary example of this
is windowing-mode change.
This new classification is mChangingApps in DisplayContent and
there is a transition type for TASK_CHANGE_WINDOWING_MODE.
The mode-change transition is scheduled when AppWindowToken
detects a windowing-mode change. It immediately creates
a snapshot and temporary leash to "freeze" the visuals of
the app until the animation starts (all transitioning apps
are ready).
The transition itself is a blend of fading, scaling, and
cropping based on whether the end-state is bigger than the
start state.
The RemoteAnimationTarget now includes a startBounds and an
extra "snapshot" leash for controlling the snapshot overlay
relative to the AppWindowToken. If either of those is
populated, the client of the RemoteAnimation can assume it
is animating a change and is responsible for transforming
the leash from the startBounds to its final state.
Bug: 113253723
Bug: 111762928
Test: go/wm-smoke + RemoteAnimationControllerTests
Change-Id: I8654656124b888950e55e31d88ce7a4101e935f8
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For packages:
android.view.textservice
android.view.textclassifier.logging
android.view.textclassifier
android.view.inputmethod
android.view.autofill
android.view.accessibility
android.view
This is an automatically generated CL. See go/UnsupportedAppUsage
for more details.
Exempted-From-Owner-Approval: Mechanical changes to the codebase
which have been approved by Android API council and announced on
android-eng@
Bug: 110868826
Test: m
Change-Id: I4147b038ed7adf0311ee9918b44766f82a057eaf
|
| |
|
|
|
|
|
| |
Adding more comments and fixing some style issues.
Test: Android builds
Change-Id: I70f74c029cf0aed99aaf55b484729a2f3d289e94
|
| |
|
|
|
|
|
| |
Bug: 74220420
Test: go/wm-smoke
Test: adb shell dumpsys window during animation
Change-Id: Ib8bddb4f38ad4fe7a80315d3bfdac0a80aea4cc8
|
| |
|
|
|
|
|
|
|
|
|
| |
For animations required by Recents, we calculate whether the task is
going to be presented in Recents UI.
Bug: 70789568
Test: Manual: swipe a normal app to Recents; swipe an app with a
half-screen assistant on top of it to Recents.
Change-Id: I1ec9c36865dd4f57e843ae58811f90f3096365a5
|
| |
|
|
|
|
|
|
|
|
|
|
| |
recents transition""
This reverts commit bb5d97f00fd5ee64eaac110aa700cec2abf56a20.
Reason for revert: Launcher APK is landing shortly.
Test: Manual, swipe up to home in multi-window
Change-Id: I5d9050e51265bd4ca5ea2c28b7533571d03990f7
|
| |
|
|
|
|
|
|
|
|
| |
transition"
This reverts commit 67f31199fb65c4bd89838f826afc00205d2241e2.
Reason for revert: Need to wait for the Launcher drop at EOD today
Change-Id: I039cd3092d786c62a88f599eb79c0704c6257981
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- In order to calculate the final target rect and window clip for the
app currently transitioning into the task view in launcher (similar to
how we did in SysUI), we need to provide the content insets and bounds
for both the app and launcher (whose activity may not yet have been
shown). For the existing recents transition, this was calculated
internally in the AppTransition aspect-scaled transition, but now that
we are implementing this via remote animations, the same information is
needed in the implementation of the recents animation runner.
Bug: 70294936
Test: Swipe up from launcher with window transitions when in multi window
Change-Id: I2afc6bdfe112cc7bb1b07ba65213653f6f0634f9
|
| |
|
|
|
|
|
|
| |
This reverts commit 9f8518e532e41ba57916afc49bba72bc23ad3eda.
Reason for revert: Testing relanding changes with ag/3515280
Change-Id: I410bd752c815a5b998a719453def01e00a9d47c8
|
| |
|
|
|
|
| |
This reverts commit 0026a5152c427f9cf2c04da2b23a5ece2fcdb36d.
Breaks presubmits
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Allow the recents component to drive the animation from an app into
Recents using the remote animation framework. When initialized, the
animation repositions the recents activity behind the currently visible
tasks and provides the set of surface controls for the visible tasks.
Once complete, the recents component notifies the system whether it
has completed the animation into the recents activity, or whether it
should restore the previous state. In addition, there is a prescribed
delay after which the system automatically cancels the recents animation.
Bug: 70180552
Test: go/wm-smoke
Test: Manual, swipe up with suitable launcher build
Change-Id: Id32f03c7ad2288dce06231cfaa4b21916da511d7
|
|
|
Adds the ability for another app to control an entire app
transition. It does so by creating an ActivityOptions object that
contains a RemoteAnimationAdapter object that describes how the
animation should be run: Along of some meta-data, this object
contains a callback that gets invoked from WM when the transition
is ready to be started.
Window manager supplies a list of RemoteAnimationApps into the
callback. Each app contains information about the app as well as
the animation leash. The controlling app can modify the leash like
any other surface, including the possibility to synchronize
updating the leash's surface properties with a frame to be drawn
using the Transaction.deferUntil API.
When the animation is done, the app can invoke the finished
callback to get WM out of the animating state, which will also
clean up any closing apps.
We use a timeout of 2000ms such that a buggy controlling app can
not break window manager forever (duration subject to change).
Test: go/wm-smoke
Test: RemoteAnimationControllerTest
Bug: 64674361
Change-Id: I34e0c9a91b28badebac74896f95c6390f1b947ab
|