- activity.hasBeenResumed is no longer an accurate indicator after live tile has been introduced, indeed it's always false
- Return recentsView regardless if there is a runningTask as well
Bug: 194286330
Test: In fallback Recents with 3 button, tap overview button from home screen, then tap overview button again. Try combination with back and home button
Change-Id: Ib2775a11f5466abc433763f24192e7bfdcf191a2
(cherry picked from commit 455718e842)
- activity.hasBeenResumed is no longer an accurate indicator after live tile has been introduced, indeed it's always false
- Return recentsView regardless if there is a runningTask as well
Bug: 194286330
Test: In fallback Recents with 3 button, tap overview button from home screen, then tap overview button again. Try combination with back and home button
Change-Id: Ib2775a11f5466abc433763f24192e7bfdcf191a2
When the user presses the home button, because fallback Recents doesn't
have a way to change the state, we rely on `onStop` to reset the state.
This makes the state be cleared correctly.
Fixes 192254944
Test: follow the bug
Change-Id: I177b09392214d078373e3852517b57d9172d944d
Keeping the stale reference after the animation ends is dangerous because if we call end() on it, it will jump to the now-obsolete end value.
Test: atest NexusLauncherTests:com.android.launcher3.memory.MemoryTests#testAppLaunchFromWorkspace
Bug: 193440212
Change-Id: I8ca45db7ceec2d6e6a9c6e69a6e0359fd73a7d27
Note that taskbar is intentionally dark even when dark theme is off, whereas overview changes to light.
Test: visual with a few wallpapers
Bug: 191614244
Change-Id: I30f8c2f04047ea26fa726c9e470b87637a6c502e
Test: swipe up to overview from an app and swipe up to dismiss it during the transition
Bug: 189700453
Change-Id: I303696f90dbb236ea93e06d94a3c92d783850fa4
- Removed modalTransformY as overview actions no longer need to move in modal view
- Moved row spacing and page spacing to DeviceProfile
- Added several tablet / orientation specific DeviceProfile params
Bug: 194194694
Test: Manual
Change-Id: Id5435e7f6fc1b6fb7c0e55e55fa240cf84c4d6da
- Simplified a lot of dp.isTablet && FeatureFlags.ENABLE_OVERVIEW_GRID.get() usage
Bug: 194194694
Test: manual
Change-Id: Idfb0ad192048106bbe6f8e2a28fa5613b86e5208
Fix: 194164662
Test: enter stage split, long pressing on taskbar and observe
the divider bar is visible.
Change-Id: I935283dd75442c47d4f3e8421943eea8e0f3cd7f
Add new animated float to disable taskbar
background value when keyguard is visible.
Fixes: 191857724
Test: Tested w/ and w/o bouncer for gesture + 3 button
Tested w/ IME pw on lock screen.
Change-Id: I2e1696fd25f4c170bfb2bc0694ccd644e453b1fe
Bugs tracked in b/181704764
Bug: 181704764
Test: Tested on phone and large screen in multiple orientations
Change-Id: I07509006ae3d1f4425dc5119d0c8ed52b41a3bc2
- This is a follow-up of http://ag/15220572
- When determining if task's snap position is too close to ClearAllButton, avoid positions that will see part of ClearAllButton
Bug: 192254835
Test: manual
Change-Id: I09425075ff0c24835ac3c4e79856aef7985476b2
Test: manual - FallbackRecentsTest.goToOverviewFromHome and
StartLauncherViaGestureTests.testStressPressHome were previously failing
due to null mActivity in AbsSwipeUpHandler#getScaleProgressDueToScroll.
Bug: 192470757
Change-Id: I562171c22ad3c89e64b4dc853a266c8b8b78402c
- In tablets user is either in home screen or there is a taskbar on screen, so swipe to home will always touches the launcher
Bug: 193653850
Test: StartLauncherViaGestureTests
Change-Id: Id1b05708324302eb4b4c2d623ca9fe27090188fc
This passes the launcher component name into the transition filter
so that it only matches if the launcher is the current home activity
Bug: 194112093
Test: atest SplashscreenTests
Change-Id: Ie2185545a5bef8b317e104b6ac878f6cde0d7350
* Layout hotseat icons from the end instead of the start
* IME down and system back arrow are now separate views
Bug: 191399224
Test: Tested w/ RTL + LTR in gesture
and 3 button nav w/ and w/o IME
Change-Id: I4d0ecd0bee0c519892c63eeefef45055b26d349b
- Taskbar takes some time to appear after closing launcher and launching test app
Bug: 193653850
Test: StartLauncherViaGestureTests
Change-Id: I714e35ee855660ac28bb214386f48ddbea0e834c
- The crash happen when swiping to overview from home without any task in recents
- A simple null check fixes the issue
Fix: 194166137
Test: FallbackRecentsTest#goToOverviewFromHome
Change-Id: I9344a96a4a78fcfc88d2ad53e44ecd43b23114d5
Also fix unstashing not working in 3P launchers by moving the unstash call from LauncherTaskbarUIController to TaskbarActivityContext
Test: long press taskbar background and stashed handle, watch it hint towards the new stashed/unstashed state respectively and then complete the animation when the long press is triggered
Fixes: 193926311
Fixes: 192926350
Change-Id: I0e538be9129bf5c600d07f360b8106d7077862ad
When we go from overview to home, we scroll to page 0 so that all tasks end up offscreen. However, since we are already in NORMAL state, we previously ignored loadVisibleTaskData() for the tasks as they scrolled by. Instead, we now continue loading task data while the scroller is unfinished.
Test: swipe to last recent task, swipe up to home, ensure thumbnails are still loaded as they scroll offscreen
Bug: 192522519
Change-Id: Iba770200fc5dbdfc91dccda9a6b9c891ab6c5e3d
- See http://b/193440212#comment5, TaskView takes time after swipe gesture to finish dismiss animation, so wait for the animation to finish before checking task count
Bug: 193440212
Test: TaplTestsQuickstep#testOverview
Change-Id: I21397e68f384e956a7c9f2ee8a8161ac784b4d2e
Allow starting split selection from live tile task.
Animation is still funky, but that's in a separate
CL altogether.
Fixes: 193212975
Test: Repro steps in bug no longer happen
Change-Id: I507628d3ef474936694dfbabfef5e0acf9f55b5d
- Prediction row views were never updated when notification changes.
- FloatingIconView set the BubbleTextView to force hide dot, but never restored it.
BubbleTextView is instanceof IconLabelDotView, so its already handled in the end runnable
Bug: 183360736
Test: 1. swipe up to go home such that the closing app has a notification,
note that the notification dot is properly updated
2. have all apps open
make notification update for a predicted app
ensure dot is properly updated
Change-Id: I35dacf9b71a3d8b8a857be450690d65ea9199bf6
This reland commit 86ac825061
- When removing focused task, don't add it to taskpool as we'll immediately re-add the task
Bug: 192471181
Test: NexusLauncherTests
Change-Id: If4a9de74ac63ac14cf6a99262db31cb9f31b987e
FeatureFlags are supposed to work as static values and change
listeners can cause leaks if not handled properly at every place.
Bug: 193825269
Test: Manual
Change-Id: I54f9113bc01025da781a420154829d80ffa6a084
This allows taskbar to be loaded even in case of 3P Launchers
and removes dependency on LauncherActivity lifecycle
Bug: 187353581
Bug: 188788621
Test: Manual
Change-Id: I5a0988e0697b41677d4c58f0213aef14ec0c0972
- Only move focused task it's the first time attaching RecentsView
- Simpily remove and re-add focused task to move it to front
Bug: 192471181
Test: manual
Change-Id: I95b29c39328911beec7fd3d254f7a22be5e10cc1
During the widget-activity transition, the widget foreground loses its
clipping radius, if the clipping is determined by a drawable. We remove
the drawable through the animation.
For widgets where there is content being clipped by the background's
corener radius, this results in the widget window appearing square
through the entire animation, then snapping in rounded corners on
animation-complete.
To solve this, we leave a transparent clone of the drawable in the
original drawable's place, for the balance of the animation, providing
the outline for clipping.
Manual testing against 20 Google widgets showed no regression in
behaviour in other cases.
Bug: 193665108
Test: manual
Change-Id: I3db31e4634c8dd6b22a513a976386d396445ebc2
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/bpKcGg1eoOo5Jz5U6IwBYK
Bug: 191310680
Test: manual, auto-enter-pip from landscape with source rect hint being
turned on, see the video
Change-Id: Ic191fc73597132a5119522dda477a4319e35d1c8
Merged-In: Ic191fc73597132a5119522dda477a4319e35d1c8
- Use gesture (or button) to press home instead of UIDevice in the test, as UIDevice is sometimes failing to go home in cuttlefish
Bug: 193440212
Test: TaplTestQuickStep.testOverview
Change-Id: I834f1c93c24db24edbccd0bbf0ed5cfcf39a9b4d
The previous key was related to hotseat and not to the workspace size.
Fixes 184981523
Test: debugging and logcat logging
Change-Id: I445264ac0c4fb9ab99e31f96b7257271b730e2da
- If a task is too close to ClearAllButton when being snapped to, change the snap position to barely not seeing ClearAllButton
- When snapping to the above tasks from quick switch, apply a horizontal grid translation to smoothly snap into position
- Apply the above grid translation to TaskViewSimulator as well
Bug: 192254835
Test: manual
Change-Id: I32d562a1726f7c8b41ac10c7deece890df7e1304
- TaplTestQuickStep.testOverviewActions is failing on cuttlefish large screens due to overview actions being disabled by NO_THUMBNAIL, which should be caused by thumbnail being loaded after overlay is enabled, a overlay refresh after thumbnails is loaded should fix the problem
Bug: 193125090
Test: manual
Change-Id: I3fa8093012c3d22adac49e5e0716576706a85dfa
- Updated strings
- Updated removed 'next' button when there are followign steps
- Added timeout to automatically continue the tutorial
- Combined back left and right into one step
Bug: 192009114
Bug: 177005427
Test: manual
Change-Id: I58b9017c4d69b5d097326c7d5be156a63951fb1a
- The failure is not reproducible locally, thus requires adding logs and check ATP result
- Removed some redundant logs
- Changed to log at VERBOSE
- Added extensive logging to all visibility/enable/alpha setter of ActionsView
Bug: 193125090
Test: Manual
Change-Id: I5b449a7f86ea4cef65e0e46de4b389deef9f53f3
For problem explanation, see b/190339338#comment26.
When the binding dies, this attempts to retry
binding to the service with a backoff duration of
(1000 * 2^N)ms where N is # of attempts.
Bug: 190339338
Test: Taskbar seems interactable more consistently.
Manually failed the binding a couple times to see
retry mechanism and verified by logging locally.
Change-Id: Ia76207d0b2ef30b425ee1d7c66d7dee453bca7d8
- If Launcher finishes the animation, that also cleans up the screenshot
on the server side, so we can skip calling it
Fixes: 192684578
Test: N/a, adding a null check
Change-Id: I8bf1ad5089762469697d14842cc14c184055e925
This just builds the infrastructure and then, just as
an example/proof-of-concept, uses the infra to show/hide
the divider-bar when it makes sense.
Bug: 192292305
Test: enable SPLIT_SELECT, enter split, use recents and observe
the divider bar appropriately showing/hiding
Change-Id: Iea0704b3f7821c3056a1675f11e671e81305831f
Adds legacy versions of the animation logic.
Bug: 192279476
Test: use SPLIT_SELECT to launch 2 apps in split and observe
Change-Id: I5cbe7416819ba88d8c081fb413177fadac5b815d
- The failure is not reproducible locally, thus requires adding logs and check ATP result
Bug: 193125090
Test: Manual
Change-Id: I3d2d37a43d4b89885214b72e48f45a9b6bc63f61
These tooltips are added to educate the user about NIU buttons actions. We have added tooltips for Translate and Listen NIU actions buttons.
Bug: 186006700
Test: Manual
Change-Id: Ib076c2a44055b62f2daf06bddf45aca220a28756
- If Launcher finishes the animation, that also cleans up the screenshot
on the server side, so we can skip calling it
Fixes: 192684578
Test: N/a, adding a null check
Change-Id: Ia6b99b4262e72f925e7d622ea8833d3c88252633
Otherwise events won't be dispatched properly and window opacity will be
wrong.
Test: manual
Fixes: 191149025
Change-Id: Ice7ea86252282c7dc1cb5925dd1bdb8cade89c08
- Similar to LauncherRecentsView.onTouchEvent, don't allow touch to escape if overview UI is shown
- Add FLAG_OVERVIEW_UI to RecentsState
Fix: 192658511
Test: FallbackRecentsTest.testOverview on pixel_jumbojack
Change-Id: I80270da6c077e8302f75384edeb521cfa81266ec
We want to move the rotation suggestion button to the middle
of the taskbar when it is visible and not stashed.
To do this we need to update System UI about the current
state of the taskbar.
Test: manual
Fixes: 187410455
Change-Id: Id918e10a44631362f7c3a8a8bb624ee80bdd3c8b
- Previously we rely on whether launcher is resumed as a signal to see what "toggle" means. This no longer works since launcher is not resumed in Overview. Instead, we need to check the live tile signals.
- Use screenshot doesn't propagate after setting a new current task. So followed the logic around mRunningTaskIconScaledDown to work it out.
- Get rid of NavigationModeFeatureFlag, pending on 3rd party launcher change ag/14409355
Fixes: 185934639
Test: (1) Toggle overview from home screen and toggle back to fullscreen. (2) Toggle overview from app and keep toggling.
Change-Id: Iffaea18afb2179b5bb7dadda49e56efefa5658bc
Merged-In: Iffaea18afb2179b5bb7dadda49e56efefa5658bc
- Previously we rely on whether launcher is resumed as a signal to see what "toggle" means. This no longer works since launcher is not resumed in Overview. Instead, we need to check the live tile signals.
- Use screenshot doesn't propagate after setting a new current task. So followed the logic around mRunningTaskIconScaledDown to work it out.
- Get rid of NavigationModeFeatureFlag, pending on 3rd party launcher change ag/14409355
Fixes: 185934639
Test: (1) Toggle overview from home screen and toggle back to fullscreen. (2) Toggle overview from app and keep toggling.
Change-Id: Iffaea18afb2179b5bb7dadda49e56efefa5658bc
The issue is that in landscape mode we add overview shortcuts (e.g. screenshot) to the task view menu, where we switch to screenshot and finish recents animation before executing the shortcut action. However for shortcut actions like screenshot, we do the same, resulting in two chained "switch to screenshot and finish". This is a temporary fix for S given it's late in the cycle and we don't want to introduce unwanted regressions.
Fixes: 192272546
Test: manual
Change-Id: I7ef596e8bce6c15aa4a27163197beac12359b691
Fix: 186537288
Test: Repeatededly launch task from home and swipe to home, animation is correct
Test: Quick switch, launch task then swipe up, there is no jump
Change-Id: I9fd7416d9811ce4e54a1c6d20374d89d00417cd5
- Don't recreate the laucher transition controller if we've already ended it, as it could clobber a touch interaction that started in the meantime
- Test: swipe up from an app to overivew, swipe to dismiss it during the transition.
- Previously, we were ending the controller twice (once on touch down as we started proxying, and again in setupLauncherUiAfterSwipeUpToRecentsAnimation()), and the second one could happen after starting the dismiss interaction.
- Don't recreateControllers() if orientation didn't change
- Test: swipe up to go from an app to home, swipe up to all apps during the transition.
- Previously, we were getting the following sequence:
1. Touch down on home to start swiping to all apps - all current controllers get this down event to start determining whether to intercept
2. Before reaching touch slop, we recreateControllers(), so all new controllers won't get the down event and thus won't intercept
- Now, we avoid unnecessarily recreateControllers(), so the original controllers can still intercept.
Test: see above
Fixes: 189700453
Change-Id: I7b5fb3d21ab7a7a7044fcec7f2c1e39afe23c5dd
Previously divider drawable dimension was set on height,
which only works when things are divided vertically.
For horizontal layouts, we need to set divider width.
Bug: 192398954
Test: Tested portrait + fake/real landscape
+ tablet
Change-Id: I5a63df9749bf37c3a563e923a1b4724aa17d9409
We need the icon to be full alpha during the init pass, then when
the actual animation starts, we can swap the icon with the window
(splash screen that draws the icon).
Bug: 192366079
Test: slow down window animations
check no empty frame on cold start app launch
check no empty frame on warm start app launch
Change-Id: I16a1779e5252d8e88bc3c408e1dc40b264fe4cf4
- In the case where we get a screenshot on cancel, we should wait to
finish the recents animation until the view gets a chance to update
Bug: 185643608
Test: Swipe up to overview in 2 button, hit home
Change-Id: I2ac3567006f6fa7e6f473499f6862e5e408dfc3d
Test: manual
(1) Upgrading to new DB version is successful (no errors thrown in logcat)
(2) Widgets that were added with the old DB version have CONTAINER_UNKNOWN as their source container
(3) Widgets that are added with the new DB version still log source container after reboot
Bug: 185778648
Change-Id: Iaa38f0be6bc4cb0d29842f9a2ea0d08de000c930
Currently we place app surface below launcher and punch a hole through task view to display live tile in overview. In this change the order will be flipped, with a few benefits not limited to the following. For example, we have a surface view lifecycle bug where the surface view in a live tile app can go blank during app launch transition. This change will significantly mitigate the issue visually as the background wallpaper will not be revealed.
In order to make sure visually everything still looks the same, we will need to finish the recents animation when the user taps on the task view icon, since the menu overlaps with the task snapshort view.
This change also addresses fading out the task view when it's getting dismissed.
Test: manual
Fixes: 186531762
Fixes: 189265196
Change-Id: Ieae67fb89b60136fd81ceb8abde1a0cab8718b27
Color change updates recreate the view, which can interfere with the
widget-to-home return animation, specifically the GhostView's use of the
AppWidgetHostView's render node.
Deferring the application of color changes until the end of the
animation allows the widget to settle and remove the GhostView before a
color change might recreate the widget's view.
Bug: 190818220
Test: manual
Change-Id: I6552e583ebb0e4810077d4e70fe9ecb07fd5d01a
Previously we computed insets for task menu position
whenever a Task was told that orientation had changed.
This missed a path for the TaskMenuView's onScrollChanged()
listener, which also calls set position and wasn't taking
the insets into account.
Moved the inset into setPosition() directly so it's caught
on all code paths.
Also noticed 2 bugs where
* We were calling updateChildTaskOrientation() twice, it
already happens in the call to updateOrientationHandler()
* We were directly modifying insets from the activity's
drag layer instead of copying those insets to another rect
and then modifying (this is no longer an issue since we
are not touching those insets at all anymore)
Bug: 192400086
Test: Rotated w/ task menu open for fake and real
landscape. Nothing seems broken.
Note real landscape hides the menu whereas fake one
shows it (which was behavior before this change)
Change-Id: I613dac9519220f49285655ef11a1f72e4a6d31bd
> Updating background color
> Updating activity theme to not be transparent
> Updating default accent color
> Adding an accessible target to exit
Bug: 190447132
Bug: 190136972
Bug: 190454597
Test: Manual
Change-Id: Ia8ef67ed429c062a8d1109d7f444343ec4ca09cf
We'd like to be able to disable blurs during app launch, but without
disabling zooms as well. The previous sysprop would set the depth of
BackgroundAppState to 0, when what we want is to conserve wallpaper
zoom.
Bug: 191969790
Test: adb shell setprop ro.launcher.blur.appLaunch false
Change-Id: Ie4b26096f6ac723c3981bba2829557e6cc6c733b
- Calculate the diff to snapped page scroll and apply in onLayout, so tasks won't jump after dismiss when not in snapped position
- In grid, always keep the relateive snapped page unchanged to avoid jump
Bug: 188793333
Test: manual
Change-Id: Id11c2d700dc55440de39cc7409d06a712cedc9bc
- Use Builder for constructing SwipePipToHomeAnimator since the
parameter list grows
- Use mHomeToWindowPositionMap to adjust the position, this is to fix
the position issue when auto-enter-pip from split-screen
- The position map and its inverse does not seem to fit the case when
auto-enter-pip from landscape, leave it as it is
- Setup the SwipePipToHomeAnimator the same way in
createWindowAnimationToHome
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/b1j4eK7BU18sOGfuDlKMFR
Bug: 190749305
Bug: 190855091
Test: manual, see video
Change-Id: Ica9ca9f43b8fd5f1898fef4c6d173502dd897872
This way the wallpaper won't be zoomed out if an app crashes.
Test: adb am crash <some test app>
Fixes: 191979512
Change-Id: I7576798f736d63c3e46bbac1b983b9d1a437647d