Commit Graph

284 Commits

Author SHA1 Message Date
Sunny Goyal 4a35dd4f0d Do not launch home disambiguation screen when home is not known
Bug: 233071361
Test: Verified on device
Change-Id: I54e71e19363920b0778c328dc391575d0921f304
2022-05-23 23:30:58 +00:00
Andras Kloczl 0056e95d8e Change home dragging logic for dead zones
- If a dragged item is not over a valid drop target
then we don't highlight anything and on drop we move
it back to its original position.
- Instead of checking if the dragged item is over the
hotseat view, now we check if the item is over the hotseat
shortcuts.
- Smartspace is a dead zone

Test: drag items from different workspaces, allapps, widget
  picker etc. to all parts of the screen and verify which
  view is targeted and where the item gets dropped.
  Check on phone/foldable/tablet.
Bug: 228201267
Change-Id: I18de576ea300d58ae645e511b238e0b946b5595a
2022-04-26 16:28:11 +01:00
Sunny Goyal 645af0a6b3 Revert "fix broken build on erorrprone"
Revert submission 17730702-fixErrorProneBuild

Reason for revert: Breaks Launcher3 unbundled build by using hidden library in main Launcher code
Reverted Changes:
Id0ce4d308:Change version checks to use SdkLevel.isAtLeast*
I8fc801b00:fix broken build on erorrprone

Change-Id: Ib1cd50a746bad3b6fb9fbd455a7cdce30f341d8b
2022-04-14 16:54:07 -07:00
kholoud mohamed 9db305478e fix broken build on erorrprone
Bug: 229190745
Test: m -j out/soong/.intermediates/packages/apps/Launcher3/Launcher3/android_common/lint/lint-baseline.xml
Change-Id: I8fc801b0051a7e14578fa331b22653f109c1dcc6
2022-04-14 14:18:30 +01:00
Jeremy Sim e15927eec7 Merge "Implement splitting from Taskbar long-press" into tm-dev 2022-04-09 01:21:14 +00:00
Jeremy Sim abdf25d226 Implement splitting from Taskbar long-press
Implements the ability to split the screen by long-pressing a Taskbar icon.

Bug: 217964720
Test: Manual
Change-Id: I5d324d8ca912c10cc3c3de21cae98fad546b85ac
2022-04-08 12:15:16 -07:00
Sebastian Franco d2d8e97a65 Make the text for the drop target buttons fit if it's too long.
The text "Don't suggest app" is too long when the device language
is GE or JA, or if you make the text bigger in settings.

Before truncating the text completely we are going to try to make
the text smaller until it gets to a predefined value
(button_drop_target_min_text_size).

Test: Change the language to German (Deutch) and install a new app and drag it to the workspace to see the button "App nicht vorschlagen"
Test: Also, a nice way to test is to go to SecondaryDropTarget#setupUi and hardcode the option to always show "Don't suggest app"
Fix: 221480721
Change-Id: I99def4e23cd17109a297aecaa620cef7a0d137e7
2022-04-07 16:39:29 +00:00
Brian Isganitis 88319c4828 Add utility for isWallpaperSupported.
Test: Manual
Bug: 223549757
Change-Id: I910ad82ab12790f082525353dbdb86def93e3c04
2022-03-21 17:09:24 -07:00
Jon Miranda 0aa263c5a0 Do not theme icons when the original view is not themed.
Fixes bug where animations uses themed icons in All Apps, where the
icons are not themed.

We want the DragView themed since all valid drop locations will have it
appear themed.

Bug: 215650713
Test: open/close an app from All Apps
Change-Id: I9969ce4921831dd12858ed9b0fe64379e9e3b188
2022-02-15 13:16:22 -08:00
Andy Wickham 8e3131898f Merge "Utilities.trim never returns null." 2022-01-28 00:35:50 +00:00
Andy Wickham 56be73be80 Utilities.trim never returns null.
This fixes a crash loop I was seeing on my device and also
preemptively fixes similar NullPointerExceptions.

Bug: 213931730
Test: Manually verified crash loop stopped with this change.
Change-Id: I8d2fc8475d42ac60b7fdc9219421a8c9733c7b9f
2022-01-18 09:13:43 -08:00
Tony Wickham 7b40594bc7 Merge changes I36f6cfb8,I7c784765
* changes:
  Create new window for Taskbar Nav Buttons when taskbar is focusable
  Make taskbar focusable when folder is open to get IME input
