Commit Graph

35512 Commits

Author SHA1 Message Date
Ling Wo 361d8286cc Merge "delete appIcon from workspace via TAPL" into sc-v2-dev 2021-12-14 02:10:59 +00:00
TreeHugger Robot ed6cbbc9a6 Merge "Set default value for rank field in launcher logs to ItemInfo.rank." into sc-v2-dev 2021-12-13 18:48:09 +00:00
Ling WO 85336c23fb delete appIcon from workspace via TAPL
1. Create a new class for DropBar icon.
2. Implement function to delete appIcon from workspace.
3. Add testDeleteFromWorkspace to TaplTestsLauncher3.

Bug: 205593009
Test: Launcher3Tests:com.android.launcher3.ui.TaplTestsLauncher3#testDeleteFromWorkspace

Change-Id: I259b909aebcdcc1c73af63a9970db43dab3e86eb
2021-12-10 18:14:41 -08:00
TreeHugger Robot be0360c6d8 Merge "Report contentInsets only based on what they will be inside apps" into sc-v2-dev 2021-12-11 01:30:26 +00:00
TreeHugger Robot 953873dd18 Merge "DeviceProfile.overviewRowSpacing should exclude extra top margin on grid tasks" into sc-v2-dev 2021-12-11 01:12:57 +00:00
TreeHugger Robot 5599b02141 Merge "Allow restore across form factors" into sc-v2-dev 2021-12-11 00:11:56 +00:00
Tony Wickham c7b8957bbb Report contentInsets only based on what they will be inside apps
This avoids changing them when going from an app to launcher (most obvious when going to overview).

This also allows us to not change insets on apps when opening/closing IME, which reduces potential jumpiness.

Finally, also use this logic for 3P launchers by calling directly from TaskbarDragLayerController instead of TaskbarUIController (which was only overridden by LauncherTaskbarUIController). This fixes some bad issues like sending fullscreen insets when opening a folder from taskbar.

Test: Open Calculator, unstash taskbar, go to overview and ensure no jump as taskbar stashes.
Fixes: 200805319
Change-Id: I4f1cc187398d0051863ff44ea90b7ab9c6aaa8f9
2021-12-10 23:47:18 +00:00
Alex Chau 4c98374d99 DeviceProfile.overviewRowSpacing should exclude extra top margin on grid tasks
Bug: 207350366
Bug: 210158657
Test: manual
Change-Id: I28116407c4267259a75fd39637104cea9db73fe3
2021-12-10 23:29:08 +00:00
Jon Miranda b788f9f7f7 Merge "Display in-memory icon for app close while AdaptiveIcon loads." into sc-v2-dev 2021-12-10 23:20:42 +00:00
Tony Wickham 0e0e1cef09 Merge "Fix taskbar being empty" into sc-v2-dev 2021-12-10 22:11:17 +00:00
Alex Chau ab26c62c4a Allow restore across form factors
- Removed deviceTypeCompatible check and allow restore across for mfactors
- In AOSP default device_profile, mark 3x3, 4x4, and 5x5 as phone only. On tablets they'll reflow to 6x5.

Bug: 198575341
Bug: 210129187
Test: Only 3x3, 4x4 and 5x5 are enabled on phone
Test: Only 6x5 is enabled on tablet
Test: Phone backup of 4x4 get restored and reflow to 6x5 on tablet
Change-Id: I36a641d47fcee86ace0fea3d9194d61d12517f13
2021-12-10 22:00:49 +00:00
Jon Miranda 0c2f0faef1 Display in-memory icon for app close while AdaptiveIcon loads.
- We already display the BubbleTextView icon during app close
  since we need the shadows to ensure a clean handoff.
- Previously, we waited until the icon and the AdaptiveIcon were
  both loaded to show the FloatingIconView.
- This change immediately shows the BubbleTextView icon so that
  we can have something displayed in the cases where AdaptiveIcon
  is slow to load (ie. immediately after killing/restarting launcher).

Currently there are cases where we defer some BubbleTextView drawing to
ClipIconView. We can refactor in master so that ClipIconView is only used
when drawable is an AdaptiveIcon.

Bug: 207389002
Test: manual
Change-Id: Ie54642fef4258862a155ab0aba6e49cea9c9ead0
2021-12-10 13:25:39 -08:00
Jon Miranda 7ac2a71b94 Merge "Clear all DragView in onSaveInstanceState" into sc-v2-dev 2021-12-10 18:36:15 +00:00
Tony Wickham 0606773905 Fix taskbar being empty
We set mIconAlignmentForResumedState in endGestureStateOverride(), but then we call applyState() which might aniamte mIAFRS to a different value. To avoid this, set it after applyState() instead.

