Commit Graph

30 Commits

Author SHA1 Message Date
Chaohui Wang
9f6eaf8624 Fix flicker in Dark theme
Currently, when schedule sets to "Turns on at bedtime", the footer will
show a slid up animation when entering the page, this is because the
"Start time" & "End time" preferences are hidden in onResume().

This is because these 2 preferences always return AVAILABLE in
getAvailabilityStatus(), and manually update visibility in
refreshSummary(), which is called each time updateState() is called.

Usually the controller not set the visibility explicitly, but return
CONDITIONALLY_UNAVAILABLE in getAvailabilityStatus() when they want to
hide the preference.

Because getAvailabilityStatus() is called in onCreate(), by using this,
we can fix the flicker.

Fix: 234399017
Test: visual & robo test
Change-Id: I4cb7dd95d2985bd1ca4c8cb30aaebdc21a5415f8
2022-05-31 19:03:54 +08:00
Steven Ng
89f5e2e497 Show "Turns on at bedtime" in Dark theme setting based on feature flag
Test: atest SettingsRoboTests:com.android.settings.display.darkmode.*
Bug: 217866453
Change-Id: Ic40975d4506f812790768339e48441a048529df3
2022-02-08 11:45:39 +00:00
Steven Ng
7f0cc14af8 Replace hard-coded bedtime action with Settings.ACTION_BEDTIME_SETTINGS
Test: atest SettingsRoboTests:com.android.settings.display.darkmode.*
Bug: 216645903
Change-Id: I3c3a00fa53528056538ab1ae34c011b4b44b3fdf
2022-02-01 16:56:17 +00:00
Steven Ng
3859251be0 Add dark theme custom type into the dark theme settings page
Also fix some test cases.

I'd prefer using Robolectric shadows rather than mocking Android
framework classes. However, I can't do that in this CL due to the
lack of multiple shadow classes support.

Test: make RunSettingsRoboTests -j56
      ROBOTEST_FILTER=com.android.settings.display.darkmode.*
Bug: 215182463
Change-Id: If557d2933927a5dd0fadd3f6db6bb6f0ab7dd5ee
2022-01-26 16:15:52 +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
Stanley Wang
10b7a7d483 Use MainSwitchPreference to replace the button style switches.
Fix: 177967926
Fix: 177968295
Fix: 177967925
Fix: 177968078

Test: Run robotest and apply the widget in Settings and see the ui
Change-Id: Ie854de96e5495fa564fb8a097ed4547bbd2b10c5
2021-02-02 08:39:37 +00:00
Tsung-Mao Fang
acab1a0364 Only show the schedule text for the night display and dark theme
In Android S design, night display and dark theme only show
schedule text for summary.

- Rmove redundant string resource.
- Remove redundant method in night display formatter.
- Refactor the code in dark mode preference and night display
controller.

Test: See the correct behavior in screen.
Fix: 174964139
Change-Id: I658b3073a0a6ed83f589103999c711e5430eaeb7
2021-01-07 16:17:20 +08:00
Lucas Dupin
1d663e72ce Merge "Time for dark theme doesnt format 24 hr correctly" into rvc-d1-dev am: e899f749a1 am: 5f44b7cf54 am: 6430a4b88f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/12337522

Change-Id: Iac01c66216d6ab98654b97f33505d9f60714c78e
2020-08-12 22:24:45 +00:00
Jay Aliomer
b569dfdac8 Time for dark theme doesnt format 24 hr correctly
Fixes: 163048376
Test: Manual
Change-Id: Ia6c2633408670656c2b42bfb724aaf900561682e
2020-08-07 23:43:09 +00:00
govenliu
b70ddb9df7 [Wi-Fi] WiFi Settings inclusive language fix plan phase 1
Replace WiFi related terms which contain Master wording.
Goal: Create a fixit for Android Platform to reduce the use of non-inclusive language for all code.

