Commit Graph

79 Commits

Author SHA1 Message Date
Brian Isganitis 1664c9f418 Refactor all apps to depend on activity context.
The current AllAppsContainerView has been split into a base class and a
subclass for activities. The base class allows using all apps with an
activity context. A-Z and work profile tabs are supported, but search
and the hotseat still require an Activity.

Test: Manual. All apps should work the same.
Bug: 204696617
Change-Id: I3b146714bc11b3b3555d97623aab5d78ac836482
2022-01-24 20:24:20 -05:00
Samuel Fufa 154ad76f40 Introduce inline education for work profile
Bug: 186857875
Test: local
Change-Id: I796b04fbb3ffc714a01104107774819d35034f93
2021-06-14 01:01:42 -05:00
Sunny Goyal ce0c857e45 Avoid rebind if data didn't change
Bug: 187531176
Test: Manual
Change-Id: I94ab7ecfbed0cb8f0fbae995b4e2ff9c9cdaa808
2021-05-07 16:16:59 -07:00
Hyunyoung Song c07e3b3c28 Remove AA+ decorator logic from aosp code
Bug: 179495850
Test: manual

Change-Id: I7e029e4970f45a0f7c410533f85335a95e4e448c
2021-03-29 00:29:09 -07:00
Hyunyoung Song 1739c5c68e When in search mode, do not refresh rescycler view, on package update
Bug: 180570580
Test: manual

TL;DR;; when new app install happens in search mode, no reset
when new app install happens in a-z mode, recycler view refreshes

Change-Id: I8a6bf327ecd3dbef4837eca560f10016731b78e0
2021-02-22 02:32:23 -08:00
Hyunyoung Song db9a53d9aa Add group highlighting to AA+ result
Bug: 180071886
Test: manual
Change-Id: Id1cc3d7400e1a7fe41af272d689aa9315030b420
2021-02-18 02:19:27 -08:00
Samuel Fufa 2c86122fa4 Resolve auto close on widget swipe
Bug: 172891360
Test: Manual
Change-Id: Icb384b6dc5ec9a29b6a9a7811b862a2d83ca11a7
(cherry picked from commit 5fa6f3ce503cde51687985ebc9dee6f163b9b1ea)
2020-11-17 18:34:46 +00:00
Samuel Fufa c25bc0335b Fix OutOfBounds issue on getFocusedChild
In cases where search only shows items that don't require focus highlighting,getFocusedChildIndex returns -1.

Bug: 13023194
Change-Id: I6145ae26e3953c5fc4fd1ed1696eb931017cac0f
2020-11-11 11:31:54 -06:00
Hyunyoung Song 3a4caed1f3 Fix NPE inside getFocusdChild
Bug: 172883035
Change-Id: Iea3e07165cdaa45031ee5bbc11add5c115cab366
2020-11-09 22:19:37 -08:00
Hyunyoung Song caa1e9c399 Search query method should support multiple consumers
Bug: 170488559
Change-Id: I64bef9523d3c3950c4ca3a4b9ce1d506d1672200
2020-10-19 22:09:10 -07:00
Samuel Fufa 114de69c98 Introduce support for play results in launcher
Introduces PluginSearchPipeline class, a plugin listener for AllAppsSearchPlugin. Coverts from List<Bundle> results from callback to AdapterItems to be rendered in SearchController.
- Moves AdapterItem to AllAppsGridAdapter

Bug: 164699827
Test: Manual
Change-Id: I20ec147e6b3f4707cf69d62b4b4ac70a90196345
2020-08-18 11:34:09 -07:00
Hyunyoung Song 5dd045bec6 Handle IME selection focus for ENABLE_DEVICE_SEARCH
Bug: 162861289
Change-Id: I15e4eae09be2aa9f89a5157fd74c95e91e64bc53
2020-08-11 09:27:45 -07:00
Samuel Fufa 4a53c70c57 Introduce support for Hero app Section
[Video attached to bug report]