2022-01-14 17:12:08 +00:00
Tony Wickham 66971f87e1 Create new window for Taskbar Nav Buttons when taskbar is focusable
Test: Open folder from taskbar, edit name, ensure back button displays above IME and that IME sends input to the taskbar folder name
Bug: 205803170
Change-Id: I36f6cfb835aa7da280f15ea4b0aed8923ce8a012
2022-01-12 14:22:47 -08:00
Sunny Goyal 68af549a45 Adding icon theming API support in Launcher
Bug: 200082620
Test: manual
Change-Id: If986b9cfc3db79d627d2a6f1304e1b6f58491470
2022-01-08 00:05:47 +05:30
Sunny Goyal d872a97bd0 Updating icon badging logic
Bug: 201682172
Test: Manual
Change-Id: I57421b0c77e12f1cd464e532d2a1383c2cf93981
2021-12-02 22:14:25 +00:00
Hyunyoung Song c2f024beb6 Fix wrong getIconBounds method inside BubbleTextView
Bug: 205065809
Test: screenshot on the bug

TL;DR;; created two variants depending on the layout direction

Change-Id: I9c5e74409c701b1f219ca450de0dca2291507045
2021-11-09 11:39:21 -08:00
Schneider Victor-tulias 16e04e29d2 Generalize the icon popup menu types.
Generalized popup menu types and logic to allow wider uses outside of launcher.

Bug: 198438631
Test: long pressed launcher icons and pressed menu options
Change-Id: Iadcbb1796496c0061dcee362784e426ff55dc94a
2021-10-19 16:06:16 -07:00
sfufa@google.com 1c5e607940 [Search] Scale up small search icons on drag start
Bug: 199341710
Test: manual
Change-Id: I243c3e84e3093d4a9c605b187a625c0580d9933f
2021-10-05 18:09:26 -07:00
Sunny Goyal 68031ca3f9 Storing form factor as part of backup and disabling restore if form-factor is different
Bug: 195301649
Test: Manual
Change-Id: I9a9c4bc9246f40af2209cb914b3966319bc78bff
2021-08-04 09:51:04 -07:00
Vinit Nayak 7903758d08 Animate SplitPlaceholderView when entering split from overview
Bugs tracked in b/181704764

Bug: 181704764
Test: Tested on phone and large screen in multiple orientations

Change-Id: I07509006ae3d1f4425dc5119d0c8ed52b41a3bc2
2021-07-22 20:12:26 +00:00
Steven Ng b33e38242f Merge "Modify AT_LEAST_S check to include SDK int" into sc-dev am: 1184a03b08
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/15002455

Change-Id: I9a2ed9eb320f6b8ce469d1c4fca96fb8218953fd
2021-06-17 09:19:45 +00:00
Steven Ng 7e31e9b267 Modify AT_LEAST_S check to include SDK int
BuildCompat.isAtLeastS() in Launcher dependency only checks if the
code name is "S". In the recent version of Android, the code name has
changed to "REL".

Test: Open Widgets picker, expand Conversations and observe a preview
      layout is shown.
Fix: 191239040, 191216821
Change-Id: I6a6e647d4cb327d251bde3484ea2d2e79c0f86f5
2021-06-16 23:56:38 +01:00
Cyrus Boadway 801dbf90c4 Merge "Use the splash screen background color as the fallback background color" into sc-dev am: 3616f29f83
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/14881306

Change-Id: I5ad3b65fb0e74ca77e37aa9bea590f82519283a0
2021-06-12 17:27:27 +00:00
Cyrus Boadway 9f06168692 Use the splash screen background color as the fallback background color
For the widget transition animation fallback background color, use either
the splash screen background color if a task is starting or the task
description-attached background color.

With a background in place, allow the window to fully fade out before
fading in the widget, by moving the window alpha math into an animation
factory-specific implementation.

Bug: 187706750
Test: Manual
Change-Id: I2b5a7783b0585d447ad60534bc48d2e2176877ed
2021-06-10 21:03:24 +00:00
Tony Wickham c7cbf254f3 Let DragView use ActivityContext instead of Launcher
- Make DragView abstract and extended by LauncherDragView for the explicitly Launcher-specific parts.
- Some other methods like Utilities.getFullDrawable() now accept (Activity)Context rather than Launcher.

Test: Compiles and runs, manual drag and drop
Bug: 182981908
Change-Id: I77b7a2e48ce864dd711c3232217fdba4d60c546f
2021-05-25 15:35:55 -07:00
Sunny Goyal e9d27f137f Updating method for getting themed icon
Bug: 183641907
Test: Manual
Change-Id: I417886acea1b518c184d8e7c649367cae841a7e4
2021-05-21 12:29:15 -07:00
Sunny Goyal d5500548dc Revert^2 "Moving taskbar lifecycle to TouchInteractionService"
430465a3d5
Bug: 187353581
Change-Id: I7b2280d16adfafd3e85ffc1d22e32d0c00d12b67
2021-05-21 07:05:02 +00:00
Kholoud Mohamed 430465a3d5 Revert "Moving taskbar lifecycle to TouchInteractionService"
This reverts commit e215fb730b.

