Commit Graph

9297 Commits

Author SHA1 Message Date
Tony Wickham 6894f4f1bb Fix issue where popup jumps to full size before closing
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
2019-11-01 15:53:52 -07:00
TreeHugger Robot 23df556ec4 Merge "Fix bug where Files app keeps getting added to the workspace." into ub-launcher3-qt-future-dev 2019-10-30 17:29:36 +00:00
Jon Miranda a8109fb98c Fix bug where Files app keeps getting added to the workspace.
Caused by mainline updates where Files app session commit is broadcasted.
Launcher workaround is to not auto-add system apps to the workspace.

Bug: 139663018
Change-Id: Id61532bd0df2cd5f3bdfc28a3616ba5e5ff3d18a
2019-10-30 09:56:44 -07:00
Andy Wickham 6547f1a937 Forces OveriewInputConsumer to be used when Assistant is running on top of Launcher.
Previously it was using OtherActivityInputConsumer, which got things in a
pretty weird state (e.g. most recent app would appear in the center as if
it was the active app when you started Quick Switching, etc.).

By default (toggleable by a feature flag), OverviewWithoutFocusInputConsumer
is used because Assistant doesn't seem to respect the CLOSE_SYSTEM_DIALOGS
broadcast, at least in half-shelf mode. In this case, the Home intent is
sent on swipe up, or you can dismiss it with the back gesture or by tapping
above the half shelf.

The new feature flag ASSISTANT_GIVES_LAUNCHER_FOCUS routes touches through
OverviewInputConsumer. As opposed to OverviewWithoutFocusInputConsumer,
this allows Quick Step to work while Assistant is running. Additional logic
is added to dismiss the Assistant when appropriate. Note that the dismissal
happens atomically, so it's not completely fluid with the other animations.
As mentioned above, this is disabled by default because Assistant doesn't
currently respect CLOSE_SYSTEM_DIALOGS.

Demo with the flag enabled (and Assistant respecting CLOSE_SYSTEM_DIALOGS):
https://drive.google.com/open?id=1W5jGpn_TEC-KjrYwQtaBT3pzxG_5tC4W

Bug: 139661510
Change-Id: I261653118aff289b329ec2a7ca6e52f100f7835a
Merged-In: I261653118aff289b329ec2a7ca6e52f100f7835a
2019-10-29 14:39:35 -07:00
Jonathan Miranda dafd8d9225 Merge "Fix NPE caused by an install flow where we decode the LauncherActivityInfo but we don't fill in the data Intent." into ub-launcher3-qt-future-dev 2019-10-29 19:03:25 +00:00
Tony Wickham 329fca4550 Move overview haptic feedback to VibratorWrapper singleton
Bug: 141886704
Change-Id: I0178a52088dd4150d7ba054983697ea63a00d9a8
Merged-In: I0178a52088dd4150d7ba054983697ea63a00d9a8
2019-10-25 22:53:21 +00:00
Jon Miranda 4459e3f6f9 Fix NPE caused by an install flow where we decode the LauncherActivityInfo
but we don't fill in the data Intent.

Bug: 143190879
Change-Id: I8f774203b99f022b2cf1708de6d8fe2398b332ce
2019-10-25 14:24:05 -07:00
TreeHugger Robot 0c7b01a694 Merge "Add support for work profile promise icons." into ub-launcher3-qt-future-dev 2019-10-24 23:17:43 +00:00
Jon Miranda 7c76a33243 Add support for work profile promise icons.
- We were not getting callbacks for sessions created under work profile.
- We did not pass in the user when creating the workspace item infos.
- Added check for if app is installed before adding item to workspace
  to prevent any stale promise icons. This seems to happen when uninstalling
  and then immediately reinstalling an application.

Bug: 141556707
Change-Id: Ie0320f3ede70b6c7543cb60c3b95a2fe398eecb5
Merged-In: I2db2d8da449c37eb248a59fbc9e7b517f50855c1
2019-10-24 23:07:04 +00:00
Tony Wickham eed585b0c3 Refactor SwipeDetector to track both axes
Existing clients now use the SingleAxisSwipeDetector subclass. A
followup CL will add BothAxesSwipeDetector, whose first client will be
the quick switch from home controller.

