This makes the logic for accessing various properties consistant and
and ties it to the UI of the DeepShortcutView.
Bug: 30817556
Change-Id: I09536b9f91b2a9969fcc286f83dd2b17e16cd9ce
- We only want to log when the container is opened and potentially
used, not when a long press is followed by a drag-and-drop.
- Also cleaned up code that was determining the container of the
app icon, since LaunchSourceProvider.fillInLaunchSourceData()
can do that instead (it's more robust and consistent).
Bug: 30791570
Change-Id: I05b6750f26182fda8a9940ac66f1371c2d228ca9
> Check for permission on every onResume
> If the permission is different than last known permission,
reload and rebind workspace.
Bug: 30789422
Change-Id: Idfa445815e29e2336505779545507d106b33a253
mBgDeepShortcutMap is only accessed on the background thread. But
the same instance of list of values was getting passed to the UI
thread, instead of being cloned.
Change-Id: Ie7d0442d895304489ce9323ea872b9091d668ae5
This change makes the padding consistent regardless of where the app
is (e.g. folder vs workspace vs all apps) by ignoring the app's
padding and adding our own to the shortcuts container.
Also note that this padding is relative to the icon, excluding the
text beneath it. So we also hide the text when the container opens
downwards, and re-show it when the container closes.
Bug: 30604007
Change-Id: I6e51c4983a8b5d495833f86e483ebaa229ed2099
Otherwise the previous active controller will continue to handle touch
events even if it doesn't re-intercept future touches. For instance,
All Apps was handling the swipe gesture after DragLayer intercepted to
close a shortcuts container, which led to the weird behavior described
in the bug.
Bug: 30590854
Change-Id: I247b39b03d336a04659f6ce644380bf3cef8de3f
- Any change to the TextView text will cause mQuery to be set,
which will cause a new search next time refreshSearchResult
is called. We should also be checking there if it is a valid
search query before starting a new search.
Bug: 30606307
Change-Id: I08640c56199211f2aeea2386fcf699810853ab58
- Just skip the animation if we are animating to the same wallpaper
offset (which is the case when we are adding from all apps)
Bug: 28587903
Change-Id: Ib7b1828c1b099a665d68c22cb33ee62693f33f35
- Before we always started the close animation at 0 instead of
the previous open progress, which looked janky.
- Shortened the animations' durations and start delays to
account for the fact that the open animation was only
partially finished when the close animation started.
Bug: 30465231
Change-Id: I958ee5f4543dbf1185f3d0229c55fc1b51929655
- Log as long press with child type DEEPSHORTCUTS container
- Parent type can be one of WORKSPACE, HOTSEAT, FOLDER,
ALLAPPS, PREDICTION, or SEARCHRESULT.
Bug: 30537079
Change-Id: Ie62e4889ee06c845f959ca998781787a7fdaf00e
- We take the first 4 in sorted order, except we remove up to 2
static shortcuts to make room for dynamic ones if they exist.
- Added ShortcutFilterTest with testSortAndFilterShortcuts().
This asserts that the filtered list is sorted and has the
expected number of static and dynamic shortcuts based on
inputs with various amounts of each.
Bug: 28980830
Change-Id: I832b6b21144f17c74bb8b90a840d6620e99911b8
> LauncherApps returns empty list when the user is locked. Not relying on
LauncherApps in this case
> When the user is locked, removing all dynamic shortcuts
> Loading shortcuts from DB when the user is locked
> Verifying the shortcuts again when the user is available
Bug: 30411561
Change-Id: Ib6eb372c5b009cadb86a8f6e781f3f3cbf787ceb