Commit Graph

648 Commits

Author SHA1 Message Date
Jiaming Liu
da7f685695 Fix build for jetpack update
Fix build for jetpack update

Bug: 265818545
Test: build

Change-Id: If48e7338ee560d995cb8bff7b5348ab36c457836
Merged-In: If48e7338ee560d995cb8bff7b5348ab36c457836
(cherry picked from commit e65283de6a)
(cherry picked from commit 5a6444776a)
(cherry picked from commit 1c0af48f8c)
2023-02-18 17:01:11 +00:00
Diego Vela
585a7f3c7a Update ActivityEmbedding usage.
Bug: 259592300
Test: build.
Change-Id: I8e4aa8daf51cb9c669d06b152cc5a2fc69a06571
Merged-In: I8e4aa8daf51cb9c669d06b152cc5a2fc69a06571
(cherry picked from commit a9394d1796)
(cherry picked from commit 65bb5a09f4)
(cherry picked from commit d2dfc4285e)
2023-02-18 16:27:45 +00:00
Treehugger Robot
c54246e0c8 Merge "Ensure search highlight position when scheduled runnable starts" am: fcd941b4eb
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2263782

Change-Id: I3d0a338bb220705a255a7abc123d490ee19f44af
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-25 08:01:42 +00:00
Shen Lin
bb2fb2ffd6 Ensure search highlight position when scheduled runnable starts
Search highlight function includes two steps: Scroll list to target position first, then notifyItemChanged to it.

We use a Handler.postDelay to implement this. However, when scheduled runnable starts, the original target position could have changed due to preference list update, calling recyclerview's methods after that will be easy to cause an exception.

This CL ensures highlight position every time before calling recyclerView update, which also contribute to origin fix of RecyclerView IllegalArgumentException to a certain extent.

Test: atest, also test some search results, and see the correct behavior
Fixes: 246411107

Change-Id: Ifa758ce3718b047138079246cdfce99fdf66d5b2
2022-10-21 14:01:47 +08:00
Treehugger Robot
78b58e08f5 Merge "Fix the IllegalArgumentException from RecyclerView" am: 8f793f5e4f am: 227b8f0272 am: 4aea873647 am: 68a63e0280
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2216421

Change-Id: I0580d5dc5853ca5ed43a023aa5875750ed104f61
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-14 05:56:10 +00:00
Shen Lin
c463aee2b8 Fix the IllegalArgumentException from RecyclerView
Attempt to remove the animator as early as possible to avoid a RecyclerView crash.

Bug: 246411107
Related bug: 184214085

Test: manual.
Change-Id: I8fcb06836217f4de200a53bb88a1a0b5e42bbe21
2022-09-13 08:46:30 +00:00
Wesley
243b450428 Update defend tips card
- Update defend tips card to unclickable
 - Update secondary button's action and content description
 screenshot: https://screenshot.googleplex.com/BYU8Mh5abJ9Tirh.png

Bug: 243769797
Bug: 243641857
Bug: 244219076
Test: make SettingsRoboTests
Change-Id: I7fdf5f7404d33f0374a992c83a7653a01b9f11bc
2022-09-01 04:09:31 +00:00
Pajace Chen
f3496399dd Implements the buttons layout for the extra defend
Bug: 235246949
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.fuelgauge.*
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.widget.CardPreferenceTest
Test: manual test
Change-Id: I1dc4ab31adf85c684a4c09bd6c9bcfb54b52dc3c
2022-08-18 10:16:05 +00:00
Peter_Liang
e1c4901ce8 Fix the inconsistent alignment of the main switch preference.
Remove the redundant function.

Bug: 232494666
Test: manual test
Change-Id: I1827d39b194048452b71c680e2bbf94e43bfcac5
2022-07-21 00:56:07 +08:00
Edgar Wang
4c07e2b865 Merge "Fix talkback speak "double tap to activate" on LabeledSeekBarPreference" into tm-dev 2022-05-24 12:07:41 +00:00
Edgar Wang
2b0d9cfc5d Fix talkback speak "double tap to activate" on LabeledSeekBarPreference
- SeekBarPreference should be unselectable
- remove unnecessary handling of Summary
- set currect Title color when preference is enabled and unselectable

