Commit Graph

600 Commits

Author SHA1 Message Date
Chaohui Wang
0d338cd1df Let SpaBridgeActivity support ActivityEmbedding
Move the multi pane shared logic into EmbeddedDeepLinkUtils.

Fix: 309075424
Test: manual - with SpaActivity
Test: unit tests
Test: m RunSettingsRoboTests ROBOTEST_FILTER=".*\.SettingsActivityTest"
Change-Id: I8c41c801b8a5009a3959c85b784ed9739d947a70
2023-11-07 13:24:59 +08:00
Viesturs Zarins
99631a11ec Merge "Add searchable metadata attribute for injected tiles." into udc-qpr-dev am: 5bc1e9b38f am: 68fede37a0
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24792152

Change-Id: Iffe2d746713a2b7f03261ba02ecbce2713546e7b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-26 10:30:22 +00:00
Viesturs Zarins
40765c7763 Add searchable metadata attribute for injected tiles.
Allowing the injector to directly control search behavior for their tiles.

Bug: b/299430183
Test: robotest, manual
Change-Id: I21915978d6722998a45741410cca72448aacf2e0
2023-09-25 08:24:01 +00:00
Peter Kalauskas
80e914a263 Enable use_resource_processor for all sysui deps
This will make the build faster

Test: m checkbuild
Bug: 295208392
Change-Id: If75acb6b1c3f204e3686c20cef609f7cfabe15cf
2023-09-21 23:09:39 +00:00
Chaohui Wang
6e7b06f18e Clean up deprecated WifiSettings
Replace all references to NetworkProviderSettings.

Bug: 297036035
Test: robo test
Test: manual - on internet settings
Change-Id: I2a5ae5644042c982c2a284a303257896c20b7714
2023-09-01 13:24:29 +08:00
Chaohui Wang
2cab62254c Use resource processor for Settings
Bug: 293810334
Test: m Settings
Test: robotests
Change-Id: Ie515e137648eddfdfcab5e8095f5be99721d9e1b
2023-08-11 22:39:08 +08:00
Chaohui Wang
295a46f3e0 Fix R.drawable.ic_search_24dp
It's belong to namespace com.android.settingslib.search instead of
com.android.settingslib.widget

Fix: 295106566
Test: m Settings
Test: installmod Settings
Test: manual - on Developer Option page
Change-Id: I69839d422230815b17327f7f937854c4c72890fb
2023-08-10 10:00:24 +08:00
Chaohui Wang
781ca69f9b Fix R.string.search_menu
It's belong to namespace com.android.settingslib.search instead of
com.android.settingslib.widget

Fix: 295106566
Test: manual - on Developer Option page
Change-Id: I6f66509ebc89094f96e08860c2d034b3b22c3b50
2023-08-09 20:04:48 +08:00
Chaohui Wang
8e2ae547d6 Clean up FeatureFactory.getFeature()
Bug: 286764889
Test: m Settings
Change-Id: I7e472e6b0ca6b7a735c1b92742ddf06c545176fc
2023-08-08 08:41:48 +00:00
Chaohui Wang
2541381259 Fix references to resources for Settings
Bug: 293810334
Test: m Settings
Change-Id: Ie140278f492ef7e1c062ec1ecae2866c521a86aa
2023-08-08 01:56:05 +00:00
Chaohui Wang
58f0ee30fc Remove context from dashboardFeatureProvider
DashboardFeatureProviderImpl is created by using application context,
no need pass context in when get.

Bug: 286764889
Test: m Settings
Change-Id: Ia9672dfd9d3d71f64735cbc5979a6ad57c9429d3
2023-07-20 12:21:16 +08:00
Alexander Milantev
92195471b0 Avoid activity embedding if the activity is already embedded
Test: manual + robotests com.android.settings.search and com.android.settings.SettingsActivityTest
Bug: 271260497

Change-Id: Ia21ca7a75cacee64d1942e2fe1b439ac4a3cb134
2023-03-28 15:05:35 +00:00
Justin Ghan
1cc772d30d Support stylus handwriting in settings search bar
Bug: 270708561
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.search
Change-Id: Iec6d6deb68b834654b2bbc11d96227db5319b0f0
2023-03-08 10:20:44 -08:00
Jason Chiu
79d282bbfb Merge "Revert "Remove FLAG_ACTIVITY_FORWARD_RESULT in 2-pane flow"" 2022-12-14 02:49:17 +00:00
Jason Chiu
8b1e5d9d7d Revert "Remove FLAG_ACTIVITY_FORWARD_RESULT in 2-pane flow"
This reverts commit ea1580f92b.

Reason for revert:
1. Search result trampoline should have that result sent back to the
reply target of the original activity.
2. To leverage the behavior of handheld's deep link case, large
screen's deep link should forward the result.

