Commit Graph

258 Commits

Author SHA1 Message Date
Jordan Silva 8bd7af2b3f Improving responsive grid xml parser
Refactors AllAppsSpecs, FolderSpecs and WorkspaceSpecs initialization to use the same code to parse the xml with different map function. This CL improves the readability of the code and remove code duplication.

Fix: 286538013
Flag: ENABLE_RESPONSIVE_WORKSPACE
Test: AllAppsSpecsTes
Test: CalculatedAllAppsSpecTest
Test: CalculatedFolderSpecsTest
Test: CalculatedWorkspaceSpecTest
Test: FolderSpecsTest
Test: WorkspaceSpecsTest
Test: DeviceProfileResponsiveDumpTest
Test: DeviceProfileResponsiveAlternativeDisplaysDumpTest
Change-Id: Iec5863619399efd2e80f3db46b75c4d785e1656f
2023-07-18 18:03:16 +01:00
Pat Manning da69661add Show tooltips on cursor hover of taskbar icons.
Fix: 250092437
Test: TaskbarHoverToolTipControllerTest
Flag: ENABLE_CURSOR_HOVER_STATES
Change-Id: Ia0463518d13b313b354328078685930215fb7636
2023-07-14 13:42:30 +01:00
Brandon Dayauon f2ea399ec6 Fix prediction row title consistency
There's an inconsistency with prediction row in 0-state and all apps page.
This happens because we change the number of lines (to 1 line) after calculating and rendering the two lines.
Which is why if you look at the photos, in all apps, Amazon app just shows "Amazon" instead of "Amazon Sh.."

Instead of changing the number of lines after processing, just set a separate display to the prediction app row

bug:288811197
Flag: teamfood
Test: manual - locally added test BubbleTextView
before 0-state: https://screenshot.googleplex.com/5q9iYypgwwtDa8b
before allapps prediction row: https://screenshot.googleplex.com/BVxGMTT43stDzZ9
after allapps prediction row: https://screenshot.googleplex.com/BfNTFPXwf4FHuRN

Change-Id: Ifefe6dc8dd4a117be7b63f92ff837d0467a51f8b
2023-06-28 14:45:07 -07:00
Jordan Silva 637f4eb2f3 Update DeviceProfile to calculate responsive grid for folders
It uses the new responsive folder calculations and specs when responsive grid is enabled. The grid has to have folderSpecsId defined to use the new specifications, otherwise it will use the current scalable grid implementation.

Fix: 284155638
Test: DeviceProfileDumpTest
Test: ResponsiveHomeScreenFolderImageTest
Test: HomeScreenFolderImageTest
Flag: ENABLE_RESPONSIVE_WORKSPACE
Change-Id: I535cff4bb00e969f782447a898230fe2b2c05cc9
2023-06-21 12:18:58 +01:00
Thales Lima abfe364629 Implement calculations of Responsive Grid for AllApps
All Apps follow the same sizes as the workspace, so we copy the measurements to AllApps values.

Bug: 284152932
Test: HomeScreenAllAppsImageTest
Test: DeviceProfileDumpTest
Test: HomeScreenResponsiveAllAppsImageTest
Test: DeviceProfileResponsiveDumpTest
Flag: ENABLE_RESPONSIVE_WORKSPACE
Change-Id: I12743a6ac5ab5f1a8bc911511bdc7e12b2261d86
2023-06-16 10:19:19 +00:00
Lucas Dupin fbe96507dd Merge "Merge "Fixing color mismatch for Launcher3/NexusLauncher" into udc-dev am: d469ce2460 am: e3f46ba90b" into udc-qpr-dev 2023-06-15 20:15:11 +00:00
Marcelo Arteiro d7d49ad4b3 Merge "Fixing color mismatch for Launcher3/NexusLauncher" into udc-dev am: d469ce2460 am: e3f46ba90b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/23102625

Change-Id: Iab06fa739fb16e399931ca90ebb2cfdf7afdd738
Merged-In: Iab06fa739fb16e399931ca90ebb2cfdf7afdd738
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-14 22:25:51 +00:00
Thales Lima 196e44baec Create AllApps responsive spec
Copy the parser from WorkspaceSpec and modify to use AllApps attributes.

Bug: 284152932
Test: AllAppsSpecsTest
Test: CalculatedAllAppsSpecTest
Flag: ENABLE_RESPONSIVE_WORKSPACE
Change-Id: I9362e126c64cb1a1abdef61894b003f14701b8e3
2023-06-14 15:02:58 +01:00
Jordan Silva 1b336110a4 Update SizeSpec attributes to accept max size threshold
Add maxSize attribute to SizeSpec to limit the cell size up to a max size when matchWorkspace is true. The same validation was added when using fixedSize, ofAvailableSpace and ofRemainderSpace, so they could have a maxSize as a threshold.

