Commit Graph

236 Commits

Author SHA1 Message Date
Jon Miranda 27bdbcae7f Slide in first page preview items in FolderIcon after Folder closes.
If the Folder is not closed on on the first page, we animate the
current page items as if they are in the preview.

When the Folder finishes closing, the first page preview items
slide in as the current page preview items slide out.

Bug: 36022592
Bug: 35064148
Change-Id: I7ede7ed9e091e2a0c3cbe11731744bfe9ce36595
2017-07-10 11:28:57 -07:00
Jon Miranda 6c5d10261e Move the PreviewItem drawing/animation logic to PreviewItemManager.
We want this refactor in O-DR since we will be adding more animations:
- closing from a non-first page (ag/2455887 b/36022592)
- new on-drop animations *if we end up removing the permutation logic.

Bug: 36022592
Change-Id: I82b8f5f5033d4fd9bd50fbe414b0fb721891d043
2017-07-06 12:20:56 -07:00
Jon Miranda 69c340a05e Match items in icon preview with items in Folder using permutations.
Before, with the FolderIconPreviewVerifier, we would
adjust which items are displayed in the FolderIcon.
This caused some issues where the apps in the folder
icon would jump to whatever was in the upper left quadrant.

Now, we always display the 4 first items in the icon by
modifying the XY positions of the items within the Folder.

Bug: 27944225
Bug: 35064148
Change-Id: I46c0fbb064d4da4da155e29963bfb92b14e40f07
2017-06-28 09:52:11 -07:00
Jon Miranda 1d9cc32475 Fix Folder text animation bugs.
* The Folder text was not getting reset back to visible on close.
* DoubleShadowBubbleTextView now draws the shadow using the
  alpha of the current text.

Bug: 62967568
Bug: 35064148
Change-Id: Iea3e5275b6878fc362150e99a225ff700b946f44
2017-06-26 11:43:58 -07:00
Mario Bertschler cd04c89f89 Removing view.isInTouchMode() because plaform returns false when
using a mouse on long click.

Bug: 38204847

Change-Id: I5b10e8251f4f0a7b148c0404d5939a0fa8325a46
2017-06-22 09:29:46 -07:00
Jon Miranda 544946ae80 Set mDragInProcess to false in onDragEnd.
Before this change, it was possible to touch (not drag and drop)
a Folder and have it open to a non-first page.

With this change, the Folder always opens to the first page on touch.
For drag and drop, it will still open to the last page.

Bug: 36022592
Change-Id: Ib0417eaf7e4866e874369b3b35248231a54cba06
2017-06-21 12:00:19 -07:00
Jon Miranda f9e8626fd0 Fix shadow problems with Folder animation.
The shadow from the top of the Folder is visible through
the transparent part of the 'preview' background. When we
remove the elevation as part of the animation, the shadow
jumps into visibility when the animation is done.

To solve this, we remove the elevation during the Folder animation and
 * Animate the elevation at the end of the Folder opening animation.
 * Animate the shadow of the FolderIcon bg in once the Folder is closed.

Bug: 62787582
Bug: 35064148
Change-Id: Id5d8fcbfa4f74882531334f12488560da2496faf
2017-06-20 09:24:17 -07:00
TreeHugger Robot 60c26d1424 Merge "Fade folder icon text when opening/closing." into ub-launcher3-dorval-polish 2017-06-19 23:34:24 +00:00
Jon Miranda 1991450cb0 Fix bug where TalkBack reads both folder name and hint.
am: 7d18dd8f07

Change-Id: Iedf8f4f8c4f9063372afb57ca1cf7462a15d7223
2017-06-19 20:26:20 +00:00
Jon Miranda 7d18dd8f07 Fix bug where TalkBack reads both folder name and hint.
In O, TalkBack reads both content description and the hint.
We clear the hint when the Folder is named so that TalkBack
only reads the Folder name.

Bug: 62557038
Change-Id: I222fef2e1ce4a0bc222f0ca7bfb2f24281907188
2017-06-19 18:08:52 +00:00
Jon Miranda e4a252a16b Fade folder icon text when opening/closing.
Bug: 62065293
Bug: 35064148
Change-Id: I9c54c6d222216fa079c76a069f0ec8dd966d5bfb
2017-06-18 17:47:11 -07:00
Tony 814deadc2c Animate badge after folder closes
Bug: 62586079
Change-Id: I17d7b88730c16f5cce36972dd485fd10b823f742
2017-06-15 18:30:41 -07:00
Jon Miranda 4e54a4cfa5 Fix bug where item was not moved in database when added to a Folder.
I thought calling arrangeChildren(saveChanges=true) would handle
this case, but because we set the position and rank in addViewForRank,
arrangeChildren does not see any changes to save.

