This change updates the Overview > OverviewSplitSelect animation to the latest spec. This is a re-upload of a previous change, ag/19464657, but no longer will cause the b/241165022 issue.
Includes:
- New timings
- Task thumbnails slide in with an "overshoot" animation
- Icons fade out and fade in appropriately
- SplitInstructionsView has a new compound "unfold" animation
Bug: 236760307
Test: Manual on tablet. Made sure the b/241165022 issue is fixed.
Change-Id: Ia22f6b6d7b9474b782e693fae2320a34a2985b18
LauncherAppWidgetHost fails to cleanup deferred widget when launcher
started binding the widgets in workspace, which leads to a crash because
widgets that was previously attached to the workspace get re-attached to
the workspace.
Bug: 245016152
Test: manual
Change-Id: I4de261e08cfdcee74f210c39bcadf403b98887ab
This bug caused by divider will be set to show when animation
cancelled, because split screen will show divider itself when
both split visible, this call might be unnecessary. Fix it by
removing these lines.
Add surface valid checking when running divider animation to
avoid crash caused if surface was released during animation.
Fix: 242823773
Bug: 246371786
Test: manual
Test: pass existing tests
Change-Id: I10aaf86e4164327b1c6c2f323c62b246c600228a
The function Launchable.startDrag it's supposed to grab and icon or widget
and start the dragging by moving it only in the verticall position but
because it uses the coordinates of the object before entering the
SPRING_LOADED_STATE_ORDINAL state then the coordiates where it moves
are outisde of the cell layout and it moves to a new page. This only happens
if the phone is too slow and it triggers the page change, otherwise it would
be too fast.
To fix it, I'm moving the icon/widget to the center of the screen minus
getStartDragThreshold() to ensure the drag is always triggered.
Fix: 242323136
Fix: 244224955
Fix: 241019568
Fix: 241583798
Test: atest ReorderWidgets
Change-Id: I0e431b994aa4a3d5c8be45b6c73263732553b36c
Bug: 246340474
Test: used several gestures normally, and reproduced b/246340474, then checked logs
Change-Id: I8cdcb9c00c5cacc7737e796dbf5adf544c0220a7
* Non grid check technically also returns
false for secondary app icon on focused task
Test: Open app menu in small and large screen
Bug: 245610772
Change-Id: Icf70c1893aba6a4a79bf51e98ac33c1d204c73c2
Fix: 242114350
Test: Alt+tab to go to overview, and then keep tabbing to switch to the previous tasks
Change-Id: I03db23aa5424e46c0eb783379b0c5e959f75507f
- In rare cases, Launcher may be stopped mid-swipe up gesture which results
in two issues:
- it continues to register a page transition end callback, but because
launcher is not drawing, the page will never scroll and the callback
never happens
- in the case where the calculated end target is RECENTS, we don't
finish the recents animation (because of live tile), and since it's
still running, subsequent gestures are interpreted as continuing the
current gesture and it gets stuck
Instead in these cases we can force the gesture to resolve to LAST_TASK
(similar to the canceled gesture case), and not wait for the page to
settle.
Note, that we would prefer to fix the root issue of Launcher being
stopped, but at least this change prevents Launcher from getting into
the wrong state if so.
Bug: 246476942
Test: Repro steps from the bug
Change-Id: I59098229e5e37722e8017a2dfcb42eab6659643d
> Updating the LayoutManager's scroll calculation instead of a separate
implementation to better support recyclerView's calculations
> Caching the view sizes during layout to avoid view-inflation for
unknown types
> Fixing scrollbar jump during scroll when widget list is expanded
> Fixing scrollbar never reaching end when onboarding card is displayed
in work tab
Bug: 240343082
Test: Verified on device that new views are not inflated
Change-Id: Ied11ccf65b053691c5c126c4bf8de306ec24786d
Now TestWorkspaceBuilder has the logic to add hotseat icons and
the operations to add items to the Workspace is done in batches
which is faster and more stable. To submit everything in batches
it uses the FavoriteItemsTransaction.
This improves the design because TestWorkspaceBuilder and
HomeScreenImageTest belong to the Test layer and they should
only deal with the logic to run a test and TestWorkspaceBuilder
is the Model layer and holds all the logic to interact with the
Launcher model/data, so this separates the concern of each class.
Also, chagned the name from CellLayoutBoardBuilder to
TestWorkspaceBuilder to make it clearer.
Bug: 243440737
Bug: 235518637
Bug: 242323136
Test: atest HomeScreenImageTest
Test: atest ReorderWidgets
Change-Id: I14eef064fade153b8362537743b061958bb3071d
This seems to have been caused by a bad merge which removed the call
from outside the end listener. We reintroduce it for atomic animations
only, as for manual ones we want the keyboard to animate in sync with
All Apps (note that this is how it used to be, and doesn't depend on the
keyboard sync flag).
Fixes: 243632287
Fixes: 240116666
Test: manual
Change-Id: I9d226a4bd7cbde0692ae82b5a138b0d523fd5f25
1. Implement API to help to get page count.
2. Add test add and delete page.
Bug: 241685418
Bug: 232584721
Test: android.platform.test.scenario.launcher.integration_tests.ScreenNavigationTests#testAddAndDeletePageAndFling
Change-Id: I2e04b9ef1f2ca65ba14d6939b7b51fead6b6f6ca
Back button is only animation in 2-button UI which is not supported anymore
Bug: 246006580
Test: Presubmit
Change-Id: I7385b07272e44c1f9f0488c158e1b4ee67060120
> intrinsicIconScaleFactor is no longer read
> We no longer generatepreview outline for drag
Bug: 245997823
Test: Presubmit
Change-Id: I17ed25239d0affe89482da3406d529d323a426d9