Bug: 284155638
Flag: ENABLE_RESPONSIVE_WORKSPACE
Test: SizeSpecTest
Test: WorkspaceSpecsTest
Change-Id: I113657c241e6618eb3e501243412d8c5626fc3d5
2023-06-13 18:09:37 +01:00
Jordan Silva 7ae9e3a6f5 Add FolderSpec for responsive grid support
Adds responsive grid implementation for folders. It follows the same concept as WorkspaceSpecs, so we have a parser similar to WorkspaceSpecs for FolderSpecs.

Bug: 284155638
Flag: ENABLE_RESPONSIVE_WORKSPACE
Test: FolderSpecsTest
Test: CalculatedFolderSpecsTest
Change-Id: Iea6d7d88ef42d1273aed7cf2ed5b397035518a52
2023-06-13 15:01:39 +01:00
Jordan Silva d22a85cd64 Merge "Adding match workspace to SizeSpec for responsive grid support" into udc-qpr-dev 2023-06-09 20:04:54 +00:00
Jordan Silva 2b8556ce1a Adding match workspace to SizeSpec for responsive grid support
Added matchWorkspace property to support responsive grid implementation for AllApps and Folders. This property indicates whether the attribute value will be used from the workspace instead of defining a fixed value in the AllApps and Folders XML. The class was updated to be a data class and added a auxiliar constructor new make it more flexible for testing and to add other initializers to support AllApps and Folders.

Bug: 284155638
Flag: ENABLE_RESPONSIVE_WORKSPACE
Test: WorkspaceSpecsTest
Test: SizeSpecTest
Change-Id: I65b71e66be7b8236a1dee62b56a487b87881d991
2023-06-09 17:05:22 +00:00
Marcelo Arteiro ecff4b59c0 Fixing color mismatch for Launcher3/NexusLauncher
https://screenshot.googleplex.com/7hpgPtjSdjzYFYh

Bug: 268682423
Bug: 277728851
Test: Manual
Change-Id: I7b92ca18721624ef5ecd4b69ca4158ad2dc600f3
2023-06-08 19:01:29 +00:00
Pat Manning 58b6145feb Refactor ArrowTipView so it can be customized and used in any drag layer.
Allows use in TaskbarDragLayer.

Allows customization of properties like text color, background color, and open/close animations.

Bug: 250092437
Test: manual. (Will test with TaplTestsTaskbar in follow up CL when implemented.)
Change-Id: I056395322e5fef7aa4d9fd7e4c2d73c050eff759
2023-06-06 13:46:31 +01:00
Sunny Goyal 3e596d3aa4 Updating the top scrim to also use dynamicaly generated bitmap
Bug: 237818532
Test: Verified on device
Flag: N/A
Change-Id: I22ceb470677ab9df53e40fb78f0292b7fd5e2241
2023-06-01 19:20:04 +00:00
Federico Baron 4b43200910 Merge "Update colors for edit state" into udc-dev 2023-05-18 21:03:19 +00:00
Federico Baron 3eba77ca4b Merge "Update colors for popup menus" into udc-dev 2023-05-18 21:03:19 +00:00
fbaron e8efdc4bd9 Update colors for edit state
Bug: 268521231
Test: Verify that edit state colors match the figma attached in the bug
Flag: no flag
Change-Id: I72e5ffde48ca2e53b876b2c86ac5d92c8ddf79c0
2023-05-17 09:27:08 -07:00
fbaron 1a76d5c72d Update colors for popup menus
Bug: 268521231
Test: Verify that popup menu colors match the figma attached in the bug
Change-Id: I24025576a789775dfcf17694d16c0d5f6ee844fd
2023-05-16 15:07:30 -07:00
fbaron 8463f6a771 Update folder preview and folder colors
Bug: 268521231
Test: Verify that folder preview and folder colors match the figma attached in the bug
Flag: no flag
Change-Id: Ica75cace98fc2643d59ad0c28cbad736b578c51d
2023-05-16 09:34:37 -07:00
Treehugger Robot 21339533b1 Merge "Update notification dot color" into udc-dev 2023-05-15 20:21:45 +00:00
fbaron 1406a0f606 Update notification dot color
Bug: 268521231
Test: Verify that notification dot colors match the figma attached in the bug
Change-Id: Id0cbf9f2447819ae3e6e00e880eca1be3f189826
2023-05-15 11:06:46 -07:00
Thales Lima ec5abba93b Add feature flag and attribute for responsive grid
This shouldn't change anything in the grids, only support the creation of responsive grids in the future. For now, to check that the flag works, turn it on and check the dumpsys. There is also a dump test created for this.

