Bug: 197730930
Test: Open Settings, go to Display -> Display size and text -> Display size, change the value, fold/unfold the device, see that the value persists.
Test: DisplaySizeDataTest
Test: atest ScreenResolutionFragmentTest
Test: ScreenZoomSettingsTest
Change-Id: I3d6858a9b20798c2ad3b12a66db3484491682691
Merged-In: I3d6858a9b20798c2ad3b12a66db3484491682691
For devices that don't support wallet, don't even show the setting in
a disabled state, which can cause confusion and lead the user to
believe they can enable it somehow.
Fixes: 251089510
Test: WalletPrivacyPreferenceControllerTest
Change-Id: I5d60957f24712bb4d75e72fa5f64cab35b6d6a5f
KeyguardQuickAffordanceProvider has started to be used for more than
just lock screen shortcuts. This collection of CLs updates its name,
authority, and table schema to become more generically about "system UI
customization".
Fix: 262879277
Test: manually verified Settings > Display > Lock screen shows the
"shortcuts" item
Test: manually verified that the Wallpaper picker properly renders the
preview and can change the quick affordances
Test: manually verified that system UI displays the right lock screen
shortcuts
Change-Id: Idc0765a8c3fe50c82689d2ca7f9d19b41a62baf2
Merged-In: Idc0765a8c3fe50c82689d2ca7f9d19b41a62baf2
This change makes it that the ScreenSaverPreferenceController extends
BasePreferenceController so that it can be readily used and pointed to
from an xml file.
Bug: 261627295
Test: atest ScreenSaverPreferenceControllerTest
Change-Id: I95487f2f49a23422fff46f30b0cfa287582a547b
The flag is enabled by default. And will be disabled on foldable
devices.
Test: locally
Bug: 236249360
Change-Id: I8c90533f6011531a4f00af5f2514579638604067
Doing this will open the correct screen when clicking on "Shortcuts"
under Settings > Display > Lock screen.
Fix: 258471384
Test: manually verified that clicking on it opens the wallpaper picker
experience with the correct page showing.
Change-Id: I627bcb9c9fac7a834f1c9d9cb36b73a6c8817af5
In ag/20427460, we made ControlsTrivialPrivacyPreferenceController, which controls this setting, be UNSUPPORTED_ON_DEVICE if customizable lock screen quick affordances are enabled.
This wrongly removes this setting from the Settings app and there is no new UI where the user can control that anymore. What this means is that, once users upgrade to an Android build with our feature, they will forever be stuck with whatever they last chose for "Control from locked device".
This CL brings that back but changes the behaviour a bit such that, if
the quick affordances feature is enabled, this setting is never
disabled.
Fix: 260722836
Test: Unit tests added. Manually verified that the setting is visible
and enabled if the feature is enabled, even if the current selection
does not include the Home quick affordance and that if the feature is
off, the setting is visible but disabled if the main setting is off (old
behaviour unchanged).
Change-Id: I2e53123b3b7a2896699aeaa13b0c7d5a1c8a9c92
This is in Display > Lock screen. It reads "Buttons" and the summary
text below it is a comma delimited list of the names of the
currently-selected quick affordances.
Fix: 256662519
Test: Manual verification that the lock screen and wallet
items are gone and the new item is visible and clicking it opens the
Wallpaper & style settings screen
Change-Id: If3746b5d0eb8c61edb9378cdb217ca248b999944
Dreams and docking often refers to "user zero" or "system user".
But more generally, the special user for dreams or switching-to-on-docking
need not be user 0, and in fact won't be in certain modes. So this needs updating.
Test: the files mentioned in the topic
Bug: 257333623
Change-Id: If068aa79a770bed4abf3f7ca1859a95cd1eb4ecd
Merged-In: If068aa79a770bed4abf3f7ca1859a95cd1eb4ecd
Screen timeout summary string can be null if there is no matching candidate, so we need a fallback summary here to avoid showing unexpected summary text.
Bug: 252340891
Test: manual
Change-Id: I939ae97a50063b2ffe84029135c3f340aeedf4c7
Change the screen resolution will cause re-layout the screen, so the focus will back to the first view. Before we actually set the screen
resolution, send an event to the AccessibilityManager and set what it
should say when the user selects the unselect option. Therefore TB will
say "selected" before the screen refreshes.
bug: 229352892
Test: Enable/disable Talkback and check RRS app behaivor. It should read
"selected" after user choose one un-selected option.
Change-Id: If14ed3685f85962d4e4b1d4961216c6ca5d5f0f8
Since Android T+, app has to assign an action name for opening a
external app page.
Test: Manual test wallpaper search result and can open.
Fix: 239867167
Change-Id: I4579aaf6e831ff82721c958e6b91ede4cabda2c8
Define a setting string for putting data for suez/settingstats.
Bug: 234035619
Test: Manually check ScreenResolution ap in Settings can work normally.
Merged-In: Ib4622490b0f63139b47f242ebcae916edf291cea
Change-Id: Ib4622490b0f63139b47f242ebcae916edf291cea
Make sure previous setting has been completed before we set current
resolution. Register a display listner to listen onDisplayChanged
callback. So that we can know when display resolution change completed.
Bug: 232440665
Test: Switch resolution quickly and check display situation.
Change-Id: I1460c1db191250d8e51dd639cd969e4323f71abd
When the density is overridden, the new density remains the same during
the resolution changes, which causes improper DPI on the screen. The
patch recalculates the suitable overridden density when the resolution
is changed and applies the new settings when the new resolution takes
place.
Bug: 233698163
Test: Switch resolution with customized density
Change-Id: I0914de61da0ab3b78380b355f47dbd3052079492
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
The usage of this dialog is removed in
Change Ie2cf147de53385ae0c626c8472306f1b85317686
But this dialog is created (but not show) in DarkUIPreferenceController
each time dark mode toggle is turned on by user.
So clean this up.
Fix: 234419979
Test: make Settings
Change-Id: Icdc9d7a4fb77dc8b2a3f1a9d8e3f40fc0af4917d
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
On devices where non-system users are not allowed to dream, disable the
screen saver setting when the current user is not the system user.
Bug: 213906883
Test: atest ScreenSaverPreferenceControllerTest
Test: Manually with the following steps:
Step 1: On a device with the config setting
config_dreamsOnlyEnabledForSystemUser set to false, make sure that
non-system users can still access the screen saver setting.
Step 2: On a device with the config setting
config_dreamsOnlyEnabledForSystemUser setting is set to true, make sure
that non-system users can not access (or see) the screen saver setting.
Step 3: Make sure that system users can still see the screen saver
setting on a device where config_dreamsOnlyEnabledForSystemUser is set
to true.
Change-Id: I7e167ed5a1ea183c725ba89a57b8d0b372064b82
Controllers are automatically bound to a lifecycle if registered in the xml file. Manually binding a lifecycle can cause multiple receivers to be unregistered/registered. Removing the manual binding will prevent this case from causing a potential exception.
Bug: 227762968
Test: none
Change-Id: I9c8ddc6f82b19cd4a9c8a4aec3c9c744935cd542