Bug: 230553896
Test: robotest
Change-Id: Ie5d819088dc3c435005ddd00e232b2f6992b234a
2022-05-24 05:08:16 +00:00
Chaohui Wang
692068d535 Add the jank detection to Settings toggles
Add jank detection when click the following preferences,
 - SwitchPreference
   Single target, detect click in InstrumentedPreferenceFragment
 - PrimarySwitchPreference
   Two target, only detect click switch in switch's onClick()
 - MainSwitchPreference
   Single target, detect click in TogglePreferenceController
 - SettingsMainSwitchPreference
   Single target, detect click in its onSwitchChanged()

Bug: 230285829
Test: manual & robo tests
Change-Id: I97a13e05a601237b16cd2d903ba2fb6ec4a69a74
2022-05-19 12:28:16 +08:00
Peter_Liang
f659095c07 Fix that once the phone is rotated to portrait orientation, the "Use TalkBack" toggle is truncated.
Goals:
1. Extends the api of apply partner's customization padding style in the Settings widget "SettingsMainSwitchPreference" to dynamically adjust the padding depending on the SetupWizard library.
2. Use the function to avoid the button being truncated.

Bug: 231512916
Test: manual test
Change-Id: I951776185eb1616136d9caf3a60f9daea4da191a
2022-05-13 08:44:18 +00:00
Chaohui Wang
f311566b85 Add the jank detection to Settings sliders
- Currently most the sliders are implemented by
   com.android.settings.widget.SeekBarPreference.
 - Volume ones are implemented by VolumeSeekBarPreference, which resets
   the OnSeekBarChangeListener, so need special handling.
 - PointerSpeedPreference is standalone, added separately.

Bug: 230285829
Test: Verify trace via jank developer guideline.
Change-Id: Ia2978df196676ad6675d2834f6af6cb2aa9094cf
2022-05-03 11:06:34 +00:00
TreeHugger Robot
611db9e8be Merge "Remove loading spinner from Premium SMS access" into tm-dev 2022-04-29 02:30:14 +00:00
Stanley Wang
10c9cf6cd5 Fixe the problem of invalid switch preference.
The source of this problem is that onBindViewHolder is called
after the user add the OnMainSwitchChangeListener. Then
preference gets a new MainSwitchBar in onBindViewHolder and
causes the listener to fail.

Bug: 223325900
Test: Manually test and observe the UI
Change-Id: I6e58c4cf035811bb8805e76bebb5fbb86c7a79da
2022-04-27 17:17:21 +08:00
Stanley Wang
031cda05c3 Fixe the problem of invalid switch preference
- SettingsMainSwithBar will be recreated after the page is resumed.
  We should keep the OnMainSwitchChangeListener for
  SettingsMainSwitchPreference and re-register the listeners after
  the page is resumed.

Fix: 228930107
Fix: 222384287
Test: Manually test and see the UI
Change-Id: I9b57053989e611288cf4814b2a0ecbf9e3c55145
2022-04-27 03:41:06 +00:00
Jason Chiu
880471a1b0 Renew the highlight state color
Fix: 230283855
Test: visual
Change-Id: I725422518d07a0b0676731bd9da8384ab149ab1b
2022-04-25 15:34:42 +08:00
Mill Chen
5d33ca9120 Remove loading spinner from Premium SMS access
The loading spinner in the page is displayed by default, regardless of
whether or not how many apps are in the page. This change is trying to
remove the loading spinner from the page since this page doesn't have
many apps in it.

Bug: 222441974
Test: visual verify
Change-Id: I9b2b031122e6b6d521466ccf53e39185cfcab687
2022-04-22 13:41:45 +08:00
tom hsu
5281736004 [Panlingual] Add a description for per app language.
- This is to notify some app may not support to user.

Bug: 228415129
Test: local
Change-Id: I6205e0b5fdb3ee42a22ae4995c99e9d8dc5e0a2d
2022-04-14 06:47:13 +00:00
Jason Chiu
680fce3acd Refine layouts for large screen
- Support dynamic paddings depending on app's screen width
- Add round corners to homepage ripple effect to improve the transition
  of being highlighted
- Add an interface to support dynamic split layout for suggestion cards