Specific repro:
1. Open Calculator
2. Go to Overview
3. Dismiss Calculator
  3a. This calls endGestureStateOverride() because the running tile ends
  3b. Previously, we called mIAFRS.updateValue(1) but then applyState() animated it to 0 because we're still in Overview which is an unstashed state. Now the animation to 0 is before setting explicitly to 1.
4. Go home (this sets mIconAlignmentForLauncherState = 1)
5. Open Calculator again. Previously, mIAFRS was already 0 so animating to 0 was ignored. Now, mIAFRS starts at 1 (which is right since launcher is resumed).

Test: see above
Fixes: 210109500
Change-Id: I13f40908f8636291d63ef4b885ac9d08bbf4d393
2021-12-10 18:20:13 +00:00
Alex Chau 9ef8e2dcee Don't snap to focused task in split select
- In split select there is no overview actions, and focused task's snappign position is not centered, it's weird to snap so avoid it
- Follow-up of ag/16378986

Bug: 208644826
Test: manual
Change-Id: I260b5c6164db562717346396b1830af02d408944
2021-12-10 15:27:17 +00:00
Alex Chau b6ad9dfaf5 Allow snapping to focused task in overview grid
Fix: 208644826
Test: manual
Change-Id: Ia6fb2ae44209042f6d40bf8db5d1f43b3b6a27ee
2021-12-10 12:07:21 +00:00
Alex Chau 42cbdee25c Merge "Add split support for 3P launcher" into sc-v2-dev 2021-12-10 09:55:00 +00:00
Alex Chau eea4379a5d Merge "Improving memory dump diag" into sc-v2-dev 2021-12-10 09:52:53 +00:00
Hongwei Wang 293b5bc836 Merge "Do not start auto-pip transition when swiping from split" into sc-v2-dev 2021-12-10 08:25:28 +00:00
Hongwei Wang 8274cb287e Do not start auto-pip transition when swiping from split
Also, pass a PictureInPictureSurfaceTransaction to hide the tasks in
split-screen from Launcher to WM to avoid flicker when any one of the
tasks enters PiP.

Bug: 190855091
Bug: 205894095
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/42RWtayanp2qG0mHSf4Q5
Test: manual, enter PiP from split-screen, see Video
Change-Id: Ia8b6243c0d95c2be8007beeefa2083acc856e404
2021-12-09 20:26:23 -08:00
TreeHugger Robot 5692501806 Merge "Only inset IME by 48dp instead of 60dp when taskbar is present" into sc-v2-dev 2021-12-09 23:48:27 +00:00
Tony Wickham 1a2d581cf0 Only inset IME by 48dp instead of 60dp when taskbar is present
- Update providedInternalImeInsets whenever taskbar height changes, since the insets are subtracted from the taskbar window height. This ensures the IME always has the same bottom inset (48dp) regardless of taskbar's window size
- Also translate nav buttons down to center in the new size when IME is showing

Test: Open IME from home and in apps, both in gesture nav and 3 button mode. Ensure IME bottom inset is always 48dp and nav buttons center within that space
Fixes: 201115344
Change-Id: I5ed25b0ffc08145b2221cc5c960e669cc21b2aa7
2021-12-09 22:17:21 +00:00
vadimt bc1da4ca98 Improving memory dump diag
atest deletes artifacts directory on the device, but saves artifacts at the host machine.

Bug: 187761685
Test: presubmit
Change-Id: I1f5244ebfe6b606c4891f5fca003541b27cc944c
2021-12-09 21:58:45 +00:00
Vinit Nayak 2a93bc5b30 Add split support for 3P launcher
* Copied logic mostly from
Base/RecentsViewStateController
* There's one KI crash specific to 3P
(b/209694087)
* Swipe to home animation is TODO, but
then again it also seems incorrect for
full-screen app. 3P has many cosmetic issues
throughout.

Bug: 195607777
Test: Tested w/ Nova launcher with grid
and non-grid, able to invoke split screen with
same animations as 1P launcher

Change-Id: I35a1bc92a51caccac4214289e614000cd47bb503
2021-12-09 12:52:04 -08:00
Jerry Chang 5b2bbe7e20 Merge "Always draw background for task thumbnail" into sc-v2-dev 2021-12-09 02:03:42 +00:00
Jon Miranda 14d6771aae Clear all DragView in onSaveInstanceState
Multiple users reports view getting stuck on screen. This CL
clears all DragView when user leaves launcher.