Bug: 162871508
Test: Manual
Change-Id: Ia6f5621d6220f55e6fd5e56530853c267838442c
2020-08-07 17:29:19 +00:00
Samuel Fufa 60096e990a Remove mFilteredApps
Currently, we are maintaining a list of appInfos to report the number of Accessibility recycler-view items. This could be done by maintaining an int.

Bug: 162480567
Test: Manual
Change-Id: I9de8e1d4ac6e1a674d1e19b591dedad0dd4cc536
2020-08-04 11:24:46 -07:00
Samuel Fufa e8bea3ea7a Allow search results decoration [part 2/3]
[Video attached to bug report]

Bug: 162480567
Test: Manual
Change-Id: Iff285abde5b2a3f3f3a63e7318020cfe7572af49
2020-08-04 10:28:28 -07:00
Samuel Fufa df10ff46bd Migrate AllAppsSearch [part 1/3]
[Video attached to bug report]

Setup DeviceSearchAlgorithm to handle on device search

Bug: 161801950
Test: Manual
Change-Id: Ib55f415f9992ceab687bbbfe904d153157541648
2020-07-28 14:48:33 -07:00
Sunny Goyal e396abf502 Moving model data structures to a separate file
Change-Id: I77ad7a5219e72d2e0d6c1803de2ac3ed6a65a8f7
2020-04-09 13:20:39 -07:00
Samuel Fufa 8f6d141d84 Work toggle improvements
Bug:141289979
Test:Manual
Change-Id: If96845c0220816f9ffd5a5c86ec33b2674d15d1d
2020-01-31 12:07:12 -08:00
Sunny Goyal 9c2b96090b Adding SecondaryDisplayLauncher in Launcher using common listener
Bug: 141596722
Change-Id: I480bfadf592f7d0309f17c33a3fe14bb77fb5586
2020-01-30 08:27:27 +00:00
Sunny Goyal fa39536570 Removing static reference of deep shortcut manager
Bug: 141376165
Change-Id: Ie60b82be63a8926825598c681d8b2a1b2ace6413
2020-01-02 20:13:12 +00:00
Sunny Goyal 0af5134bc5 Moving section names to model, to avoid an unnecessary hashmap
Change-Id: I9620367e0c2203b2290a4a188411ccb9174ae130
2019-08-06 15:21:36 -07:00
vadimt 1fd52d9024 Remove tracing for a fixed bug
Bug: 132900132
Change-Id: Ic4ce3669f88c932e392b7517ec9fda11384dc334
2019-07-11 16:00:12 -07:00
vadimt 5aef526e95 More logging for lab-only flake when an app doesn't start
I suspect that All Apps gets refreshed around the time of the click.

Bug: 132900132
Change-Id: I6d3053f7d8f998e08ca495c005e14ddece634164
2019-05-28 18:28:09 +00:00
Sunny Goyal b1d222e9a7 Removing support for app prediction from Launcher3
Derivative projects can extend the FloatingHeader to add support
to custom content in all-apps screen.

Change-Id: I4e29221a72e5a077a756713a6774cda7ecde8f1b
2018-01-30 20:53:11 -08:00
Sunny Goyal 426345bfc4 Adding AppsStore for handling various app updates
Change-Id: Ia2242ce583576ace0924ef7142793ba37f4adcb9
2018-01-25 15:19:29 -08:00
Sunny Goyal 01ce755753 Removing unused app discovery support
Change-Id: I670be29851b232caa5c05624ae37ae5e92a8b65f
2018-01-23 13:53:03 -08:00
Tony Mak 6eeb040d86 Consume work mode API
Fix: 69905244

Change-Id: I5958b3a2ebba2fa0e0f69448d5526dc72ed6a97b
2018-01-04 19:06:01 +00:00
Tony Mak 2bfa4d469a Make work footer stick to the bottom if there are only a few apps #2
1. Move the work footer divider into the container, so it is translated
   with the rest of the footer.