Bug: 126596417
Change-Id: I54c71088cfe99ff28cdc719a1eb7a7d06ac95d2d
Merged-In: I54c71088cfe99ff28cdc719a1eb7a7d06ac95d2d
2019-10-24 18:56:44 +00:00
vadimt 7fcbd2379b Fixing activity leak on config change
If attachTo happens before the view is attached to window,
ViewOnDrawExecutor hooks to the tree observer twice (second time from
onViewAttachedToWindow). It only unhooks once.

Since tree observer is global, this leads to leaking the activity, and
besides, all old activities getting the events from the tree observer.

Bug: 139137636
Change-Id: Ie2641b8f3614545052fe34ad6588b070c3b82a33
(cherry picked from commit ebb5c75344)
2019-10-18 19:36:26 +00:00
Jonathan Miranda c3a688a973 Merge "Have consistent All Apps UI between grid size changes." into ub-launcher3-qt-future-dev 2019-10-16 22:36:17 +00:00
Jon Miranda 64d7481597 Have consistent All Apps UI between grid size changes.
We build an IDP with no grid size override values. This
allows us to reference the profile measurements so that we can have a
consistent UI for areas that the grid size change should not affect.

Bug: 124967099
Change-Id: I6235862c95800d8f31dbf2de1d12b1fcf4dbd850
2019-10-16 11:21:36 -07:00
Tony Wickham 14b919e2fd Fix mSubtractDisplacement when recatching
Previously we correctly set mSubtractDisplacement when re-catching
during the SETTLING state, but then immediately overrode it to be
+/-mTouchSlop.

Test: Swipe up to all apps, catch it by touching down during the
transition, ensure there's no jump when starting to move again.

Change-Id: I5d543e8a8b027b68bafb26b752e70862f6ae0777
2019-10-15 11:35:15 -07:00
Jon Miranda 1dd2e48190 Wait until listeners/end runnable is created before checking icon result.
This prevents the case where original icon is in hidden state, then the
view gets recycled and since there is no listener/end runnable the original
icon is left in the hidden state.

Bug: 142120338
Change-Id: I5f5bfa2a7c70d10869f51edf5c40bbaab1ef93bc
2019-10-11 11:03:26 -07:00
Samuel Fufa f2d486e5b0 Merge "Scale Icon badges for shortcut and widgets" into ub-launcher3-qt-future-dev 2019-10-08 01:41:53 +00:00
Tony Wickham 9788183962 Merge "Fix quickswitch flickers/ignored swipes" into ub-launcher3-qt-future-dev 2019-10-07 21:08:34 +00:00
Tony Wickham af33f2c9d4 Fix quickswitch flickers/ignored swipes
- Don't set current page to running task when applying load plan,
  if we are already settling on a new task to launch.
- When starting a new task, finish to the running app if that's
  the task being started (should not happen with above change)
- When disabling free scroll mode, don't snap to a page if we're
  already on it. This was setting mNextPage so the first check
  was falsing.

Bug: 142068081
Change-Id: I5b392d9726a81c51718d2f94eee6cd4f78b61f69
2019-10-07 21:08:04 +00:00
Samuel Fufa aa038af6b3 Scale Icon badges for shortcut and widgets
Test: Manual
Bug: 141262820
Change-Id: I03edc986e3fe1876b6b7ed179b96864d587cb137
2019-10-04 17:06:33 -07:00
TreeHugger Robot e5865a03bb Merge "Decouple grid size and widget preview size in WidgetsRecyclerView" into ub-launcher3-qt-future-dev 2019-10-04 23:36:22 +00:00
Samuel Fufa f1424a3b38 Decouple grid size and widget preview size in WidgetsRecyclerView
Test: Manual
Bug:142148773
Change-Id: I59aa29e95ddb7d6002a88cf853bae5fcf9811154
2019-10-04 15:15:58 -07:00
vadimt 1ac98548a7 resolve merge conflicts of 08776ada1e to ub-launcher3-qt-future-dev
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I9a3b0f67ee874b5ec4ad67f41a46ec7876d19082
Merged-in: I9a3b0f67ee874b5ec4ad67f41a46ec7876d19082
2019-10-03 20:58:15 +00:00
Pinyao Ting 52d0252150 Fix the issue talkback feedback doesn't say anything when user long
press on an app icon.