Root cause still undetermined, but happens enough that it warrants
a temp fix.

Bug: 162636845
Test: manual
Change-Id: I532b5274a1308c53f67c23c5c8ca07f2b7f9802c
2021-12-08 17:47:33 -08:00
TreeHugger Robot b1ae1ca124 Merge "Add launcher grid spec for tablet" into sc-v2-dev 2021-12-08 22:49:00 +00:00
Alex Chau 1c883d861e Add launcher grid spec for tablet
- Introduced device_category to allow grids to be only enabled for certain device types. By default grids are enabled for all device types, so old OEM device_profiles aren't affected
  - Removed device_profiles_split.xml as a result and merged with device_profiles.xml
- Added deviceType in InvariantDeviceProfile to replace isSplitDisplay and centralize the logic
- Only has 6x5 grid with new default layout that works better for tablets

Bug: 198575341
Test: manual
Change-Id: I03f6727ce837ffeee6321b6d7c53942338d0cf30
2021-12-08 18:22:34 +00:00
Jerry Chang 7d20de28e3 Always draw background for task thumbnail
Always draw background for task thumbnail because the task snapshot
might be translucent or partially empty.

For example, when drag-to-dismiss split screen, it will reparent tasks
from dismissing split root to the bottom of display. Task thumbnail of
those tasks might be partially empty because the snapshot was taken in
new bounds inherits from display but with split screen content.

Fix: 200096421
Test: drag to dismiss split, observed task thumbnail no longger been
      cropped.
Change-Id: I5d04daa55a558f79ccf5127080088bd0698d06d8
2021-12-09 01:44:46 +08:00
Tony Wickham b5a051ca0b Merge changes I6cf84ec7,Iea599651,If3238286 into sc-v2-dev
* changes:
  Improve quick switch from home to taskbar
  Cleanup some taskbar/hotseat handoff issues
  Fix taskbar stash misalignment when going from app to overview
2021-12-08 17:42:54 +00:00
Alex Chau 1b0e524d94 Merge "Revert "Align OverviewActionsView for 3 button taskbar"" into sc-v2-dev 2021-12-08 17:39:32 +00:00
TreeHugger Robot d1c9cd2700 Merge "Fix split animation for grid RTL" into sc-v2-dev 2021-12-08 12:06:23 +00:00
Alex Chau 86ef5e924a Handle split select rotation
- Update floatingTaskView, apply splitsSelectTranslation and splitPrimaryScorllOffest when rotating while in split select
- Moved getSplitSelectTranslation to RecentsView
- When in portrait, treat STAGE_POSITION_BOTTOM_OR_RIGHT as STAGE_POSITION_TOP_OR_LEFT in split translation calculation
- Apply splitsSelectTranslation for portrait grid too

Fix: 201721153
Test: manual
Change-Id: I768a3b15de4d434674058b274c368798f5852917
2021-12-08 11:35:02 +00:00
Alex Chau 9fa58b2fee Revert "Align OverviewActionsView for 3 button taskbar"
This reverts commit 0bd0733ef4.

Reason for revert: b/209025715
Bug: 189807374

Change-Id: I477bacc318e84c16f124cf776ddd8446959755aa
2021-12-08 11:17:14 +00:00
TreeHugger Robot 57b9c472dc Merge "[DO NOT MERGE] Remove one search flag and code from sc-v2." into sc-v2-dev 2021-12-08 06:57:28 +00:00
Vinit Nayak 0f12803061 Fix split animation for grid RTL
Fixes: 202156862
Test: Tested grid + non grid,
RTL + LTR

Change-Id: I303f60efdd9f2f2ea412e31e574d9a3b50fecf30
2021-12-07 22:13:06 -08:00
Brian Isganitis d3ebc4c692 Merge "Adding support for logging wallpaper container info." into sc-v2-dev 2021-12-08 05:48:30 +00:00
Vinit Nayak 4e0d4239e4 Merge "Align OverviewActionsView for 3 button taskbar" into sc-v2-dev 2021-12-08 04:02:31 +00:00
Brian Isganitis 79efba935f Adding support for logging wallpaper container info.
Test: https://paste.googleplex.com/5350571797118976 shows logging carousel size and index of wallpaper tapped. If the wallpaper is a live wallpaper, we also log its application info.
Bug: 188222480
Change-Id: I6dd7ac20af7afd675d8a886d5b838263680f773e
Merged-In: I6dd7ac20af7afd675d8a886d5b838263680f773e
2021-12-08 00:22:59 +00:00
Tony Wickham 24675d36b7 Improve quick switch from home to taskbar
- Add LauncherState#isTaskbarAlignedWithHotseat() which defaults to !isTaskbarStashed(), but is always false for quick switch from home
- Replaced FLAG_TRANSITION_STATE_START_STASHED and FLAG_TRANSITION_STATE_COMMITTED_STASHED with FLAG_STATE_TRANSITION_RUNNING and a reference to mLauncherState. STATE_START is equivalent to TRANSITION_RUNNING changing to true, and STATE_COMMITTED is equivalent to TRANSITION_RUNNING changing to false. Then can get details from the state such as whether taskbar is stashed and icon alignment from mLauncherState

