In order to move the preference and its logic cleanly, created a
controller object that encapsulates the preference/click handler.
Bug: 31801428
Test: RunSettingsRoboTests
Change-Id: I332384e20fbf0e21d2f3becb531d97b20f7f7ef1
- Use activity-alias to define which activity shows up in what category.
We choose activity-alias because it creates a reference to UI we need
without having to define a new set of intent-filter and/or category
keys. This reduces maintainence in the long run. We should merge
metadata from activity-alias into targetActivity when cleaning up.
- Created new System dashboard activity that hosts all system category
tiles dynamically, and a static tile for checking system update.
Bug: 31781480
Test: manual
Test: make RunSettingsRoboTests -j40
Change-Id: Ia2d762e3e1aebd17423a395c5e6c286dc3326492
To avoid BadParcelableException when reload the activity after it
is killed by OS.
Bug: 31707097
Test: make SettingsTests && adb install -r \
${OUT}/data/app/SettingsTests/SettingsTests.apk && \
adb shell am instrument -w \
'com.android.settings.tests/android.support.test.runner.AndroidJUnitRunner'
Change-Id: Ic8f20d9e2d236f0bea96071a88fbc6e7ba856f54
1) Added a trampoline activity to display SET_NEW_PASSWORD intent.
2) On devices that have fingerprint sensor and have no enrolled fingerprint,
ChooseLockGeneric handles the SET_NEW_PASSWORD intent by providing
fingerprint + {PIN/PATTERN/PASSWORD} and skip fingerprint options.
Test: See below
1) Auto
make RunSettingsRoboTests
2) Manual
a) Fingerprint + pattern
i) $ adb shell am start -a android.app.action.SET_NEW_PASSWORD
ii) Click Pixel Imprint + Pattern.
iii) Set a pattern lock.
iv) Can enroll a fingerprint.
b) Pattern
i) $ adb shell am start -a android.app.action.SET_NEW_PASSWORD
ii) Click Continue without Pixel Imprint
iii) A list of unlock options, without fingerprint option, is shown.
vi) Select and enroll a pattern lock
c) Has an existing password
i) $ adb shell am start -a android.app.action.SET_NEW_PASSWORD
ii) Setting app asks for password input.
iii) Enter password and click "Continue without Pixel imprint".
vi) No password is asked. A list of unlock options, without fingerprint option, is shown.
v) Select and enroll a pattern lock
d) Work profile
i) Create a work profile
ii) adb shell am start --user x -a android.app.action.SET_NEW_PASSWORD. X is the work profile user id.
iii) Click Pixel Imprint + Pattern.
iv) Set a pattern lock.
v) Can enroll a fingerprint.
Bug: 23017051
Change-Id: I6384bbffb72a5d3a83972da7474532746e4d06b9
When preference screen is created all prefence goes through
SharedPreferenceLogger once. We don't want to log it as preference
change because it's just initial display. Subsequent preference logger
calls should result in logging.
Bug: 30914916
Test: make RunSettingsRoboTests
Change-Id: Icaee9137c55555f4db7839ff0381a13ccd420190
1. Reverting the changes for Display->Ambient Display; this setting
will control incoming notification pulse.
2. Added 2 separate entries in gestures settings to control pick up
and double tap gestures-triggered pulsing for Ambient Display.
3. Added automated tests to verify the preference initializes to the
correct default value, and also verify that toggling the preference
updates the corresponding settings correctly.
Test: make SettingsTests
Bug: 30595437
Change-Id: I125bf75fc4ccfea126a00ffae4207fcb789f487a
Bug: 31664539
Test: make RunSettingsRoboTests
This allows different metric clients to listen to these events.
Change-Id: Ib19c8099b16ff78d9aa4901278e0ff33eeefd4a8
Bug: 30455784
Test: make SettingsTests; run the instrumentation.
Change-Id: I860192c1c20fcaec2a5cbcdc085ff01dafa7351a
(cherry picked from commit 7f075a3c41)
- Renamed MetricsFractory to MetricsFeatureProvider, and access it using
FeatureFactory.
- Instead of containing exactly 1 logWriter, MetricsFeatureProvider now
contain a list.
- Added OnAttach event in Lifecycle. This is needed when a mixin
requires Context to initialize itself.
- Updated tests.
Bug: 29575437
Test: make RunSettingsRoboTests
Change-Id: I7cc1528b9a744cd40088701e2bd115f41a8bf744
When go back from RTL language, user should be navigated to the
previous setting tab.
Bug: 31145366
Test: make RunSettingsRoboTests
Change-Id: I2f2ec727f9737ea0e52dac9950c8af34559e3d9a
By breaking the tests into two pieces, we avoid any race conditions
with adding the fragment and also unit test the two components
separately.
Bug: 31370315
Test: m RunSettingsRoboTests
Change-Id: I9761b0b00141d3ce481a7edb5d8145c645c51da7
The summary for Sound settings was not
descriptive enough when the volume was set
to 0% so additional strings were added. Now
it will change let you know the status
of the ringer and vibration settings when
at 0% volume. Espresso tests added to test
that text is properly updated in each of
these states.
Test: make SettingsTests
Bug: 31099179
Change-Id: Id49e2d0c4b7ac0f17efcdaf31de48d5eb678ca46
Bug: 30681529
Test: RunSettingsRoboTests
ObservableDialogFragment can be used as host of VisibilityLoggerMixin,
allowing us to log visibility change for all dialogs easily.
Change-Id: I973db929d8494d3756584ca60df3b2e87d96c757