Previously we were using OnGlobalLayoutListener, which is only called
when AllAppsContainerView or a child is re-laid out or visibility
changes to or from GONE. Since we no longer relayout when already
scrolled to the top, we need a better hook to check whether all apps has
changed visibility for the purpose of updating predictions.
Bug: 140823188
Change-Id: I7c4a0d94c529eb86b55729c75843c8b0bd673d8c
- Ensure we only add promise icons for apps that aren't already installed to
our internal list of session ids.
- Ensure we only remove promise icons created from the install session when
that session is abandonded.
Bug: 140819614
Change-Id: I3c93865b5e96a9c7a160154b45a38eb90ac9d183
value, refresh icon cache
Bug: 135638690
Bug: 138964490
Test: manually toggled feature flag UI on/off
$ adb shell device_config put launcher APP_SEARCH_IMPROVEMENTS [true|false]
when launcher is in foreground and also when it is in the background
Afterwards, saw if "bank" would show BofA app or not
Change-Id: I98b62bd07b14a225168217d7eb9bfdfc7f74435d
This fixes the bug where the wrong icon is present during the app close
animation.
Bug: 138195597
Change-Id: Ife2c6ad135dde54583f6f2bb2caf3b1e9325e064
Merged-In: Ib3767ec5c2b4eb22b35e5148879e11d2c1b28e3c
- For app open, the icon text remains where it is and only the icon moves.
- Similarly for app close, the icon text remains where it is and fades in
with the rest of the other icons text.
- With this change, the original view is always "VISIBLE"
(if BubbleTextView/FolderIcon) but we hide certain elements.
Added video to bug.
Bug: 137200188
Bug: 139885365
Change-Id: I3d20c5f05bc7c0b9d052d8074ac3bfc21531c83d
Merged-In: I3d20c5f05bc7c0b9d052d8074ac3bfc21531c83d
Calling scrollToPosition on RecyclerView internally calls
requestLayout() (to cacluate where to scroll and then go there).
Therefore, we should avoid calling that whenever possible, especially
during transitions. In particular, we can optimize scrollToTop() to not
scrollToPosition() if we are already at the top.
This makes some other workarounds unnecessary, namely setting All Apps
to GONE during system gestures.
Test: Open an app, swipe up, ensure AllAppsRecyclerView doesn't get
onLayout(). If we had scrolled to an app first, we get one layout
in prepareRecentsUi(), but not during the transition.
Bug: 140308849
Change-Id: I62ee341bf5893c121cfc013cc6542559f79d2a42
This prevents it from holding focus while the Widgets screen is visible
(after using Widgets action from the All Apps caret thingy).
Test: Manually followed steps provided in bug, and issue not seen after this change.
Fixes: 139918680
Change-Id: I280ac97fb7ff9fa67f1c6a1ce9cdfa9e451231eb
- In some cases, SessionInfo is created without an icon until later on
in the install process. This prevents promise icons with default Android
logo from appearing.
- This will also prevent apps without a launching activity from appearing
as a promise icon and then disappearing when the app is installed.
Bug: 135633159
Change-Id: I30adde8bf2cf583bffca8ed878f9cc20d6d41a13
We already set the all apps content visibility = GONE at the start of
the gesture to prevent relayouts, but when animating home we were
inadvertently changing it to INVISIBLE, causing a relayout and jank.
Bug: 140308849
Change-Id: I285746f8ac8f3f857282e22ebec8eebd0b98647f
Approch: approach: filter out people with null getKey before sorting.
Bug:139436782
Change-Id: I6510a12374ff4fec02c879ff76ba42b1fcdb8281
(cherry picked from commit 8628eb9353)