Reason for revert: DroidMonitor-triggered revert due to breakage https://android-build.googleplex.com/builds/tests/view?invocationId=I13700009003387451&testResultId=TR89423459137251402, bug https://buganizer.corp.google.com/issues/188755902

Bug: 188755902
Change-Id: I4650136975b60f311499ee6ff5b27ab9a32d23d6
2021-05-20 13:32:05 +01:00
Sunny Goyal e215fb730b Moving taskbar lifecycle to TouchInteractionService
> Inflating taskbar views with a non-launcher window context
> Removing separate taskbar view in Launcher
> Handling taskbar icon clicks directly instead of going via launcher
> Fixing some relayouts during show/hide animation

Bug: 187353581
Test: Manual
Change-Id: Ia7d44acbb770bf0345922234b3daa5cc040a5843
2021-05-17 21:47:08 -07:00
Jon Miranda af3aed0c4a Use SP for folder text size.
Bug: 156141463
Test: change font size, verify folder text size changes
Change-Id: I7e479d76c9f16c5b42cabfbae63494ef98b6dc27
2021-05-11 16:14:09 -07:00
Sunny Goyal b47172bc4e Linking various settings that control icon cache to icon state
Also separating icon provider for recents from Launcher as it used a fixed size

Bug: 183641907
Test: Verified on device
Change-Id: I6ea3caa0066d1483bfb8a81f0e8aaa472c813afe
2021-05-05 23:05:38 -07:00
Jon Miranda 88b7f6a0d5 Move color extraction utils to extractor class so each instance can
have its own set of temp variables.

- Pass in float[] param to not create new obj in each frame
  for dragging widget case.

Bug: 175329686
Bug: 187019711
Test: manual, verify
Change-Id: I4350fb7e66a80c73def5659fb41abc14d357e667
2021-05-04 09:00:01 -07:00
Jonathan Miranda 21930da9a2 Revert "Revert "Use color extraction for arrow popup.""
This reverts commit 17fda29bf3.

Reason for revert: Fixing the memory leak

Leak was detected in caused launcher tapl tests to fail.
For instructions on how to debug leaks, see go/launcher-testing.
Using AS memory profiler, the color extractor class is holding
onto a reference to launcher that has already been destroyed.
The fix is to set the listener to null when view is closed.

Bug: 175329686
Test: run profiler in AS, open and close popups, and verify no leaks

Change-Id: I2d4a87f0481cbc88f3587dce91278e85ca113545
2021-05-04 08:53:58 -07:00
Sunny Goyal 9ab43772ab Adding support for using themed icons on workspace
Bug: 183641907
Test: Manual

Change-Id: Ieda7e73b3ae4dfe3009e3f23754aff5f8826a967
2021-05-03 20:00:38 -07:00
Vadim Tryshev 17fda29bf3 Revert "Use color extraction for arrow popup."
This reverts commit 242c805f82.

Reason for revert: Introduces a leak. I haven't seen a bug for it yet, but this CL is the only in the culprit list; the leak can block multiple teams presubmits, and the leak is via ArrowPopup. Enough evidence.
https://fusion2.corp.google.com/invocations/4b50db71-d598-4e52-9076-e91d42b65014/targets

Change-Id: I1700a9eea8705983598aee43c0a63e67c1d9cf71
Bug: 187075409
2021-05-03 18:27:41 +00:00
Jon Miranda 242c805f82 Use color extraction for arrow popup.
- Updated logic to accept any view that is a a child of draglayer
  (from being workspace dependent)
- Move color extraction logic from widget class to utility class.
- Initial CL, future CL will interpolate between colors
  and expand color extraction to other abstract floating views.

Bug: 175329686
Test: long press on colorful wallpaper and test colors are extracted
      test in multiwindow mode
Change-Id: I18a6bb5013de4eea7e9b45810401f5b9b3cd7302
2021-04-30 15:54:17 -07:00
Vinit Nayak 4cc0dbb552 Change TaskIconMenu to lay out vertically
Still lays out horizontally when in phone
landscape.
TODO(b/186583656), need to center view.
Also have all layout be dynamic instead of having
some cases be in XML and some in code.

Bug: 181704764
Test: Task menu visible with all options in
portrait/landscape tablet
portrait phone
fake/real landscape phone

