Commit Graph

411 Commits

Author SHA1 Message Date
menghanli
057c5dc8ed Fix no show quick settings tutorial after device rotates
Root cause: Render apps below the cutout area to make the fragment recreate multiple times when the device rotates. The tutorial status is not stored correctly and try to show the tutorial when activity is finishing.
Solution: Avoid showing the tutorial when the activity is finishing and store correct tutorial status after recreate.

Bug: 239578655
Test: Manual testing
Change-Id: I3ff12e23eb971f61280ebc89014b086dc348d734
2022-08-22 15:54:05 +08:00
Menghan Li
84374522ea Merge "[Captioning preferences] Fix wrong color if default color selected" 2022-08-17 08:20:48 +00:00
menghanli
0ed28e9fd0 [Captioning preferences] Fix wrong color if default color selected
Root cause: When the default captioning color was selected, the opacity became 100% and made the opacity preference is disabled. After changing to non-default color, the opacity preference becomes enabled, but it keeps showing cached opacity in opacity preference and the preview still shows the wrong color.

Solution: Cache the latest opacity if default captioning color was selected to show the correct opacity later.

Bug: 241308551
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I7712fb25d622da62d7fb2d017e33f94ef258941b
2022-08-17 12:00:43 +08:00
Angela Wang
67efcacbc1 Fix wrong visibility of link button in a11y tutorial dialog
Root cause: the visibility of link button is not correctly set due to
the onPageSelected callback isn't called when the first page shows

Solution: Manually set the visibility of link button according to the
first tutirial page type when dialog is shown

Bug: 242141428
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityGestureNavigationTutorialTest
Change-Id: I33ed07bc7ae39d96baeeed85771c5f13e00ebf44
2022-08-15 06:01:17 +00:00
menghanli
e57125650d Unify the caption preference class naming
Bug: 197695932
Test: make RunSettingsRoboTests
Change-Id: Ice244442ad21e6d9f006d488992e9f58cf5c8fb0
2022-08-02 10:25:15 +08:00
menghanli
b9194c4eb8 Minor change for CaptionAppearanceFragment
1. Move unnecessary public variables into local variables
2. Use %s to update locale preference summary
3. Correct the test case name of CaptionPreviewPreferenceControllerTest

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I58d4d590b9b6d46c27d389217f846a780d755891
2022-07-29 14:33:43 +08:00
menghanli
0e7f366ffa Refactor CaptionAppearanceFragment to improve maintainability (5/n)
Root cause: There is a bunch of different logic of preferences in CaptionAppearanceFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out custom perference visiblity logic of CaptionAppearanceFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I53d4ca3809031587f8d6853b427774fd322a71d8
2022-07-26 12:25:56 +08:00
Menghan Li
0f6f22225c Merge changes I5409c1e8,I8ed80b44
* changes:
  Refactor CaptionAppearanceFragment to improve maintainability (4/n)
  Refactor CaptionAppearanceFragment to improve maintainability (3/n)
2022-07-25 08:42:40 +00:00
menghanli
5356e0c0a9 Refactor CaptionAppearanceFragment to improve maintainability (4/n)
Root cause: There is a bunch of different logic of preferences in CaptionAppearanceFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out preset preference logic of CaptionAppearanceFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=CaptionPresetControllerTest CaptionAppearanceFragmentTest
Change-Id: I5409c1e8a6bdfc633abc304d8cf800ea0943de78
2022-07-25 12:26:27 +08:00
menghanli
16fbfe4e14 Refactor CaptionAppearanceFragment to improve maintainability (3/n)
Root cause: There is a bunch of different logic of preferences in CaptionAppearanceFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out color and edge preference logic of CaptionAppearanceFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I8ed80b445a0d376a7e9dda87feda82420a78a9da
2022-07-25 09:18:11 +08:00
menghanli
755d691183 Refine AccessibilityGestureNavigationTutorial button type
Root cause: It is weird to display positive text for the negative button.
Solution: Change to the positive button.