Fix: 277064696
Fix: 277064702
Test: DeviceProfileResponsiveDumpTest
Flag: ENABLE_RESPONSIVE_WORKSPACE
Change-Id: I1bef87043a100234bd661cd6ac00007fdc654116
2023-05-09 12:06:18 +01:00
fbaron 328ca3811c Update colors for widget picker
Bug: 278157622
Test: Look at widget picker on tablet and verify that the colors match the new spec, and verify the portrait mode looks good also.
Change-Id: I634d876dfafc086806b233c500f7d8daddfe7b0b
2023-04-18 16:17:24 -07:00
Sunny Goyal 7b74a5c53f Merge "Revert "Revert "Revert "Simplifying some page indicator dots attributes so that it can"""" into udc-dev 2023-04-07 01:02:09 +00:00
Sunny Goyal 5cd1b198b0 Revert "Revert "Revert "Simplifying some page indicator dots attributes so that it can"""
This reverts commit 7025765c72.

Reason for revert: 274169859

Change-Id: I86a114bf2c713fea6ec7095f68816820ba5f7495
2023-04-06 22:33:11 +00:00
TreeHugger Robot 75f7bbc150 Merge "Allow grids to specify if we should start align taskbar in 3 button nav." into tm-qpr-dev am: 65ac592f40 am: a2b770b484
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/22361600

Change-Id: I41eea8cf3fa15c9c5c3f3184f2ba75318332f623
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-05 22:36:14 +00:00
Jon Miranda 04f051045c Allow grids to specify if we should start align taskbar in 3 button
nav.

Bug: 259712417
Test: check layout on tablet
      check layout on multi_display devices

Change-Id: I282f51e5d76a30e9ad9d8c52d03d4853e965d65a
2023-04-05 10:29:51 -07:00
TreeHugger Robot 331ab34a2a Merge "Revert "Revert "Simplifying some page indicator dots attributes so that it can""" into udc-dev 2023-03-31 20:10:37 +00:00
Sunny Goyal 7025765c72 Revert "Revert "Simplifying some page indicator dots attributes so that it can""
This reverts commit 0263a679f2.

Reason for revert: Trying again to confirm if this was the actual cause of regression

Change-Id: I2a663015d7ecdcf315634d8a976bf8294b58981d
2023-03-31 17:10:15 +00:00
Sunny Goyal 1fc1cd002f Merge "Revert "Simplifying some page indicator dots attributes so that it can"" into udc-dev 2023-03-29 21:22:10 +00:00
Sunny Goyal 0263a679f2 Revert "Simplifying some page indicator dots attributes so that it can"
This reverts commit a5ead45967.

Reason for revert: b/274169859

Change-Id: Id214694ae4f61cd70796c6f7e932c1fdef82d746
2023-03-29 19:11:03 +00:00
Jon Miranda a97dc04478 Merge "Add taskbarIconSize to GridOption/DisplayOptions" into tm-qpr-dev am: 085c53869f am: 3cd39729dc
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/22228076

Change-Id: I3cb2d462cef1df514c87418ed70ac624899c21fd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-24 23:02:51 +00:00
Jon Miranda 9c478b6c29 Add taskbarIconSize to GridOption/DisplayOptions
- Renamed variables to make it more clear what they represent
- DeviceProfile will be source of truth for taskbar
  sizes

Bug: 265144213
Test: phone, multi-display, tablet
Change-Id: Id9c19d15a65894fd7645e0f876a4b6527b713c34
Flag: ENABLE_TRANSIENT_TASKBAR=true
2023-03-24 12:29:11 -07:00
Sunny Goyal a5ead45967 Simplifying some page indicator dots attributes so that it can
be easily modularized

> Moving the color configuration to xml
> Moving auto-hide logic to a subclass as it doesn't
  need to be in the main library

Bug: 274011949
Test: Verified on device
Change-Id: Icf7bd5d1cbde3daa9441f2af51f98a931bcd6ee2
2023-03-16 15:57:06 -07:00
Brandon Dayauon ffc7084b37 Correctly make to spec the color for "Turn on work apps" button and add stroke
- define color in base and quickstep

bug: 267975252
test: Manual - video: lightTheme: https://drive.google.com/file/d/1noY5Grq4jOxFIheL91KB_sOYRwp8XIyD/view?usp=sharing
test: darkTheme: https://drive.google.com/file/d/1o1uaTedAKbPy3BTG1GKJ0ldyHFs0-jGN/view?usp=sharing
Change-Id: I266b6624aa6f045c1f30c0db984fa9e1c5f6fe7e
2023-03-03 15:42:13 -08:00
Federico Baron e8217b3c1b Add ripple effect when a header in widget picker is selected.
We need to use setSelected in order to add a ripple effect when a header is selected in tablet landscape mode, and to set the style through XML rather than programmatically the way it was done before in the method `setLargeScreenTheme`.