2. Fixed the scrollbar issue in work tab by putting the footer height
   in AllAppsRecyclerView

3. We planned to drop the company name, and decided to use
   "Managed by your organisation".

4. Rename WorkModeToggleContainer to WorkFooterContainer as
   we are using work footer in else where.

BUG: 70571983
Change-Id: I218fe7d9970780a1a457ee450f1a32e7a46d9766
2017-12-15 11:40:07 +00:00
Mario Bertschler 527fa71adc Enables searching when using work tabs together with fallback search.
Bug: 69966634
Bug: 68713881
Change-Id: I972696575b7559b5baf80b949437dcb2dc885f66
2017-12-01 10:57:05 -08:00
Tony Mak 6ffe4e0eee Add work profile footer in work tab
Screenshot(work mode is on): https://hsv.googleplex.com/6279751685636096
Screenshot (work mode is off): https://hsv.googleplex.com/6279751685636096

TODO:
It is just the UX bit, once the platform change is in, we should then
consume the new API to
1. Turn on / off work mode
2. Get the organization name and set the textview accordingly.

BUG=69905244

Change-Id: Id94ae57625d6b629dac89c1c28f8d65f395fff6c
2017-11-29 20:37:11 +00:00
Mario Bertschler 2153e1c814 Implementation of PredictionRowView.
> Enable to use floating for prediction row even without tabs.
> Behind ALL_APPS_PREDICTION_ROW_VIEW feature flag.
> Expand/Collapse personal/work tabs in stopped intermediate state.

Bug: 68713881
Change-Id: I7817e7b7c6f572358f2b9a7a347339a9081708ee
2017-11-16 17:07:44 -08:00
Mario Bertschler ac9408a5cd Enable work profile tab in all apps.
This CL will bring two tabs to all apps: Personal and Work,
currently only if the user has a workfile set up and
behind a feature flag defaulting to disabled.

Bug: 68713881

Change-Id: Ib5a558281ef3593359db3ad593ee1d0cf279f547
2017-11-14 10:28:54 -08:00
Jon Miranda fc2bf24022 Remove assumptions from swap prediction logic.
Bug: 64689250
Change-Id: If54ac03dec7d8c09f951b3ffeb7732202e3f1562
2017-09-20 18:28:39 +00:00
Mario Bertschler 8ff9e1d679 Integrating suggested app by handling new status flags for shortcut items.
Guarded via feature flag SUGGESTED_APP.

Bug: 62483883

Change-Id: I7e0c8a9875bc37c435aa4316b44322a628cd4826
2017-08-24 12:23:06 -07:00
Sunny Goyal b23980cc0e Fixing duplicate/inconsistent definitions for model and callbacks
> 2 implementations for filtering workspace items
> 2 implementations for binding widgets
> duplicate logic for add and update appInfo

Change-Id: Id68a49926af398478deca8ac85ab1f22341a9449
2017-08-17 11:05:56 -07:00
Jon Miranda bb10fa8fc2 Fix bug where all apps scrollbar jumps.
The problem is that rowAppIndex is not being set when we swap in the
new predictions. So when we call AllAppsRecyclerView#getCurrentScrollY,
the "item.rowAppIndex == 0" clause returns true for every predicted app,
which results in a larger than expected value.

Bug: 64628968
Change-Id: I37ca660522b5a99666de2ea0b9c0aa8cd3732aca
2017-08-14 12:35:53 -07:00
Jon Miranda 7653a60c74 Optimize updating All Apps Predictions.
* Prefetch existing predictions in onResume.
* Only update predictions if something has been changed.
* Swap predictions in place (if possible) -- this avoids
  having to relayout all of All Apps when just the predictions
  change.