Change-Id: I3632eeb174f3e4baf2c9d69d51c1815c3c512e59
2021-04-28 11:47:08 -07:00
Sunny Goyal 35c7b19fa8 Using WindowContext for listening to configuration changes
Pre-S: Continue to use config-changed broadcast for configuration changes
and display-changed event for rotation changes
S+: Use WindowContext#componentCallbacks for config and rotation changes, and
continue to use display listener for frame-rate changes

Bug: 179308296
Test: Manual and presubmit
Change-Id: I533e69068b5fa6c052a02759ef309dd075ee6a4b
2021-04-22 00:23:02 -07:00
Sunny Goyal 9f2acdd552 Unifying icon loading methods
Bug: 183641907
Test: Presubmit
Change-Id: I255e81a128635910b531b3d00f707fa352050f2e
2021-04-15 16:48:04 -07:00
Zak Cohen ec4407b4ef Overview - add the ability to color scrim task views.
Bug: 184202238
Test: local build and flash
Change-Id: If700cb6dffc3966fe860c40d98d40a5899c236e4
2021-04-05 11:17:02 -07:00
Sunny Goyal 572aca4ce2 Moving some common functionality to IconLoaderLib
Bug: 183641907
Test: Manual
Change-Id: Icfc7ebb140e4e1678b0715beee2e0e513e707b9e
2021-03-25 10:06:53 -07:00
[1;3C a608d81359 Add rotation support to launch animations
This only adds support for launch animations. Recents
requires some auxiliar work.

Adds a rotation parameter to the animation targets that
only gets used by shell transitions. If this is non-zero,
launcher will transform it's coordinates relative to that
provide rotation.

Bug: 179308296
Test: Launch and exit apps with different orientation from
      default (portrait).
Change-Id: I7b52cbd37432bcd43e7155bcb07b30cc65c43186
2021-03-17 15:30:47 -07:00
Pat Manning 0fe7326cf0 Align task thumbnails to edge when cropped.
Align to left edge unless RTL enabled. Do not rotate thumbnails if they
would not fit nicely once rotated.

Test: manual - Ensure task thumbnails align with left edge if cropped.
Bug: 177402412
Change-Id: I6e03715061120deb5a8fde005d676170eed0f819
2021-03-17 01:30:07 +00:00
Sunny Goyal 4c23ca768f Fixing shortcut intent getting cleared during backup/restore
Bug: 174570283
Bug: 156871815
Test: Verified on device
Change-Id: Ie286ee783bfe96c5b2be28f0db5298caf3801e6d
2021-02-12 18:04:23 +00:00
Tracy Zhou 0455d146a1 Fix missing grid for devices that upgrade from R
Fixes: 178435615
Test: TODO
Change-Id: I9894b88485daf5b641b4674a5abff05e0f53138b
2021-01-27 22:18:13 +00:00
Sunny Goyal 6638b56667 Merge "Preventing crash when a gesture starts after home activity change but before the update has been received by Launcher" 2021-01-19 18:04:20 +00:00
Sunny Goyal 53e3b14029 Preventing crash when a gesture starts after home activity change but
before the update has been received by Launcher

Bug: 175645691
Test: Verified using a test launcher
Change-Id: I3f726894bdc941878bb8f8eba7c4701e1218c0dd
2021-01-13 16:21:02 -08:00
Schneider Victor-tulias 6a5f431a7b Revert "Revert "Add UI updates for incremental app installs.""
This reverts commit 229497d182.

Reason for revert: Patching bugs

Fixes: 176901235, 176992421, 176884453

Test: manual

Change-Id: I57e13a15e72284564a10761966732ee31d15fd08
2021-01-12 12:22:33 -08:00
Schneider Victor-tulias 229497d182 Revert "Add UI updates for incremental app installs."
This reverts commit 84269d349d.

Reason for revert: causes b/176884453 and b/176992421

Change-Id: I3398674a0acbad8329df5d341ae074ac073a6bf9
2021-01-07 19:44:44 +00:00
Schneider Victor-tulias 84269d349d Add UI updates for incremental app installs.
1. Changed Preload Icon UI to be grayscale while the app is not startable.
2. Added progress bar for when app is installed but still ownloading.
3. Updated Preload Icon progress and click handling to use new incremental api.

Progress bar color updates will follow in a separate CL.

Demo: https://drive.google.com/file/d/1H1EvtTorLeJwC1eiq10tm-TT81YZ6osk/view?usp=sharing

Bug: 171008815

Test: manual

Change-Id: I5874a5146d79a8c91d7d90ff0b9c1c427a3c95dd
2021-01-05 15:17:26 -05:00