background thread. Added a feature flag to toggle on/off this
feature.
Bug: 140242324
Test:
1. (Custom Shortcut) Long click on google maps -> widgets -> drag
driving mode to workspace.
2. Open chrome -> add to home screen -> add -> add automatically.
3. InstallShortcutReceiver
In Launcher.completeAddShortcut, commend out the code that
calls PinRequestHelper.createWorkspaceItemFromPinItemRequest,
then open chrome -> add to home screen -> add -> add
automatically.
4. ShortcutDragPreviewProvider
qdb -> long press on suggested app that has deep shortcut
-> drag to workspace.
Change-Id: If7babe4eddf5434909bf686b4e9bde15e444d9fd
- The states that trigger the call are all on the UI thread, so we
shouldn't need to synchronize before calling into it. But the
second issue is that we set those states when the gesture ends and
we calculate the end target. This can happen before the animation
started or after the animation has been canceled, so we need to
guard against the null controller as well.
Bug: 143153963
Change-Id: I4649483a52c85c5662665d5e8905b49d5623b6dc
- Immediately callback when scheduling activity tracker callback and the
activity already exists
- Remove LauncherInitListenerEx, it was only used to update the prediction
ui state, but not all of the callers of the launcher activity init
listener actually needs this (ie. Go doesn't have overview predictions,
overscroll input consumer/touch interaction service doesn't need it.)
Instead we only call it in the places we need it LauncherSwipeHandler (for
swipe up) and OverviewCommandHelper (for the nav bar button).
Bug: 141886704
Change-Id: I890a45e658be813e99b2a02f179fce611ede9ce8
Bug: 143904998
Test: put now playing shortcut in workspace, verify dragging it doesn't
cause a crash
Change-Id: Ic531b43d61d55ec14e9f420ff799a36b8d785e2a
Now, for example, we won't diagnose a locked phone as a
"home button not showing in 3-button mode", even though it's technically
correct.
Change-Id: Ibdfa0741af7ff8545a811f6702dda74dc6c31c2e
Since we made the change to treat all auto added workspace items as promise
icons, the initial shortcutExists check breaks since its comparing the promise
intent to the actual app intent. This additional shortcutExists check can
compare the proper intents.
Bug: 143803446
Change-Id: Ifa27b15205d6e17f83a4437ac175d51815688c84
In a879f9c481, the ub-launcher-aosp-tapl
was switched from current to system_current. Since Launcher3Tests links
against this library, we require it to use the system stubs as well.
But I broke the check in the build system while doing some cleanup, so
we never noticed. I'm fixing the check in:
https://android-review.googlesource.com/c/platform/build/+/1156840
Bug: 143748700
Test: treehugger
Change-Id: Ifcf47b19f7ed8f907e437325b4fd6a599fcca4cf
- We do need to redraw live tile when translationX changes
- Switch live tile to screenshot and finish recents animation when the drag takes user back home
Fixes: 143857157
Test: Swipe up from app to Overview, pull back on home handle, and observe that the live tile follows through the recents view with translationX change
Change-Id: Ie1b726c9efc1a86605847c960e2ce1e2b50bdae3
After we finish the recents animation, the current task id should be correctly reset so that when the task is launched from Overview later, it goes through the flow of starting a new task instead of finishing recents animation to app. A typical example of this is (1) user swipes up from app to Overview (2) user taps on QSB (3) user goes back to Overview and launch the most recent task.
Fixes: 143377934
Test: Turn on live tile, swipe up to Overview. Tap on QSB, see QSB launching correctly. Go back to Overview, tap on the most recent app tile, make sure the app is launched correctly.
Change-Id: Ibc1c8249d9b79584495bf0cec2ae6f7debfa658f
Some background on what was happening:
- When mEndRect.isEmpty(), we set it to (0, 0 , width, height)
- We called mEndRect.setEmpty() in animateClose(), but override
mEndRect if the reveal animation set the outline bounds.
- But the reveal animation doesn't set the outline bounds until
after the arrow animation (40ms) finishes, i.e. the arrow scales
up for 40ms then we clip to outline and start revealing the popup
- Thus, if you started a drag before the arrow animation finished,
we called mEndRect.setEmpty(), which made the close animation start
from the full popup size even though it was previously invisible.
To fix this, we clip the popup to its (empty) outline while the
arrow animates in, and then we can always start from wherever the
outline currently is when we close the popup.
Test:
- Set animation duration to 10x
- Long press an icon, and start dragging before the arrow scale
animation finishes
- The popup never shows, whereas before it jumped to full size
Bug: 143639898
Change-Id: I284dd06a23e0e9c3faf066a0083ac13bac88ebcc
Test:
- Long press an icon to open the popup
- Long press the same icon while the popup is open
Previously, the dot would reappear (when the original popup finished closing).
Now, the dot stays hidden, as it should since a popup is showing.
Bug: 143639898
Change-Id: Ia0bdb626e02f4ad9ba12c27d94fea054b4afe50e
App open animation gets cancelled because of screenshot cleanup (launcher is stopped). We need window manager support to allow them to go parallel (b/143774568). As a workaround, we can either (1) delay launching the next task until recents animation is properly cancelled (2) finish the recents animation before launching the next task. Performance is the same, so go with (2) since it's a cleaner solution
Fixes: 143773683
Test: Swipe up to Overview from app, launch another task in Overview. See everything animate smoothly.
Change-Id: Iafd3f6f529fba32c1113b766c033e5932f19f4f3
Supports filling hotseat with predicted apps, pinning of predicted apps
and manages replacing predicted apps with user drag.
Bug:142753423
Test:Manual
Change-Id: I224294f9353a64c46d28c22263a72332a79fddf4