Change-Id: I55303070e35fc9430063655e0a9a0fd72e0823ac
2022-12-13 08:05:49 +00:00
Stanley Wang
2b8874fa09 Merge "Add new api for search pre-index" 2022-09-05 09:00:36 +00:00
Stanley Wang
1712d57a87 Add new api for search pre-index
Add sendPreIndexIntent api.

Bug: 244521263
Test: manually test and review UI
Change-Id: Ibbe88eeb114b453886693ecb92ebd8ee287f9581
2022-09-01 17:33:17 +08:00
Jason Chiu
2118ea589b Support target intent data relay in SearchResultTrampoline
Bug: 240391954
Test: manual & robotest
Change-Id: I2798839dd03f3f2fd165c8cba86b748aa6257804
2022-08-22 18:16:11 +08:00
Arc Wang
ea1580f92b Remove FLAG_ACTIVITY_FORWARD_RESULT in 2-pane flow
Settings$CreateShortcutActivity does not necessary to be
displayed in 2-pane and it seems no scenario needs the flag
Intent.FLAG_ACTIVITY_FORWARD_RESULT.

Bug: 241346847
Test: build pass
Change-Id: I7a8fca61b453db70233b151711df516649424e3a
2022-08-10 16:14:11 +08:00
xuezaiyue
ac7318419a Move battery usage files to a separate folder.
Bug: 202118250
Test: presubmit
Change-Id: I21aa58ebc02327849ed2161dbbafcdc806c007f2
2022-06-19 05:59:35 +00:00
Jason Chiu
177573c892 Enhance Settings deep link transition
Since the deep link mechanism uses a trampoline activity to redirect the
target activity, and the targeting activity is launched in a separate
task, there will be two transitions played, where one is the splash
screen with the trampoline acitvity and another one is the task
transition. This makes the UX weird.

To avoid this, this CL tries to make the targeting activity launch in
the same task as the trampoline acitivity by removing the taskAffinity,
so there won't be a task transition.

Fix: 215275940
Test: Create a settings shortcut on the home screen and launch it.
Change-Id: I7621ab9f1132acbf619495801a3b985c5c3b1b5d
2022-03-24 12:42:01 +08:00
Jason Chiu
94a9c57759 [Large screen] Open the search page in full-screen mode
Bug: 205079744
Test: manual
Change-Id: I3ac663b42fc0538dcb20d53f456b90ea68c9093d
2022-01-24 12:21:58 +08:00
Jason Chiu
a305c23f5e Revise homepage highlight mechanism
- Create TopLevelHighlightMixin to handle highlight actions and simplify
  TopLevelSettings
- Fix the error highlight and the flicker after screen rotation
- Postpone creating the fragment until it's needed to accelerate the
  initialization and to fix the search highlight function breakage after
  toggling light/dark mode
- Register activity embedding rules only once for injection and
  wallpaper
- Do not highlight Tips & support since it's full screen
- Refactor ActivityEmbeddingRulesController

Bug: 207316936
Test: manual, robotest build pass
Change-Id: If322ec180b03ee123987c70779a25c6a570d9faf
2021-12-03 12:04:48 +08:00
Tsung-Mao Fang
0e03b12d60 Fix abnormal behavior on search page
Prior to this cl, if user opens settings app
in single-pane first and navigates to
the search page, then rotate the device,
user observed the search page was still shown
with full screen.

Because we didn't register correct split rule,
it causes the abormal behavior on two-pane mode.
In order to register correct rule,  we also need
to assign correct component name while opening the
search page.

Fix: 206896763
Test: Rebuilt apk and verify the behavior
Change-Id: I7343467aa716d71da63f2ad0a034dc6c1b7fd415
2021-11-23 16:32:32 +08:00
Jason Chiu
3af73364ba Support highlighting the menu entry for Search results
1. Add a receiver to monitor the search state
2. Shoe/hide the menu highlight in the listener
3. Highlight the menu entry in SearchResultTrampoline
4. Enable/disable the receiver in SettingsInitialize

Bug: 205781792
Test: manual, robotest
Change-Id: Ia04901f504172f4f0c7b4b2ea7eda5f3713f676d
2021-11-11 14:33:26 +08:00
Jason Chiu
ae5327d4bb Fine tune the homepage scrolling behavior
Scroll to the highlight position before showing homepage.

Bug: 199017944
Bug: 204946469
Test: visual
Change-Id: I11708f42180a3af22855ac7b5f53460f737ed208
2021-11-05 18:21:59 +08:00
Tsung-Mao Fang
b3db40a02b Register rule for wallpaper entry
We should keep consistent split rule for wallpaper and other home menu
item. So, we create this cl to register the split rule for wallpaper.

Also, I do some minor refactoring in this cl for reusing existing
method and better code quality.