Bug: 216189516
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityGestureNavigationTutorialTest
Change-Id: I8ffc6b7b5b510fab159a23af83bca4426f2dc81d
2022-07-25 08:40:24 +08:00
menghanli
236a376211 Refactor AccessibilityControlTimeoutPreferenceFragment to improve maintainability
Root cause: There is a bunch of different logic of preferences in AccessibilityControlTimeoutPreferenceFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out logic of AccessibilityControlTimeoutPreferenceFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I22e6e3b9e2f199ac1721fc069690321ad5f7a0d4
2022-07-18 15:50:52 +08:00
menghanli
3a591f9a34 Refactor CaptionAppearanceFragment to improve maintainability (2/n)
Root cause: There is a bunch of different logic of preferences in CaptionAppearanceFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out font size and type face preference logic of CaptionAppearanceFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: Ia52cd272495d49a772c981f51e190ff7d29ee14f
2022-07-15 06:55:54 +08:00
menghanli
591e44bb99 Refactor CaptionAppearanceFragment to improve maintainability (1/n)
Root cause: There is a bunch of different logic of preferences in CaptionAppearanceFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out preview preference logic of CaptionAppearanceFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: Ie8acdcb8659606ce3faf6d5532cc73ee19024725
2022-07-14 16:55:08 +08:00
Jason Hsu
1059b2d3c4 Merge "Fix test case fail in HearingAidUtilsTest" 2022-07-13 07:40:18 +00:00
Jason Hsu
20f06012f6 Merge changes Ib9cb9b6d,I85209170
* changes:
  Change updatePreferenceOrder() to onCreateView()
  Migrate to DashboardFragment in ToggleFeaturePreferenceFragment
2022-07-13 04:32:22 +00:00
jasonwshsu
86c95fc7ab Fix test case fail in HearingAidUtilsTest
Root Cause: Only happen when running `make RunSettingsRoboTests` not
happen when running `make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidUtilsTest`. It is dependency test case fail when other tests also have AlertDialog pop up alerady.

Solution: Move ShadowAlertDialog reset before running each test, not after running each test.

Bug: 238829557
Test: make RunSettingsRoboTests
Change-Id: I32da4ee87580b4f475556905f7574b211a69b29b
2022-07-13 12:30:01 +08:00
Menghan Li
ae9d768549 Merge "Add SearchIndexable to improve search coverage" 2022-07-12 22:52:12 +00:00
jasonwshsu
8145631ab8 Migrate to DashboardFragment in ToggleFeaturePreferenceFragment
Root Cause: ToggleFeaturePrefreferenceFragment becomes heavy when more and more features come in.

Solution: Mirgrate to DashboardFragment, a plugin-style preference controllers, can help us separate the preference and its logic into its own controller.

* This is the first step for the whole migration. Change to extend DashboardFragment and fill up the missing override functions.
* Reorder fields and functions to the recommended general approach.

Bug: 171272809
Test: make RunSettingsRoboTests
ROBOTEST_FILTER=com.android.settings.accessibility

Change-Id: I852091700a4b3b3c7bbdbc82f0b5dc47c087d61c
2022-07-13 00:40:55 +08:00
Menghan Li
c825a0bdc9 Merge "Remove obsoleted code: DividerAllowedBelowPreference" 2022-07-12 13:01:50 +00:00
menghanli
5209a10e9f Remove obsoleted code: DividerAllowedBelowPreference
Settings don't show divider in material design. The DividerAllowedBelowPreference is not used now.

Bug: 197695932
Test: make RunSettingsRoboTest
Change-Id: Id2b28f76c4ed8c429594bf786690499fb3f2503a
2022-07-12 11:28:11 +08:00
menghanli
ab6cbea3fd Remove obsoleted code: DividerSwitchPreference
Settings don't show divider in material design. The DividerSwitchPreference is not used now.

Bug: 197695932
Test: make RunSettingsRoboTest
Change-Id: I3fef9401b5c4a3e7d4ca6fc966f3e60c57558cdd
2022-07-12 11:23:55 +08:00
menghanli
6c85a215de Add SearchIndexable to improve search coverage
- Add searachIndex test
- Increase accessibility framework feature fragment coverage