Bug: 161425297
Test: make RunSettingsRoboTests -j or
make RunSettingsRoboTests ROBOTEST_FILTER=DashboardFragmentTest
make RunSettingsRoboTests ROBOTEST_FILTER=WirelessDebuggingPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=AutomaticStorageManagementSwitchPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=AllInOneTetherPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=TopLevelNetworkEntryPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=PrimarySwitchPreferenceTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiPrimarySwitchPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherPreferenceControllerTest

Change-Id: I9395c50e092e124016609f88f7c8151554a0d874
2020-07-21 20:56:22 +08:00
Jay Aliomer
57cc7d01ae Incorrect localization of dark theme custom time
Fixes: 154361883
Test: manually select dark theme custom time and make sure it matches
locale

Change-Id: I2a918b4b2f5aad6b04d3b0318bbca25e82dfae78
2020-05-28 12:00:17 -04:00
Jay Aliomer
dba11e82b5 Revert "Revert "Unable to select twilight scheduling after enabling location""
This reverts commit 782438347b.
Bug: 153115261
Reason for revert: fixing tests

Change-Id: I497a2b83cbe3eaee5f5fb3eb4df73618130fc6e2
2020-05-14 15:14:18 +00:00
Edgar Wang
782438347b Revert "Unable to select twilight scheduling after enabling location"
This reverts commit 9073b2f968.
Bug: 153115261
Reason for revert: this CL make Settings robolectric test fail at com.android.settings.display.darkmode.DarkModeScheduleSelectorControllerTest

Change-Id: I3f1ba35f55f2905b10ca97149268be6074780eda
2020-05-13 03:58:36 +00:00
Jay Aliomer
9073b2f968 Unable to select twilight scheduling after enabling location
Test: run settings tests
Change-Id: I74945dd69f0da9733ee0a5e27ab63852df9544e9
Bug: 153115261
2020-05-11 16:31:42 +00:00
Tsung-Mao Fang
ae9dc54c56 Remove duplicate result for dark mode
We only keep the one in display settings.

Test: robo test and search dark mode in settings search.
Fix: 155735315
Change-Id: I71041f473944e854ef4601063658021bb9411069
2020-05-05 21:08:37 +08:00
Jay Aliomer
41ee5663ab Twilight Location off text
When location is disabled, dark theme and night light
will show text and button to take the user to location page

Fixes: 153115261
Fixes: 153115618
Test: manually turn off location and observe view
Change-Id: I24be2f26a4c9e1b3f2a17e83e6f91cb7685f2e28
2020-04-29 23:14:32 -04:00
Jason Chiu
819abf7f87 Refine metrics log in infrastructure
- Add interfaces to set/get metrics category in BasePreferenceController
  for descendants having a chance to get it.
- Set metrics category in DashboardFragment
- Automatically log metrics in onPreferenceChange of
  TogglePreferenceController
- Add support for TwoStateButtonPreference in TogglePreferenceController
  to make the preference generic

Bug: 137559984
Test: robotest
Change-Id: Ia7e0d24a3db1991b18e0286d9894570fa71247a3
2020-04-07 14:08:39 +08:00
Jay Aliomer
59c03c23b7 Turn on location dialog when using twilight scheduling
Night light and Dark theme scheduling does not work when in
twiligth mode. For the reason, we added a dialog to inform the user
that they need to turn on location services first.

Fixes: 153115618
Fixes: 153115261
Test: manual
Change-Id: Iea51018a7caba5c0ec93e058ee047d067bc03867
2020-04-03 03:45:20 +00:00
Jason Chiu
26343b82ee Add metric logs for special cases in Display and Battery page
Bug: 137559984
Test: robotest
Change-Id: I60f6237ac2c533306879f46ee4c25d54002cf0e9
2020-03-26 11:31:39 +08:00
Sunny Shao
1de4c009ea Fix the button display problem in Dark theme page
- Dark theme is disabled when Battery save is on.
- Let dark theme page not be searchable when Battery save is on.