Test: Go to wallpaper, and click back key. App can close.
Fix: 204406425
Fix: 204364572

Change-Id: Ia7de9483b351d1121cc26c4af1cb8a89ad0a16bc
2021-11-04 18:48:59 +08:00
Jason Chiu
e427cc6752 Search experience improvement for large screen
- Support fragment and direct link in SearchResultTrampoline
- Start activity for SI case and start deep link trampoline for others
- Disable menu highlight whenever the search bar is clicked
- Don't overwrite SettingsApplication's homepage activity in
  SliceDeepLinkHomepageActivity
- Scroll to highlighted menu entry after homepage is loaded to prevent
  UI overlapping

Bug: 201724410
Test: manual, robotest build pass
Change-Id: I5115d17d829e85036000da2e80f0e5b0598c733f
2021-11-03 18:44:01 +08:00
Arc Wang
54998b7bfe [Large screen] Fix searched Subsettings back navigation bug
Settings app registers SubSettings SplitPairRule with clearTop
true, it will finish Settings app if users click back button on
a SubSettings page.

This change registers SubSettings SplitPairRule with clearTop
true when users click a SubSettings item in Settings home menu.

And this change registers SubSettings SplitPairRule with clearTop
false when users click a SubSettings item in search result.

Bug: 204501750
Test: manual
      1. Settings -> Search settings -> search a SubSettings item
         (e.g., Battery)
      2. Click the searched item.
      3. Click back button.
Change-Id: I6e1862de528e971137ae7087de608bbdd79096b2
2021-10-29 17:45:40 +08:00
Jason Chiu
29a09e55ba Revert "Revert "Support highlightable Settings homepage menu for 2-pane""
This reverts commit 096c090b80.

Reason for revert: crash is fixed in this change

Bug: 202510128
Test: manual, build
Change-Id: Ifff8d58cfdcf43e123b11dee308665b2617cb4b3
2021-10-12 09:32:07 +00:00
Greg Kaiser
096c090b80 Revert "Support highlightable Settings homepage menu for 2-pane"
This reverts commit 9037ceabd3.

Reason for revert: Presumed cause of b/202510128

Change-Id: I0daaab95d9bc57229c0c8c916cbe3ada7aafb6fa
2021-10-08 14:29:06 +00:00
Jason Chiu
9037ceabd3 Support highlightable Settings homepage menu for 2-pane
1. Add a preference group adapter to perform highlighting
2. Add a class for mapping highlighable menu keys and preference keys
3. Add an API to determine if the screen is in split mode

Bug: 199017944
Test: manual, build
Change-Id: I8e3fe5fb96480a31ee0f3b3afb6ad78999d3d2bc
2021-10-08 12:52:52 +08:00
Arc Wang
407a725278 Use startActivity for android.settings.APP_SEARCH_SETTINGS
The Activity launched by android.settings.APP_SEARCH_SETTINGS
does not setResult. So it's no meaning to use
startActivityForResult for the Intent.

Bug: 196923591
Test: manual
      Settings -> Search settings -> search an item ->
      click back button twice and back to Settings home.
Change-Id: Ia760a301465bb87814326611a1ec2368887f120a
2021-09-30 01:52:48 +00:00
Tsung-Mao Fang
22b50de9f4 Add click tile event for tracking
- Search bar in homepage.
- Avatar icon in homepage.
- More personal safety in Safety & emergency.

Test: Rebuilt rom
Fix: 190341976
Change-Id: I14297211e4b7424f5fdeb46c360b3913101251d7
2021-06-17 17:50:34 +08:00
Yanting Yang
6bf1c3675d Correct breadcrumbs of Wallpaper & style
Remove the sitemap connection between Display and Wallpaper & style,
since we already moved the Wallpaper & style to the homepage.

Bug: 182708819
Test: robotests & visual
Change-Id: Ia069be91177d8fef56248b5343c41a13ef8267a2
2021-05-26 05:43:53 +08:00
Jason Chiu
1ee1911104 Skip indexing dynamic and injected raw data when page search is disabled
Test: robotest
Fixes: 188059978
Change-Id: I99c86ee12c7696123df26c47cfed8c3ddfbdf353
2021-05-20 06:34:08 +00:00
Tsung-Mao Fang
5ec0410e5b Prevent failed dynamic index
In the original design, if a controller in page initializes
failed, then it will impact all the dynamic index mechanism.

In this change, we will only skip controllers in a specfic page.
All other pages which controllers initialize correctly should work
proerly.

Test: See correct dynamic result
Bug: 185325344
Change-Id: I4f959a23635739e1064318ccdddd6d97016dac23
2021-04-14 18:42:46 +08:00
Yu-Han Yang
cdb3551be1 Add "See All" page for Recent Location Access
Screenshots: http://shortn/_UPy8KFSeSj