Bug: 197695932
Test: make RunSettingsRoboTests
Change-Id: Icb7e2cf70bb0443304af7866efd48bed1d9af5bf
2022-07-12 10:51:59 +08:00
Menghan Li
67b6b5a020 Merge "Fix extra dim turns on failed in setting search bar" 2022-07-07 21:06:04 +00:00
menghanli
d95d799d86 Fix extra dim turns on failed in setting search bar
Root cause: Don't call displayPreference before setChecked called.
Solution: Don't show quick settings tooltips if preference is not ready.

Bug: 237850687
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityQuickSettingsPrimarySwitchPreferenceControllerTest
Change-Id: I52425190cce4ab3cf31be025a743bf8b212fa1f9
2022-07-07 09:04:53 +08:00
Peter_Liang
772e114438 Avoid the reset item having inconsistent alignment with the others under SuW.
Replaces the LayoutPreference with native Preference for the reset preference which is used for resettings the status of all preferences.

Bug: 232528123
Test: make RunSettingsRoboTests ROBOTEST_FILTER=TextReadingResetControllerTest,TextReadingResetPreferenceTest
Change-Id: I00719f13dc78039269ee373c6b35e12e7ff595ce
2022-07-05 15:32:37 +08:00
Menghan Li
9450735e38 Merge "Refactor CaptionPropertiesFragment to improve maintainability" 2022-06-30 03:48:33 +00:00
menghanli
1d26b6d898 Refactor CaptionPropertiesFragment to improve maintainability
Root cause: There is a bunch of different logic of preferences in CaptionPropertiesFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out different logic of CaptionPropertiesFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=CaptionPropertiesFragmentTest CaptionTogglePreferenceControllerTest
Change-Id: I7013a7aa284b587c329c2e678dbb079e553ea94d
2022-06-30 09:01:13 +08:00
menghanli
deb72e29ef Refactor CaptionMoreOptionsFragment to improve maintainability
Root cause: There is a bunch of different logic of preferences in CaptionMoreOptionsFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out different logic of CaptionMoreOptionsFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=CaptionMoreOptionsFragmentTest CaptionLocalePreferenceControllerTest
Change-Id: Ifdf3e22b027328a9f8eb13d756730ca047ece047
2022-06-30 00:16:19 +00:00
menghanli
e862d44e15 Setup AccessibilitySettingsForSetupWizard test infrastructure
Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilitySettingsForSetupWizardTest
Change-Id: I9438f770bfe2ef5f03206fc4645e77bab6328cc6
2022-06-27 08:45:08 +08:00
Menghan Li
a8474f572b Merge "Setup ToggleScreenMagnificationPreferenceFragmentForSetupWizard test infrastructure" 2022-06-26 23:44:37 +00:00
Menghan Li
4abeb53b76 Merge "Setup ToggleScreenReaderPreferenceFragmentForSetupWizard test infrastructure" 2022-06-26 23:44:24 +00:00
Menghan Li
7c37d8a6f6 Merge "Setup ToggleSelectToSpeakPreferenceFragmentForSetupWizard test infrastructure" 2022-06-26 23:44:08 +00:00
menghanli
c3163bc813 Setup ToggleScreenMagnificationPreferenceFragmentForSetupWizard test infrastructure
Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ToggleScreenMagnificationPreferenceFragmentForSetupWizardTest
Change-Id: I5715feb355bace402043f82f0eb09b96fa3810cf
2022-06-24 00:10:10 +08:00
menghanli
6965348fd8 Setup ToggleSelectToSpeakPreferenceFragmentForSetupWizard test infrastructure
Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ToggleSelectToSpeakPreferenceFragmentForSetupWizardTest
Change-Id: Ib98c9e20533939a32abc1bc15809f0edf61b46f8
2022-06-24 00:09:23 +08:00
menghanli
769450dd35 Setup ToggleScreenReaderPreferenceFragmentForSetupWizard test infrastructure
Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ToggleScreenReaderPreferenceFragmentForSetupWizardTest
Change-Id: Iae397049e156c7cb4c7a98a128653f9a8734000c
2022-06-24 00:06:52 +08:00
menghanli
bf91f212b8 Setup AccessibilityButtonFragment test infrastructure
Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityButtonFragmentTest
Change-Id: I773579c8f2dcb0f8ebf154b584f8618f2ec1968b
2022-06-23 21:37:55 +08:00
menghanli
77d5e1ec25 Remove obsoleted code: VideoPlayer
Use the LottieFiles to show illustrations for settings. The VideoPlayer is not used now.

