- Fixed the round corner radius calculation, take into account the
insets, was applied to the destination bounds side
- Adjust the leash position based on the insets
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/eUpkH2il1vYBVBPt1Vks2u
Bug: 190748719
Test: auto-enter-pip from YT landscape, see video
Change-Id: I2f3f4ae807630c5ae6bcc9968c6b46cf4501ad07
When taskbar is showing, navigation bar isn't created which
means all of the a11y registers are never registered.
NavigationBarA11yHelper maintains existing a11y flag logic from
NavigationBar but any class can register with it to get updates.
Bug: 180046394
Test: A11y works as expected on 3 button phone
Right events getting pass through to launcher when on larger
device
Change-Id: I9eeb566fca0e5142b38127aa8f32c21632c33caa
Support a custom configuration while beginning the instrumentation, also
support a custom tag for getting fine-grained CUJ in the trace.
Bug: 187495856
Test: take the trace, see the cuj section name.
Change-Id: Ife2554e0d7dbe4c01b7e4381a12a5f595e2f4364
Adds a parameter to the IRemoteTransitionFinishedCallback. This
transaction will be merged into the finish transaction before it is
applied. This is needed by transitions like live-tile recents where
the end-state of the transition is altered during the "animation".
Bug: 172695387
Test: open app, swipe up to overview, resume that same app, screen
shouldn't turn black anymore.
Change-Id: I6fa1e22288ce087ad17fdfc950a8419e6ba61a47
For the Recents gesture animation, the navbar gets attached to
the app while dragging. The actual navbar attach/detach logic
lives in Core, so this change basically hacks the logic into
the core-side of shell transitions. This is ugly and should
be a temporary solution until that behavior can move to Shell.
This also had to add an ugly API on IATM because the lifecycle
of the navbar reparent is different from the transition lifecycle
in this instance because of LiveTiles.
Bug: 188595497
Test: With shell transit enabled, open app, swipe up to recents.
Observe navbar attached to app during drag and put back
on screen afterwards. Also, no more crash.
Change-Id: I1aba53314329e3fd7678a7e8a5fc8ffa0294e395
If an application caches an ApplicationInfo and uses it to call
Context#createApplicationContext, the app will not get the most recent
version of the overlays for that application. To make things worse, the
LoadedApk stored in ActivityThread#mResourcePackages is updated using
the old ApplicationInfo causing further uses of the cached LoadedApk to
return outdated information.
Deprecate Context#createApplicationContext, convert all internal uses
to Context#createPackageContext(String packageName, ...) and log
whenever any one calls Context#createApplicationContext with an
outdated ApplicationInfo to detect debug issues in using old infos.
Bug: 188059515
Test: change wallpaper and observe widgets get reloaded with most
recent overlays
Change-Id: I2aeefa8c0e66264859109975a54c4f73f76ad710
To see this in action, enable the remote animation (adb shell setprop persist.wm.enable_remote_keyguard_animation 1) and enhanced SmartSpace (adb shell device_config put launcher ENABLE_SMARTSPACE_ENHANCED true). Also, set your lock mode to swipe or some sort of non-bypass biometrics, so you can swipe to unlock.
KIs:
- It looks pretty janky on a fast swipe - this is the same root cause as b/186847064 so will have the same fix
- Launcher animates in with window-level animations (Launcher team is looking into helping)
- Screen off animation is not yet implemented (this is for unlock only)
Bug: 187025480
Test: unlock with every possible permutation of lock settings
Change-Id: I8c186fe57132ebc9a0bc5e3d8785e753e72c3bf2
In live tile mode, the live tile app is considered the top window and therefore rotation proposals are sent even when home rotation is disabled. To detect this, launcher needs to send over home rotation state, besides the nav bar needs to listen to recents animation state.
Fixes: 185962767
Test: manual
Change-Id: Ibc873d1067a8a3b37b6c20672cdb32ea356d9f21
Android S introduces a new Quickstep animation for launching an activity
from an app widget. This is a similar but distinct CUJ to
LAUNCHER_APP_LAUNCH_FROM_ICON.
Bug: 169042867
Test: presubmit
Change-Id: I3338d31eb2ed74aef0b0697c6070ab7b422514ba
- Launcher will create a new surface which is faded in over the app,
and as it finishes the recents animation, we transfer the overlay
from the leash to the task (as with the transform), and when the
pip task organizer receives it, it can fade out and remove the
surface
- Fixes flash of status bar colors when going from light status bar
to home (dark status bar) by deferring whether a task affects the
sysui flag until it enters pip (only for autoenter)
https://recall.googleplex.com/projects/e3f080d7-2818-43f0-a087-405000b8fdf5/sessions/971a84c8-a622-4b34-a9de-4e595595da42
Bug: 184703546
Test: Swipe up from app with auto-enter but no source hint rect
Change-Id: I0a00cdb98d0a599ef065206e0cd2cfc0e6cc72b1
The window magnifier is hard to drag when it is at the bottom
of the screen. This is due to that launcher is detecting
swipe-up system gesture.
To fix it, we set the system ui state flag to true when
the window is overlapped with the gesture detection area.
We also update the gesture dection area via OnApplyWindowInsetsListener
Once the area is changed, we will update the flag again if necessary.
In the testing part, we use real WindowManager to verify the
functionality.
Bug: 179648683
Test: atest com.android.systemui.accessibility
manually test and use the following command to check the flag
adb shell dumpsys activity service TouchInteractionService
Change-Id: Ia09bd26b3eb164790614c173594d997d45f4ecdc
For auto enter PiP from landscape when no source rect hint is specified,
we should actually use the skew instead scale values to set the matrix
transform.
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/dpLVOQzIVjdJpn5kg7T4Fc
Bug: 179720719
Test: manual use ApiDemos app, see video
Change-Id: Ic7072e8354329584f9cb75876911c3d58d78e7f5
Currently, SurfaceFlinger/BLAST doesn't provide any mechanism
for syncing across processes or any way to even know that a
particular transaction has been applied (exascerbated by the
fact that the transactions are queued up on the buffer queue).
This means there is always a race between when the last
launcher transaction is applied.
Until we get a solution, we add an extra leash so that launcher
doesn't actually modify the organized surface.
Bug: 186132704
Test: using winscope, observe that launcher animates leashes
instead of the actual task surfaces
Change-Id: I53834fc434a33abd912ebd9edc06fc8c9bbf2e2f
Per discussion, will keep the two classes in Launcher and WMShell as for
now and re-address the unification in next release. In this change
- deprecate config_pipEnableRoundCorner since it's now behind a system
property and waiting to be turned on
- pass the corner radius value from WMShell to Launcher
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/dmUy8qBEMxHShFcFKB3cT3
Bug: 171721389
Test: make sure autoEnterPip has round corner support, see video
Change-Id: If978ee6c3b0307a7423fe51b996f535d7009e74c
If an incoming transition merge request contains only a task
open, this will be converted into the existing onTaskAppeared
callback that recents expects.
Bug: 186132704
Test: open app, swipe to overview, scroll to another app, launch.
Change-Id: Ifd288fbb73e2b4ea7011066bda5c3694b5f579d9