Change-Id: Iab0fefe6da7711857ea05955a3243459f4e8527b
2017-05-23 11:45:17 -07:00
Jon Miranda c476d6e192 Allow user to place PendingAddShortcutInfo in opened Folder.
Current implementation only allowed dropping PendingAddShortcutInfo
on a FolderIcon.

Bug: 37814579
Change-Id: Ice42421c34665b0ebf199945761c5c86614573a4
2017-05-22 14:49:28 -07:00
Jon Miranda f79e54b8ac Add missing 'leave behind' view for new Folder animation.
Bug: 35064148
Bug: 38338552
Change-Id: Iac1a795acf0ab21cf319e50d8b504cf42fbbb976
(cherry picked from commit 9544c8e498)
2017-05-16 17:20:50 +00:00
Jon Miranda bdb5424fae Fade in the FolderIcon stroke after Folder animates closed.
When the Folder animates closed, it hides itself the same
time as the FolderIcon becomes visible. Because the Folder
does not have the white stroke outline, there is a visual
jump between the closed Folder and the FolderIcon.

This change is a subtle and easy step towards reducing
the visual jump.

Bug: 35064148
Change-Id: I8aeeed873e7144499d19f3b01c85bfa8a792097f
2017-05-01 19:07:56 +00:00
Tony Wickham 52f0130a76 Merge "Add WidgetsAndMore bottom sheet" into ub-launcher3-dorval
am: d73fbb5f97

Change-Id: I5d1bad3ea83e672076dbd3b6f2d80d5149f3921c
2017-03-30 23:26:12 +00:00
Tony Wickham 50e5165b78 Add WidgetsAndMore bottom sheet
- Contains two rows, one for widgets, and one for "configurable
  shortcuts" that have customization activities
- Extends AbstractFloatingView and uses VerticalPullDetector for
  touch interactions
- No way to show this currently; will add options to popup in followup

Bug: 34940468
Change-Id: Iab62c2cb89428f91119c9c86f9db886496c321fd
2017-03-30 15:48:53 -07:00
Mario Bertschler c06af333cb Minor Refactoring only: no functional change
- organizing imports
- remove redundant modifiers on LauncherCallback interface
- fix typos

Change-Id: I61eb985cac7c1379b6b804a67d4f234386d3d1b4
2017-03-28 12:23:22 -07:00
Jon Miranda f0cbf0f8b8 Disable drag and drop on Folder when its animating.
Bug: 36644495
Bug: 35064148
Change-Id: Icd335a773359152fa2680e84f56c3e2eef3551e0
2017-03-27 11:29:19 -07:00
Jon Miranda 91d1439430 Remove setCurrentPlayTime call as it causes a crash.
In the previous change [1], we remove the duration
from the AnimatorSet so that the preview item
animations can finish faster than the other animations.
This causes the call to setCurrentPlayTime to crash,
because we never set a duration on the AnimatorSet.

This can be solved by creating a ValueAnimatorSet (future CL).

1: If63d4d032078ff4e28b72a09e35da3a71f1d0e27

Bug: 35064148
Change-Id: Ieed21e1ba8e669132188ce15fc20195ac841d14c
2017-03-23 15:27:14 -07:00
Jon Miranda ce74d2a813 Smoother folder animation tweaks.
1. Start preview item animations later opening
2. Finish item animations sooner when closing
3. 1 & 2 allow the preview items to move as part of
   the Folder and allows for a smoother animation
4. Remove setCurrentPlayTime as it is O API.

Bug: 36522198
Bug: 35064148
Change-Id: If63d4d032078ff4e28b72a09e35da3a71f1d0e27
2017-03-23 14:04:55 -07:00
Jonathan Miranda 5f77fdb8b9 Merge "Revert "Temporary fix for Folders in battery saver mode."" into ub-launcher3-dorval
am: 3345f133a0

Change-Id: If2c4fa92842c08501b90f3da6bc972e4ba32c6a8
2017-03-16 21:30:35 +00:00
Jonathan Miranda fb6c32a983 Revert "Temporary fix for Folders in battery saver mode."
Note: b/36157561 has been properly fixed.

This reverts commit 715a322e9a.