Fix: 268558453
Test: Turn on LARGE_SCREEN_WIDGET_PICKER and verify that when selecting a header there's a ripple effect on that header
Change-Id: I6cab920258a57118430d1e07416508ef36faa56d
2023-02-21 16:33:18 -08:00
Thales Lima 1a2d4bd6f4 Create an XML parser for WorkspaceSpecs
Extract DeviceProfileTest to Launcher3 so it can be used in other tests as well, and change name of previous base test to be more descriptive.

Bug: 241386436
Test: WorkspaceSpecsTest
Change-Id: I64613bb5a23c374ed15fb6d936192236a541ab9b
2023-02-08 11:20:14 +00:00
Thales Lima e9273ea743 Improvements for All Apps on different display sizes
Bug: 262912817
Test: DeviceProfileAlternativeDisplaysDumpTest
Change-Id: I50e980183b4d5c1a46cca8f1c867b866b9eae4b5
2023-02-01 11:34:12 +00:00
Thales Lima d852d65693 Create attr for padding between icon and text in cells
Bug: 265210314
Test: DeviceProfileDumpTest
Change-Id: I00af790d0c21c35f1cbce1362e63d3ab8259244a
Merged-In: I00af790d0c21c35f1cbce1362e63d3ab8259244a
2023-01-26 22:50:18 +00:00
Alex Chau 8a7dc2b244 Merge "Remove unnecessary GridDisplayOption_defaultSplitDisplayLayoutId attribute" into tm-qpr-dev 2022-12-14 21:50:34 +00:00
Sihua Ma 60813a89f7 Changed widget picker personal-work tab layout
Used layout margin instead of padding. Also making sure that Talkback would focus on the widgets title once the widget picker is opened.

Before: https://screenshot.googleplex.com/AgZspqTc7yS2Lte
Now: https://screenshot.googleplex.com/5W66ky7XAByCFRZ

Fix: 247121867
Test: Manual
Change-Id: I76534454754c5e57ab51ae7ce06ca4370a3fd22b
2022-12-09 13:58:57 -08:00
Alex Chau 766cd2b4b9 Remove unnecessary GridDisplayOption_defaultSplitDisplayLayoutId attribute
- Can use deviceCategory to make grid specific to splitDisplay instead
- Update TwoPanelWorkspaceTest for new workspace items

Fix: 233736588
Test: Clear launcher and check the default
Test: TwoPanelWorkspaceTest
Change-Id: I6ad3a2d866d847af281e10b802edbd4bcc892c39
2022-12-07 15:18:28 +00:00
Thales Lima b35faed6e7 Improve spaces for folders
Bug: 214582832
Test: DeviceProfileTest
Change-Id: I7c5cae0792d51baf111d0aec46be302ac6ca9994
2022-11-07 18:23:48 +00:00
Sunny Goyal fc1928e324 Optimizing some icon generation code:
1) Fixing missing shadow from shortcut icons
2) Chaning all-apps icon rendering to draw background/foreground separately
   This allows us to reuse the bitmap generated for themed icons, instead of
   creating a new everytime

Bug: 248308987
Test: Verified on device
Change-Id: Ia3cbefb21a2ce676d6bb2df3d9375d61b5bed61b
2022-10-20 10:40:54 -07:00
Thales Lima 8da8198bbb Merge "Make inlineQsb a grid-option attr" into tm-qpr-dev 2022-08-16 20:34:10 +00:00
Thales Lima 11af7bcd83 Make inlineQsb a grid-option attr
It should be per grid and not display size

Fix: 242301548
Test: atest DeviceProfileTest
Change-Id: I5ac11bd7162ce8102fd47c64039e339099ee8a05
2022-08-12 15:24:54 +01:00
Thales Lima a08a443d63 Make folder sizes customizable
Introduce new attrs for folder sizes and update all grids to use the new attrs

Fix: 214582832
Fix: 236272949
Test: atest DeviceProfileTest
Test: manual comparison with mocks
Change-Id: I638052a7f01b4951df0dd26db577167468a3c46d
2022-08-12 12:24:18 +01:00
Thales Lima 1fb075de3b Tune display options for non-default display sizes
Fix: 241382721
Test: manual
Change-Id: I05379c359dabad6931ee897455aa847a7a9b470c
2022-08-10 10:47:50 +01:00
Thales Lima 9938c2f791 Calculate hotseat width based on available width
Navigation buttons take space on the hotseat, so hotseat width (qsb width and border space between icons) should be calculated instead of having a coded value.

Bug: 223724516
Bug: 228998463
Test: manual, changing display size
Test: manual, changing hotseatBarEndOffset value
Test: HotseatWidthCalculationTest
Change-Id: Ibd4f5ff2e06afda8e7420fb744db049d2e418e14
2022-08-04 15:21:06 +01:00