Bug: 64126588
Bug: 63711551
Change-Id: Iffa0d9d7d6f99f606dd68b7df5893d6eba1574f5
2017-07-30 11:04:58 -07:00
Sunny Goyal 89d5c5a31b Updating fast scrollbar UI in Landscape
Creating a separate view for FastScrollBar and moving all the relavant logic in
the view.
For protrait, the touch handling is delegated by the recycler view just like before.
For landscape, the dcrollbar does not overlay with recyclerView and handles the touch
itself

Bug: 37015359
Change-Id: Ie1981326457ba739bdf0ac8063db1065f395f133
2017-06-26 14:56:36 -07:00
Sunny Goyal d36ed7d982 Adding utility method to find an app from a component key
Change-Id: I445b512f29a0a45910c523f2f905c0a9e3c241f1
2017-06-20 21:03:36 -07:00
Jon Miranda 4e11c2738a Add physics motion to items in all apps.
Motion applied to:
- Icons
- Prediction icons
- Prediction divider

Bug: 38349031
Change-Id: I376e6e39080c8c80463a0ce8b104b05e4d576f17
2017-05-23 10:02:51 -07:00
Sunny Goyal 60820d796f Adding listener support for color extraction changes
Changing the apps-search layout to use theme attribute instead of hard
coded layout id

Bug: 37616877
Change-Id: Iae601758303f83a2774635f0d88f74d99fc643c3
2017-05-09 12:41:50 -07:00
Mario Bertschler b3cbd7c87d Revert "Adding suggested app as part of app discovery."
This reverts commit c0372a42a2.

Change-Id: Iebfb5bdbe042cb17f3d3657e0caa2fc7e9913ac6
2017-05-05 20:09:40 +00:00
Mario Bertschler c0372a42a2 Adding suggested app as part of app discovery.
It will replace the least prioritized predicted app
with the suggested app from app discovery.

Dogfood only!

Change-Id: I7713759c70ab6eaacfec2c45d3f78335c40dac79
2017-05-04 12:44:52 -07:00
Mario Bertschler d6756af623 Show recently used instant apps provided by the app discovery service in the same section as installed apps.
am: 853c13d427

Change-Id: I852e85f5b715d7f9ecc903bb0b9020e87c19cd99
2017-03-23 23:30:09 +00:00
Mario Bertschler 853c13d427 Show recently used instant apps provided by the app discovery service
in the same section as installed apps.

Change-Id: I2efd41c69960c4982523c58893aacfc7a5d0bb2e
2017-03-23 15:41:17 -07: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
Mario Bertschler 0fc6f684e7 App discovery integration in All Apps search
This is the basis for app discovery integration while searching in all apps.
This does NOT include binding to the actual service and retrieving results,
but instead provides all the UI to show suggested instant apps and apps
from a store with star rating and pricing.

Change-Id: I1605b52848491acee4ac1d15c0112e6a768363f6
2017-03-03 13:05:57 -08:00
Sunny Goyal 7c74e4ae64 No more UserHandleCompat
Bug: 32745285
Change-Id: I762fb4e268c1afe48a1860ab12a4ccb3f626aa95
2016-12-15 22:06:10 -08:00
Sunny Goyal d164b7f4ab Fixing static instance of Indexer being created in the model
Indexer depends on the locale and should be created when ever the config
changes. Moving the widget indexing to the adapter (similar to allApps)
which gets created whenever the activity is recreated.
This fixes the bug where widgets indexing breaks if locale changes while launcher
process is alive
Also fixing the bug in widget model cloning where the HashMap was not cloning
the underlying ArrayList

Change-Id: I7dbe6290e73299c4c07aa7fa564077a2649e1a4c
2016-10-19 07:42:34 +01:00
Sunny Goyal 2a65020da1 Removing the section break UI support
This was an exploration for an alternative UI in all apps, where we
show section headers before every section. This was never released.

Change-Id: I2d36f1d078cc9a6f3ba6f0ec9655412182c9b016
2016-10-13 09:39:36 -07:00