Test: quick switch from home, both with taskbar stashed in apps and not
Fixes: 194728611
Bug: 204657916
Change-Id: I6cf84ec73a4036e14cc7268667c6f62100884c27
2021-12-07 13:13:48 -08:00
Vinit Nayak 0bd0733ef4 Align OverviewActionsView for 3 button taskbar
Bug: 189807374
Change-Id: I529dba5d4df3d0c3366c111e70991a36bec4bfc3
2021-12-07 13:07:32 -08:00
Tony Wickham 779879ce3d Merge "Remove LauncherState.TASKBAR visible element" into sc-v2-dev 2021-12-07 20:42:55 +00:00
Alex Chau 992db75dae Use percentage scaling for overview thumbnail size
- Limit overview to screen ratio to be at max 70%
- Tuned row spacing and page spacing
- Added 2 more test activities to testOverviewForTablet to avoid dismissing tasks at end of grid, as more grid tasks are now shown

Bug: 207350366
Test: manual
Change-Id: Id04871464bdb3ef2d6b046977b0ffd9bd51bc230
Merged-In: Id04871464bdb3ef2d6b046977b0ffd9bd51bc230
2021-12-07 14:50:40 +00:00
Tony Wickham 9566290e13 Cleanup some taskbar/hotseat handoff issues
- Clearly distinguish Home <-> App icon alignment (ForResumedState and ForGestureState) from Home <-> Home states (ForLauncherState) by renaming onIconAlignmentRatioChanged() to onIconAlignmentRatioChangedForAppAndHomeTransition (for the former)
- Make sure initial state is properly applied by treating all flags as changed
- onIconAlignmentRatioChangedForStateTransition only runs when launcher is resumed (fixes 208648294)
- Animate taskbar background alpha when going between home and app, separate from icon alignment (bug: 204657916)
- Only copy hotseat's alpha to taskbar when hotseat is originally visible (also bug: 204657916)

Test: Open an app on small screen, open large screen and ensure taskbar stays at the bottom instead of aligning with non-present hotseat (bug: 208648294)
Test: Swipe up and down on home scren, ensure taskbar background never appears and there's no jump between taskbar and hotseat
Change-Id: Iea59965118f2bdbd8ce49279f76fb01fbd61f60b
2021-12-06 17:16:19 -08:00
Tony Wickham 7af54403a3 Remove LauncherState.TASKBAR visible element
It's no longer used, so removing to cleanup code and reduce confusion

Test: no functional change
Fixes: 209512651
Change-Id: Ibd671bde7190df976b5365331731a55a9abdbb35
2021-12-06 15:59:39 -08:00
Becky Qiu d0a9f1502b [DO NOT MERGE] Remove one search flag and code from sc-v2.
Bug: 209501163
Test: manual
Change-Id: Iee1c8276a1f81aa0f54e8a342cfdd3f01d7ab1b7
2021-12-06 15:22:04 -08:00
Tony Wickham f1951ce1f7 Fix taskbar stash misalignment when going from app to overview
Keep taskbar unaligned with hotseat if we're stashing anyway

Test: Swipe up from app with taskbar present to overview, check frame by frame to ensure icons morph directly into the handle instead of above it
Fixes: 208697792
Change-Id: If3238286b3383e75eb71fbd3b97d34bb3b44340b
2021-12-06 15:15:34 -08:00
Tony Wickham 3d206ca917 Merge "Fix taskbar jumping when going home" into sc-v2-dev 2021-12-06 20:15:20 +00:00
Jon Miranda 52ee4ec4aa Merge "Play return to icon animation if user swipes back to All Apps." into sc-v2-dev 2021-12-06 18:17:52 +00:00
Alex Chau 5656154f1a Merge "Add back screenshot button to Launcher3" into sc-v2-dev 2021-12-06 17:37:42 +00:00