When user long press on an app icon, the a11y focus event wasn't
properly triggered on the container of deep shortcut, which is why
there wasn't any talkback feedback after long press on an app icon.

Bug: 140786694
Change-Id: Ib38db147faa5a163985f1ed74beec04c588b022c
2019-10-03 07:47:33 -07:00
Samuel Fufa 0063204dbf Add nullcheck for VelocityTracker
Bug:134712476
Change-Id:I7834507a4e9aadf4d89c0ed6f3eba812df7425cd
(cherry picked from commit 6ef5b8abf4)
2019-10-02 18:23:03 +00:00
TreeHugger Robot d39f7b51c8 Merge "Some cleanup for SwipeDetector." into ub-launcher3-qt-future-dev 2019-10-01 21:47:46 +00:00
Andy Wickham 769c795edf Some cleanup for SwipeDetector.
It is now organized as follows:
 - private constants
 - public constants
 - private final fields
 - private variable fields
 - constructors
 - public methods
 - private methods
 - public interface/abstract class

This is intended to be a functional no-op.

Bug: 141939911
Change-Id: Iad5a9b3b73b35641f8a4f1d52ada6adef3825c47
Tested: Built and sanity checked manually.
2019-10-01 14:38:56 -07:00
TreeHugger Robot 08776ada1e Merge "Waiting for Launcher model load in out-of-proc tests." into ub-launcher3-qt-qpr1-dev 2019-10-01 19:48:05 +00:00
vadimt 7371e4da68 Waiting for Launcher model load in out-of-proc tests.
Not doing this seems to have caused flakes.

Bug: 141770616
Change-Id: Ia9caf20e4a2d93298adf4249ca815ad79bced802
Merged-in: Ia9caf20e4a2d93298adf4249ca815ad79bced802
2019-10-01 19:18:14 +00:00
Samuel Fufa 1f3a847011 App title in Widget list shouldn't be actionable by a11y methods
Bug:139913027
Test:Manual
Change-Id: I2a5d5551d09ee2bc96444164ed77225a3b4a829a
(cherry picked from commit d3720c210b)
2019-10-01 17:33:18 +00:00
Pinyao Ting 52908c9adc Revert "Revert "Revert "cache shourtcut image"""
This reverts commit d13f0c5c45.

Reason for revert: app crashes when adding widgets automatically b/141568904

Change-Id: I5b97f440716c93b1bd93c899e3e1d40e8bbd2885
2019-10-01 09:44:11 -07:00
Pinyao Ting ea38c25854 removed extra test protocol for unit test
Bug: 140406263
Test: run TaplTestsLauncher3
Change-Id: I73b3098bd3aa92fed41d22a94cb58fd07263d26a
2019-09-30 18:34:49 +00:00
vadimt 10b1414778 Merge "Adding debug tracing for a flake" into ub-launcher3-qt-qpr1-dev
am: 1a02173321