Bug: 235454775
Test: make RunSettingsRoboTest
Change-Id: I008d399632763f60c1a4028cb50ef90d7687bd88
2022-06-09 12:09:17 +00:00
Menghan Li
d9f5550681 Merge "Setup ToggleColorInversionPreferenceFragment test infrastructure" 2022-06-07 03:21:15 +00:00
menghanli
9c9a5e4c41 Setup ToggleDaltonizerPreferenceFragment test infrastructure
Bug: 229831598
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ToggleDaltonizerPreferenceFragmentTest
Change-Id: I157a8aa63bcb6fc816b51957bd64425e710c438d
2022-06-07 08:59:20 +08:00
menghanli
a70fd0937f Setup ToggleColorInversionPreferenceFragment test infrastructure
Bug: 229831595
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ToggleColorInversionPreferenceFragmentTest
Change-Id: I1b9c6f2472a68ce7e820dae6e56a88791c4dcf2d
2022-06-07 08:10:19 +08:00
Angela Wang
35387d3d4c Merge "Add a button to the accessibility button tutorial dialog that links directly to the settings page." 2022-05-23 07:00:33 +00:00
Edgar Wang
24654a3d61 Merge "Update learn more string of FooterPrefernce" into tm-dev 2022-05-20 23:13:07 +00:00
Angela Wang
57d13ad018 Add a button to the accessibility button tutorial dialog that links directly to the settings page.
When the accessibility button appears, some users don't know how to
control it. Add a button to the tutorial dialog that links directly to
the settings page to help users get more information.

Bug: 183977141
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityGestureNavigationTutorialTest
Change-Id: I08d7e5b0771b6bf99f7753ccbcf2e7400227ddc5
2022-05-20 05:31:55 +00:00
jasonwshsu
acd3f94fde Pop up pairing another ear dialog when detecting hearing aid is a set
* Pop up dialog in 'Connected deivce' page and 'Accessibility -> Hearing
  aids' page

Bug: 225117454
Bug: 226511985
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidPairingDialogFragmentTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AvailableMediaDeviceGroupControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityHearingAidPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidUtils

Change-Id: I34a1e3ac680a7efe97dc501bfbe93f840ad16364
2022-05-14 22:16:22 +00:00
Jason Hsu
c3bbb709b9 Merge changes from topic "hearingAidsInT" into tm-dev
* changes:
  Add 'Live Caption' preference for hearing aids device in Device details page
  Update summary in Accessibility -> Hearing aids
  Header for hearing aids now listed in one summary
2022-05-14 00:24:44 +00:00
jasonwshsu
82d3bb2b73 Update summary in Accessibility -> Hearing aids
Bug: 225117843
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityHearingAidPreferenceControllerTest
Change-Id: I19c08474349e9ae98cd3f296ba8423f920d55fcf
2022-05-14 02:06:45 +08:00
Edgar Wang
68d12953e7 Update learn more string of FooterPrefernce
Replace FooterPreference#SetLearnMoreContentDescription() with
FooterPreference#SetLearnMoreText().

This is a requirement: All links, controls, and buttons should
also have comprehensible text or tooltip text, so users can identify its
purpose, independent of context, such as when using the URL list from
TalkBack’s local context menu.

Bug: 215045903
Test: manual & robotest
Change-Id: Ib657ba336c5688c1434a58611dea3891001afe14
2022-05-13 08:13:36 +00:00
Peter_Liang
5bdc11a00d Updates the padding of the reset button to meet for SetupWizard style.
Goals: Call the function LayoutStyler#applyPartnerCustomizationLayoutPaddingStyle to dynamically adjust the padding of the view.

Bug: 231511522
Test: manual test
Change-Id: Idd4a00c004eca8ec9699edeabe85bbee4bd49af9
2022-05-13 09:37:13 +08: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