Bug: 223300824
Test: robotest, manual
Change-Id: Iaca6b4fd3f7369179416ef084a800d7eb2ee4640
2022-03-30 04:54:30 +00:00
Jason Chiu
764e7fbc44 Prevent scrolling after the homepage recreating
- Only apply the layout transition when contextual home is enabled
- Do not scroll for highlighting when the homepage is recreated and
  never scrolled

Fix: 222238012
Bug: 222473415
Test: robotest, manual
Change-Id: I490c3f8dbca63a5250bae01555592b7795c90af2
2022-03-14 15:13:08 +08:00
Edgar Wang
b1a48df4f7 Remove restricted icon
Bug: 195401182
Test: robotest
Change-Id: I6b22b3b9b62812eb08f10492bd2d7908cce89d39
2022-02-08 03:09:50 +00:00
Jonathan Scott
c3dbc3ffbd Merge "Allow Device Management Role Holder to update Settings strings." 2022-01-31 19:10:30 +00:00
Peter_Liang
88d63ea3af New feature “Text and reading options” for SetupWizard, Wallpaper, and Settings (9/n).
- Fine-tune the legacy interface of the LabeledSeekBarPreference
1) If not set any label, the layout should be gone instead of visible. If not gone, the preference will have redundant space.

Bug: 211503117
Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER=LabeledSeekBarPreferenceTest
Change-Id: Ideea8589e35083eb89495c0eceba38c62b4807a7
2022-01-27 20:33:04 +08:00
Peter_Liang
cc5808cbd7 New feature “Text and reading options” for SetupWizard, Wallpaper, and Settings (8/n).
- Extending the LabeledSeekBarPreference
1) Add new attributes, "iconStart", "iconEnd",
"iconStartContentDescription", "iconEndContentDescription"
2) Add new interface setOnSeekBarChangeListener
- It will be integrated with display/font size items in next patches.

Bug: 211503117
Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER=LabeledSeekBarPreferenceTest
Change-Id: Id8fe4fb68062c0e92ca4c291d2f7c47303e8691e
2022-01-27 20:32:52 +08:00
Jonathan Scott
e0d439472f Allow Device Management Role Holder to update Settings strings.
Test: manual
Bug: 188414370
Change-Id: I6e1a06619799a9e99382d791e72e2e4518f93cac
2022-01-25 19:03:24 +00:00
Tsung-Mao Fang
13a76eb84e Update new API for checking the embedding status
Test: Make sure behavior is correct as it was in
search flow, higlight flow, regular settings flow, split screen flow.
Bug: 204399167

Change-Id: I7fc29c8cdbfc6682963591f4ff805070bea4ca22
2022-01-12 15:00:07 +08:00
Jason Chiu
d2e506fd20 Merge "Revise homepage highlight mechanism" into sc-v2-dev am: 7bfe3e869a am: 3b9ad4de7f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16366004

Change-Id: Ib86f125d24836fb955d5dd31ec26f250460d3161
2021-12-03 09:46:31 +00: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
TreeHugger Robot
9eaf11e0c9 Merge "UI refinement of highlighted menu entry for large screen" into sc-v2-dev am: aee951dcb0 am: 517c9ead5e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16304401

Change-Id: I21d8dab4ebc3292bf49a50e518531f3c07098a5b
2021-11-24 18:44:52 +00:00
Jason Chiu
90eef24080 UI refinement of highlighted menu entry for large screen
- Add a new highlight background drawable
- Add two homepage specific preferences for the new layout design

Fix: 207079684
Test: visual
Change-Id: I20c80da090a03129bffa845d443ee5d1ad13b97b
2021-11-22 12:36:05 +08:00
Jason Chiu
ed406e779c Merge "Start deep link page synchronously in SettingsActivity" into sc-v2-dev am: b4d3278a45 am: e7a681748e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16263226

Change-Id: I937db64f2c4ab9dfb82637bc7c775c05c4383fb6
2021-11-18 20:26:23 +00:00
Jason Chiu
a3b21cf017 Start deep link page synchronously in SettingsActivity
- Use a synchronous API to make SettingsActivity start deep link intent
  in onCreate