Fixes: 150443799
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.display.darkmode
Change-Id: I2674499dd64333825765f70ed1f31dcb83e1b895
2020-03-02 11:59:28 +08:00
Jay Aliomer
a49bb44b10 Dark theme time format
When changing device language, dark theme does not
change the AM/PM format to the proper new language setting

Test: all settings tests

Fixes: 149381251
Change-Id: I68763e24988837f917adad39f82b90e79573fd07
2020-02-18 15:14:51 +00:00
Jay Aliomer
e1a2ea3fab Inaccurate auto dark theme time
When changing the start/end custom dark theme time,
The time in the display settings page does not change

Test: settings test

Fixes: 148150281
Change-Id: I4e54797df14cb926f59d50c26e8da160b356f2c0
2020-02-03 17:25:03 -05:00
Jay Aliomer
c31c35fb19 Custom dark theme scheduling
allows the use to set the start and end automatic dark theme
activation within a day.

Test: run all settings tests
Change-Id: If96fc050159724d553acb09c2da4fab1d5ff519f
2020-01-14 16:31:29 -05:00
Sunny Shao
7f086c0e81 Refine the DarkModeScheduleSelectorController
- move the initial part to the displayPreference.
- use indext compared instead of the direct string compared.

Bug: 141567787
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=ROBOTEST_FILTER=com.android.settings.display
Change-Id: I49ccc248bc1f5f9659f8543793ea502ac3e2ea6f
2019-12-17 13:15:11 +08:00
Automerger Merge Worker
833c578b01 Battery saver mode should disable dark mode modification am: 5fb68ae95d
Change-Id: I9b4b1dace76a6194fafe27e624465c3c05823bb1
2019-12-03 19:34:32 +00:00
Jay Aliomer
f4bc80c45c Battery saver mode should disable dark mode modification
disable toggle options and disable the dark theme drop down selection

Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.DarkUIPreferenceControllerTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeActivationPreferenceControllerTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeObserverTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeScheduleSelectorControllerTest"

Fixes: 	145098277
Fixes: 145297188
Fixes: 	145254016
Change-Id: I5c81a295810cc2d9a45657978104647e9c15da46
2019-12-02 18:19:52 +00:00
Jay Aliomer
a377b5c4aa Fix Master: Add settings for scheduling dark theme
Adding a settings page similar to night light for Dark theme. it will allow the user to schedule
dark mode from sunrise to sunset

Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.DarkUIPreferenceControllerTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeActivationPreferenceControllerTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeObserverTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeScheduleSelectorControllerTest"

Fixes: 141567787
Change-Id: Iee5d020ac6ea093be712a4f191d4601c9d4617fa
2019-11-25 18:03:29 -05:00
Jay Aliomer
53ad4fedc6 Revert "Revert "Add settings for scheduling dark theme""
This reverts commit 50c0fa136c.

Reason for revert: Fixed the error which is code incompatibility
Test: run all settings tests
Change-Id: I8f05b50f8198c4b2565bb9b6f62ddda5029c8365
Merged-In: I8f05b50f8198c4b2565bb9b6f62ddda5029c8365
Bug: 141567787
2019-11-22 20:58:23 +00:00
Preston O'Neal
50c0fa136c Revert "Add settings for scheduling dark theme"
This reverts commit 7141b142df.

Reason for revert: This is breaking builds on git_qt-qpr1-dev

Change-Id: I7766826d3fc86a12fc8411b027a52eceb5a66019
2019-11-21 22:09:53 +00:00
Jay Aliomer
7141b142df Add settings for scheduling dark theme
Adding a settings page similar to night light for Dark theme. it will allow the user to schedule
dark mode from sunrise to sunset

Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.DarkUIPreferenceControllerTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeActivationPreferenceControllerTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeObserverTest" && \
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.display.darkmode.DarkModeScheduleSelectorControllerTest"

Fixes: 141567787

Change-Id: I3094b655c04f59c23a95162a1be5ee8260e28a48
(cherry picked from commit 0828e6be9c)
2019-11-21 20:07:24 +00:00