Change-Id: I267db053a45a75fdef71c6d178f140c7abcb8616
2017-03-16 20:24:21 +00:00
Jon Miranda a7cddd2c96 Refactor Folder/FolderAnimationManager code.
* FolderAnimationManager is now lazy loaded.
* Extract methods to simplify code.

Bug: 35064148

Change-Id: I08a72ef19a1f21637f033059d5e228ef67135ccd
2017-03-16 12:12:46 -07:00
Jon Miranda 961941f102 Merge "Temporary fix for Folders in battery saver mode." into ub-launcher3-dorval
am: 29318b1aa6

Change-Id: Ib69faba80d7dcba68f5b92c2db9defd09a209569
2017-03-15 16:53:58 +00:00
Jon Miranda 715a322e9a Temporary fix for Folders in battery saver mode.
In battery saver mode, the Folder opens where it appears
the final values of the Animators are not being set.

Bug: 36157561
Bug: 36246234
Change-Id: I8dd58044f5f5ac66f8a8476a77d9899447a973eb
2017-03-15 08:11:09 -07:00
TreeHugger Robot 93ce56fdb2 Merge "Separating the config and flags in different directories so that it is easier to override one or the other" into ub-launcher3-master 2017-03-07 22:42:14 +00:00
Jon Miranda ac3a64dbf4 Fix bug where FolderIcon is invisible when closing Folder with no animation.
When we open the Folder, we set the FolderIcon to View.INVISIBLE.
It is possible to close the Folder without animating it (ie. when apps
are being auto added / auto closed to Work Profile Folder), and so the
FolderIcon is never set to View.VISIBLE.

Bug: 35064148
Change-Id: I2fc5b7ecaceffde0a3f3875870897c18e6e8dadf
2017-03-07 09:41:20 -08:00
Sunny Goyal 3d706ad703 Separating the config and flags in different directories so that
it is easier to override one or the other

Bug: 36001650
Change-Id: I713f4f5dbcf902614ce9f6c7a73bdace7bdf1ea0
2017-03-07 09:30:51 -08:00
Jon Miranda 4717011626 New folder animations.
Added FolderAnimationManager, which manages the opening
and closing animations.

All of the animations are done in the Folder.
ie. When the users taps on the FolderIcon, we immediately hide the
FolderIcon and show the Folder inits place before starting the animation.

Bug: 35064148
Change-Id: Icacdbbf78a25489f2eab4fd352f2c6ed71eb710b
2017-03-06 16:25:54 -08:00
Jon Miranda af47902652 Moves OutlineProvider / Animation files to anim package.
Change-Id: If444bbc71009510ded54d50ef746717f6c8b277f
2017-03-03 14:03:55 -08:00
Jon Miranda fc0ce83745 Prepare Folder for new Folder animation implementation.
Refactored animator logic to separate methods, so that it is easier
to swap out implementation with the LAUNCHER3_NEW_FOLDER_ANIMATION flag.

ie.

AnimatorSet anim = LAUNCHER3_NEW_FOLDER_ANIMATION
    ? getNewOpeningAnimatorSet()
    : getOpeningAnimatorSet();

Bug: 35064148
Change-Id: I32a646aaed5081438d7a733dc3e7cceb484998ab
2017-02-28 17:51:03 -08:00
Jon Miranda 608d0dba87 Close Folder before doing any automatic updates.
We already close the Folder when Work Profile apps are
auto added to the Work Profile Folder. This change extends that
functionality to when apps are being auto removed from the
Work Profile Folder.

Bug: 35845161
Change-Id: I2aa6a6a0ed28a95f6a59a549430f91482583548b
2017-02-28 13:15:28 -08:00
Jon Miranda 54d4e645b3 Enable suggestions for Folder names.
We turn on suggestions, turn off auto complete, and disable the
default behavior where red lines appear under typos.

Bug: 30055146
Change-Id: Ia151b7a4db1dfc6908504e6ea82a1f6989f05ca5
2017-02-24 15:51:09 -08:00
Jon Miranda 440609453f Close Folder when an item is auto added to it.
This can happen when items (as part of a Work Profile) are auto added
to the Work profile Folder.

Bug: 35628160
Change-Id: I29d3b277b0e9cd4bb238fb5aff9a52c6b9e764f8
2017-02-22 10:55:52 -08:00
Jon Miranda 48dfd26195 Fix folder icon animation where it animates downwards on 1st run.
The first time FolderIcon#growAndFadeOut is called, the folder
icon pivot x/y is not set. By moving the call after centerAboutIcon
(which sets the pivot point), we get the expected result of the
animation growing upward.