- Change SettingsHomepageActivity from an alias to a real activity
- Clean up redundant codes

Fix: 206585572
Test: Manual, robotest build pass
Change-Id: Idf42c026f593bb5801a13cae250d1523030b7092
2021-11-18 12:20:08 +08:00
TreeHugger Robot
687dea100f Merge "Fine tune the homepage scrolling behavior" into sc-v2-dev am: 244df10d90 am: 5f87b783af
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16182700

Change-Id: I86a9e4c7c4dd7ba437469c03d80b3e1782eb92c8
2021-11-05 11:55:43 +00: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
Jason Chiu
999a467e7c Merge "Search experience improvement for large screen" into sc-v2-dev am: 80dd47633c am: 3b3203cd50
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16101571

Change-Id: I65dd85d6ab63588900d367b52ec927a7cd9fa534
2021-11-03 12:34:57 +00: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
TreeHugger Robot
bd311f550e Merge changes from topic "two_pane_state" into sc-v2-dev am: 05896ef5fb am: ac5fa697d2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16101559

Change-Id: Ic75257f310834f0ac3236487bea1e910f7018f1b
2021-10-25 09:25:25 +00:00
Tsung-Mao Fang
fce8565e5e Update logic to check two pane resolution
Prior to this cl, we checked the app bounds for deciding
app in two pane or not. However, this might be broken in some certain
sceanrios.
Currently, api will check the entire task bounds.
If the width of task bounds is larger than two pane criteria,
then we treat it as in two pane mode.

Test: Highlighted behavior works correct.
Fix: 203763572
Change-Id: Ib14851b1e3e097328874c7956bb653f50820f877
2021-10-21 21:34:17 +08:00
Jason Chiu
e65d3ab1cc Revert "Revert "Support highlightable Settings homepage menu for 2-pane"" am: 29a09e55ba am: 235353a131
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16038013

Change-Id: I4c526a0854fbe64efb834bf993c1e461b7993cad
2021-10-12 11:12:26 +00: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
d659a5271b Merge "Revert "Support highlightable Settings homepage menu for 2-pane"" into sc-v2-dev am: 1ab7ad3e40 am: 3f638ebad8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16017469

Change-Id: I8a3deba2be06113f781f399221a8463f5454ceee
2021-10-08 15:12:13 +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
630cbdc519 Merge "Support highlightable Settings homepage menu for 2-pane" into sc-v2-dev am: 9b1f593773 am: de33f1224b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/15785736

Change-Id: Ic375f9e19b1f6dbc6f70cedaa770c133fb96f652
2021-10-08 08:12:37 +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
TreeHugger Robot
0571ab940a Merge "Define menu keys for highlighting the menu entry on 2-pane UI" into sc-v2-dev am: f8bb8aced9 am: 89a745dd8c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/15756811

Change-Id: Ib9173bcda2280a683fda2e163bfc7467923d0bf2
2021-09-07 08:00:49 +00:00
Jason Chiu
7426ab7b9f Define menu keys for highlighting the menu entry on 2-pane UI
- Define an attribute for highlightable menu keys
- List the keys for Settings menu entries
- Support parsing the attribute

Bug: 199017944
Test: robotest
Change-Id: I5759bff591c79d498fffb8b2c2b57f2cb66c4421
2021-09-07 06:32:19 +00:00
Wilson Wu
9edf79741d Update settings PrimarySwitchPreference reference
To make InputMethodPreference support 2 target
reference, CL[1] move the PrimarySwitchPreference
into SettingsLib.

Change all PrimarySwitchPreference reference to
Settingslib one and remove the original one.

[1]: Idea3935d95b8d22b00ca89313e9eb3e979e4aa74

Bug: 197705032
Test: Presubmit
Change-Id: I95d111522344bb7cbdd380382e48fe60a5ebc9a2
2021-09-02 13:10:19 +08:00
Govinda Wasserman
5963ef2202 Merge "Revert "Revert "Add sensitivity configuration to long press power dialog""" into sc-qpr1-dev am: 8351a9a504 am: 26f121b673 am: f04886df8b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/15640673

Change-Id: I6a3effb0337fc1c43c29fc34992cf3b4504cb360
2021-08-20 18:02:39 +00:00