Bug: 180533061
Test: manual on device
Change-Id: Ib77bc0705835520ed1a2d3b7f662088ed838e53e
2021-03-08 13:27:45 -08:00
Tsung-Mao Fang
902a3469f0 Animate the search bar expansion
Enable the transition between Settings app and Settings Search

Test: Record the transition video and confirm it.
Fix: 175764903
Change-Id: I95125fba17bbf517feee9a10fd828ff8017f7106
2021-01-08 07:48:54 +00:00
Edgar Wang
a8742aa7ab Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: Ia8625091a107fc3fb652d3ba3f75ea3cc1a8d9f5
2020-08-12 11:29:07 +08:00
Edgar Wang
d64488b995 Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: I725783b298e95471272c9fa621c62666bc236d44
2020-08-04 00:33:25 +08:00
Arc Wang
41f23de712 [Wi-Fi] Replace WifiTracker with WifiPickerTracker in WifiSettings
WifiSettings uses WifiTracker in SettingsLib while WifiSettings2
uses WifiPickerTracker in WifiSettingsLib.

1. Remove WifiSettings.
2. Rename WifiSettings2 to WifiSettings.
3. Remove the files only used in the removed WifiSettings.
   (Saved networks files are not included)

Bug: 152571756
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi
      atest WifiSettingsUiTest
Change-Id: I800b434c8049121db115cff87d51e164e4529999
2020-05-14 21:24:57 +08:00
Yanting Yang
bfe16291a3 Fix breadcrumb of search results provided by Settings
Settings Search need Settings to provide custom site map pairs to
build up full breadcrumb for the search results from Gesture Settings
page.

Bug: 147851992
Bug: 151206664
Test: visual and robotests
Change-Id: I4a61e6da48755184954c2c90834578030ffc2e10
2020-04-21 19:11:45 +08:00
Yanting Yang
2483124478 Fix breadcrumb for the search results of Custom restrictions page
Settings Search need Settings to provide the custom site map pairs to
build up the full breadcrumb for the search results of Custom
restrictions page.

Impact search results:
Don't turn on screen
Don't wake for notifications
Hide notification dots on app icons
Hide status bar icons at top of screen
Don't pop notifications on screen
Hide from pull-down shade
Custom restrictions

Bug: 147851992
Bug: 151206664
Test: visual and robotests
Change-Id: I01e359eabcdc362e2a1fde5f3bc4ae5dc6918030
2020-04-15 08:52:05 +08:00
Yanting Yang
b7e1ececea Fix breadcrumb of search results provided by Settings
1. Settings Search need Settings to provide custom site map pairs to
build up full breadcrumb for the search results from below pages.
- PowerUsageAdvanced
- RecentLocationRequestSeeAllFragment
- UsbDetailsFragment
- UserBackupSettingsActivity

2. Update the screen title of Backup raw index data from Settings to
Backup to display correct breadcrumb in Settings Search.

Bug: 147851992
Bug: 151206664
Fixes: 152368059
Test: visual and robotests
Change-Id: Iaebab8d549bba6be7623708f9833349654e7f2a7
2020-04-10 20:56:39 +08:00
Yanting Yang
c54002e192 Add custom site map pairs into SettingsSearchIndexablesProvider
Settings Search need Settings to provide custom site map pairs to build
up full breadcrumb for the search results from ScreenLockSettings,
WallpaperSuggestionActivity and WifiSettings2.

Bug: 147851992
Bug: 151206664
Test: manual test with Settings Search, robotests
Change-Id: Ide6e69b3336af255a388737d46147f2fc2ef9790
2020-03-26 23:04:33 +08:00
Yanting Yang
298a7fe2e5 Remove the index of the homepage category tiles
Do not index the tiles of homepage category since we would like to index
their target activity for search.

Fixes: 151418948
Test: visual
Change-Id: I693534de006b4dbcaf192858e6f7d031bad78fef
2020-03-17 17:55:49 +08:00
Raff Tsai
e7e4dd905a Receive tab info from SettingsIntelligence
Bug: 144673633
Test: manual
Change-Id: Ia28c5a43debbfcc6f6f6d465764adad0977ea319
2019-12-10 11:11:43 +08:00
TreeHugger Robot
c050807cdc Merge changes from topic "query_nonpublic_slices"
* changes:
  Enable Settings Search to query private Slices.
  Add the impl for the ability to query non-public Slices
2019-11-27 11:09:31 +00:00
Jason Chiu
05599b89d2 Make Settings self-injected toggle switch searchable
- only skip ActivityTile
- skip items that has no static title

Bug: 132812768
Test: robotest
Change-Id: Idb3c111966c1dd96e2886aca2c7ead3b57ba119e
2019-11-27 17:11:26 +08:00