Bug: 35126799
Change-Id: I22fccb6b23550f823eb7b4485b9584022b810323
2017-02-21 09:07:00 -08:00
TreeHugger Robot 93bc3c1e41 Merge "Separating methods for updating the model to a sepatate class." into ub-launcher3-master 2017-02-16 21:56:39 +00:00
Sunny Goyal 43bf11d9c9 Separating methods for updating the model to a sepatate class.
Removing static access to model update methods, to allow for better
access control and testing

Change-Id: I9afe004dbf1b2fe50df422fd28bceea9230a4704
2017-02-16 13:50:14 -08:00
Jon Miranda c6cf493b07 Add basic logs for tap outside action.
Change-Id: I6288610b9870c3abe88794c53309b1d76dd2780f
2017-02-07 17:14:28 -08:00
Sunny Goyal a52ecb0390 Removing all compatibility code below Lollipop
Bug: 32745285
Change-Id: I62971908e3e4402941fab627bbdfd47be64473a3
2016-12-16 15:05:09 -08:00
Sunny Goyal 6c46a6d324 Using java_style enum generation for proto
This makes it easier to track various method parameters and simplifies
debug logging

Change-Id: Ib7c3d52590d0c36b2c8460c889ee3bead3454569
2016-12-15 09:30:35 -08:00
Sunny Goyal f5440cbd6c Removing FeatureFlag.LAUNCHER3_LEGACY_WORKSPACE_DND and corresponding logic
Change-Id: Ie10c087b4f72ee27be5bf12e2c81be5b7a3a6176
2016-12-15 08:05:09 -08:00
Sunny Goyal 0f76b56865 Refactoring FlingToDelete
> Moving all fling related logic to FlingToDeleteHelper from DragController
> Removing fling related methods from DragSource and DropTarget
> Moving fling animation logic from DeleteDropTarget to FlingAnimation
> Simplifying DropTargetBar to directly look for all valid drop targets.
  This makes it easier to add new DropTarget in xml.

Change-Id: I7214d2d30c907ab93c80d92d9f9be6dda2d63354
2016-12-13 23:39:16 -08:00
Sunny Goyal d5462aa31b Simplifyling widget inflation and addition flow.
> Removing insert parameter used to select the index of the view.
  ShortcutAndWidgetContainer no longet relies on the index and instead
  uses x and y to refer a particulat view.
> Creating helper methods to easily insert the icon by passing ItemInfo
  directly. LauncherModel.addItemToDatabase synchronously updates the
  ItemInfo with proper postion information. So we can directly use the
  info instead of passing each parameter separately.

 Bug: 32904959

Change-Id: I021c1b818f2f42604b95a6970e06aacc7211292a
2016-12-07 13:16:08 -08:00
Jon Miranda feba90fe80 Added logging for HOME_INTENT and BACK commands.
Document: go/false-longpress-overview

Change-Id: If6ba4996c861a44f4950b41acb4246e3a483d8f2
2016-11-21 17:01:24 -08:00
Tony Wickham ea62fe0be1 Animate icons back to where they were picked up.
We do this for pre-dragged icons instead of calling onDrop().
- Removes need for special logic in onDrop() to check if mIsInPreDrag
- Dropping from pre-drag in all apps also animates instead of jumping

We also do this when dropping an icon while still transitioning
to spring-loaded mode, to avoid having a janky jump at the end
- Bug: 27135377

Change-Id: I4548c3e2fef3423d1ba36057fb53807b1b4ad0fc
2016-11-02 15:07:57 -07:00
Sunny Goyal f9136dac42 Fixing crash in folder
Getting the parent, before the folder is removed from DragLayer

Bug: 32141195
Change-Id: I0bd3163a1425c994280cd61197845afab3c2c185
2016-10-13 09:49:52 -07:00
Tony Wickham 6982de2485 resolve merge conflicts of 2fd0208 to ub-launcher3-master
Change-Id: I20ad6eaace81786be080e28d6eb551908add6d90
2016-10-12 14:38:43 -07:00
Sunny Goyal 9c76a9cece Announcing the final action when the drag-drop completes
am: 3f8864069b

Change-Id: Iba49c7ba1d1c2d1f4c279970bbcc3ff96af5ccc0
2016-10-11 20:12:59 +00:00