Switch and SwitchCompat are both CompoundButton.
Using CompoundButton in Java will helps migration in the future.
Bug: 306658427
Test: manual - check Settings pages
Change-Id: If2e08a9a9557ec66a3b31ef18cd2e15943098a59
Fix: 177967926
Fix: 177968295
Fix: 177967925
Fix: 177968078
Test: Run robotest and apply the widget in Settings and see the ui
Change-Id: Ie854de96e5495fa564fb8a097ed4547bbd2b10c5
Don't use focusableInTouchMode, it was causing focus/clickability issues
when the device wasn't in touch mode.
Test: manually tap button (tap works first try)
Test: turn on talkback and toggle buttons, also try toggling QS tile
while on the Settings page - doesn't reannounce state
Fixes: 158717450
Change-Id: I785d0200dd61235aa3308a8588f9ee998e7cb6e5
- 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
For a11y we want to accomplish two things:
1. Keep focus on the button if the button was just pressed. This
requires buttons in settings to be focusableInTouchMode and then request
focus when the buttons are updated.
2. When the setting is changed outside of the settings page (ie: from
Quick Settings), we don't want to re-announce on talkback the button that is
updated on the Settings page. Therefore, to maintain #1, we add a
boolean to check whether or not the updateButton change was triggered by
a click to the button preference or not. Only request focus if the
button was triggered by the settings button (and not when triggered by
other things like QS).
Test: manual
Fixes: 147992252
Change-Id: I505de0585bac38a2f59062743d9d6b75861c3d32
Only PreferenceControllers with isPublicSlice() set to true are exposed
to other apps. Others will be Settings only.
Bug: 141088937
Test: robotests
Change-Id: I2a36da4ac4bb14a4d2ac7b89ab2bb3ebf8e655f7
We only deleted On/Off string from the subtitle of night light slice in
the settings search result, and still keep On/Off string for Night Light
preference.
Fixes: 130364160
Test: visual
Change-Id: Ibe7f2752f099a4ab0d4a01a205e4e8ce0a226f55
- Remove LayoutPreference in Settings source code.
- Remove unused style, layout
- Replace old imports to com.android.settingslib.widget.LayoutPreference
- Replace old XML tag to com.android.settingslib.widget.LayoutPreference
Test: robotest, manual test
Bug: 120005054
Change-Id: I9ae1ae14a16f443e11ac5d75b6038c7c5e253844
Having consistent import order will reduce chance of merge
conflict between internal and external master
Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
Only support explicitly approved Settings Slices,
dictated by controllers which return true for the new
method isSliceable.
Updating the supported settings to a whitelist means that
the method to return all available slices must be updated,
and checking slicability when we index slices.
Test: robotests
Bug: 79779103
Change-Id: Ib2b9690cdd0036b5cc4a1cb846c52bce7c824ab9
Distinguish between settings which are permanently unavailable on
the device, and temporarily unavailable. This enables us to restrict
which setting slices are exposed in onSliceGetDescendants.
The primary changes in this CL are renaming:
"DISABLED_UNSUPPORTED" -> "UNSUPPORTED_ON_DEVICE"
to be more clear the the setting will cannot be accessed on the device, and,
adding a new enum to encapsulate settings which are currently unavailable, but
could be enabled in the future.
Also remove UNAVAILABLE_UNKNOWN. Devs should never need this enum.
Bug: 78910582
Bug: 79245656
Test: robotests
Change-Id: I58821a6cfd6134b3b351657b6edf5f74ead00643
- Convert NightDisplaySettings to a DashboardFragment
- Add preference controllers for all Night Display settings
- Change UX for activation from a toggle to a button
Bug: 73739388
Bug: 69912911
Test: make -j100 and make RunSettingsRoboTests -j100
Change-Id: Ia173f16207ba59bf57eb7546cbb1e2dbca67b063