Change-Id: Id1feb3f64191475472bdfceac309b6e26869a1e6
2019-09-28 01:07:55 -07:00
vadimt 3895d9b642 Adding debug tracing for a flake
Bug: 141770616
Change-Id: I6413ca6ce380eede817ae2418d5a1bc04c091270
2019-09-27 17:55:48 -07:00
TreeHugger Robot 989c9f8b17 Merge "Fix notification dot scale in AllApps with grid size enabled" into ub-launcher3-qt-future-dev 2019-09-27 22:19:19 +00:00
Samuel Fufa c96fa247a3 Fix notification dot scale in AllApps with grid size enabled
Test: Manual
Bug: 141262820
Change-Id: I24abf822edaeeabf335ed698a3ac1a65b71be7dc
2019-09-27 14:49:54 -07:00
TreeHugger Robot d69327e9c0 Merge "Fix ScrimView caret alignment and ignore touches" into ub-launcher3-qt-future-dev 2019-09-27 00:15:36 +00:00
Samuel Fufa 0316d6cd7a Fix ScrimView caret alignment and ignore touches
Test:Manual
Bug:79868152
Change-Id: Idd5a2b965173b8071697b50aac8760b0d84e469f
2019-09-26 16:30:46 -07:00
TreeHugger Robot ecee887d1a Merge "Drag and drop preview size for BubbleTextView" into ub-launcher3-qt-future-dev 2019-09-26 19:29:58 +00:00
Samuel Fufa 45812a9ed6 Drag and drop preview size for BubbleTextView
Test:Manual
Bug:141260670,141263002
Change-Id: If08dba28cce3ae07bb39ddad3743dd5eea92cb90
2019-09-26 12:21:45 -07:00
Pinyao Ting 2bcd26a23d Merge "migrate custom widgets in comply with plugin framework" into ub-launcher3-qt-future-dev 2019-09-25 23:45:49 +00:00
Pinyao Ting 59e908b54f migrate custom widgets in comply with plugin framework
Bug: 139888225
Change-Id: I8a3d0fe2689ad5ba24b19309728bbad0b6287f71
Merged-In: I8a3d0fe2689ad5ba24b19309728bbad0b6287f71
(cherry picked from commit c7a6c2979c)
2019-09-25 15:58:41 -07:00
Jonathan Miranda c50fe371b1 Merge "Fix NPE when trying to construct WorkspaceItemInfo with null intent data." into ub-launcher3-qt-qpr1-dev
am: 0e752faff4

Change-Id: I11fc10b79d83971d7eeb466a619f50fc3fd5a637
2019-09-25 15:26:07 -07:00
Jonathan Miranda 0e752faff4 Merge "Fix NPE when trying to construct WorkspaceItemInfo with null intent data." into ub-launcher3-qt-qpr1-dev 2019-09-25 22:07:31 +00:00
vadimt eda5c215b7 Merge "Removing debug tracing for a fixed bug" into ub-launcher3-qt-qpr1-dev
am: b72cd2629c

Change-Id: Id28e20b5fe23c6f6501f3c7a38305f0a306b287a
2019-09-25 12:21:06 -07:00
vadimt 49b64a98ca Removing debug tracing for a fixed bug
Bug: 141275518
Change-Id: I171361d4f797f587b404eed07108224d8ab844f8
2019-09-25 11:26:56 -07:00
Samuel Fufa 762aaaa817 Merge "Allow LongPress between homescreen icons" into ub-launcher3-qt-future-dev 2019-09-24 23:24:10 +00:00
TreeHugger Robot ff4977d42d Merge changes from topic "a11y-minus-one" into ub-launcher3-qt-future-dev
* changes:
  fix test for a11y change in supporting -1 page
  Revert "Revert "support scroll backward to minus one screen via voice/switch access""
2019-09-24 21:37:01 +00:00
Samuel Fufa 4a1d9b12c5 Allow LongPress between homescreen icons
approach: Ignore BubbleTextView touches in padding

Test: Manual
Bug:141265063
Change-Id: I579d414293e922e926410d0373f101f9dde9bce0
2019-09-24 14:10:03 -07:00
Jon Miranda 3944746fb6 Fixed a bug where restored promise icons stay promise icons.
Test:
1 Turn off WiFi
2 Install app. (Promise icon gets added to home screen).
3 Backup launcher.
4 Restore launcher.
5 Turn on WiFi
6 Note promise icon gets updated with as installation progresses.

Will submit to future/master later.

Bug: 140212732
Change-Id: I63cedc6c16f5028297fb1a0852ffbd4473319ae9
(cherry picked from commit 0e1b17f8c4)
2019-09-24 19:40:30 +00:00
Jon Miranda 10b898eee6 Fix NPE when trying to construct WorkspaceItemInfo with null intent data.
We change the way we parse the install queue; so this seems to be a rare case
when trying to flush an install queue from an old apk with a launcher apk
with the new parsing changes.

Bug: 140935140
Change-Id: I14db4c3f70ed2e1bc5ad31dec7e6473cd6f8f13c
2019-09-24 11:26:57 -07:00