Commit Graph

18434 Commits

Author SHA1 Message Date
Vania Januar
5b52104be1 Show Scribe toggle in Stylus settings only if supported by current IME.
This also sends the user to the Scribe settings activity if
a settings activity exists for the current IME.

Bug: 255732419
Test: StylusDevicesControllerTest
Change-Id: I955a0f5a017b247e7623d66613e09dc0f7256ff2
2023-01-10 17:44:14 +00:00
Lucas Silva
600741c78c Only show communal settings to the primary user am: e33639f117
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20859979

Change-Id: Ia66b6011f37412bbbdf783b3d5f844446f4fc1f4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-10 17:22:02 +00:00
Zaiyue Xue
f080429ddb Refactor processBatteryDiffData() from DataProcessor to BatteryDiffData class.
So that only hourly battery diff data needs purgeFakeAndHiddenPackages()
and combineBatteryDiffEntry(). This is also easy to set hourly threshold
in the next cl.

Bug: 264840285
Test: manual
Change-Id: Ie0bc6d53f96285285019dd83c1f39305eca79c71
2023-01-10 20:40:13 +08:00
Vania Januar
f640bb1e6d Merge "Show None default app in stylus preference if no Notes holder." 2023-01-10 12:22:22 +00:00
Zaiyue Xue
7f3ff17bcf Refactor PowerUsageFeatureProvider: Cache the config set to avoid generating the set again.
Bug: 262802531
Test: manual
Change-Id: I61b36e4e057c432d814aa104a37f0e0d552720cb
2023-01-10 19:42:09 +08:00
Jason Hsu
e0301f7aa4 Merge "[hearing devices page] Launch 'Hearing decice controls' to Accessibility hearing device page." 2023-01-10 09:05:55 +00:00
Milton Wu
5d7bab1c2a Refine get props inside FingerprintRepository
FingerprintManager::getSensorPropertiesInternal() might return an
incorrect value if it's done too soon. Change to use
FingerprintManager::addAuthenticatorsRegisteredCallback() in
FingerprintRepository.

Bug: 264827022
Test: atest FingerprintRepositoryTest
      FingerprintEnrollIntroViewModelTest
      FingerprintEnrollmentViewModelTest
Change-Id: I68dd3ec1182662cc55aaa8be77a62245ab29cd54
2023-01-10 16:04:00 +08:00
Bonian Chen
817786c698 Merge "[Settings] Support of Primary IMEI feature" 2023-01-10 05:39:15 +00:00
Milton Wu
dc8f967315 Merge "Refactor FingerprintEnrollFindSensor" 2023-01-10 02:44:35 +00:00
Milton Wu
3be7385d90 Refactor FingerprintEnrollFindSensor
Refactor FingerprintEnrollFindSensor to 3 pages for different sensor
types, and apply MVVM for them.

Bug: 259664912
Bug: 260957195
Bug: 260957816
Test: atest FingerprintRepositoryTest FingerprintEnrollmentActivityTest
      AutoCredentialViewModelTest FingerprintEnrollIntroViewModelTest

Change-Id: Iace790952567cac13e61e5175e90555d4da7dfe2
2023-01-10 07:52:37 +08:00
TreeHugger Robot
25e8018d78 Merge "Fix settings bug (pt 2)" 2023-01-09 22:25:22 +00:00
Tom Hsu
8e631a1905 Merge "[Regional preferences] Add numbering system page." 2023-01-09 17:25:10 +00:00
Victor Truong
9246bceb5d Merge "Change screensaver option to be available to MainUser." 2023-01-09 17:22:25 +00:00
Lucas Silva
e33639f117 Only show communal settings to the primary user
Fixes: 264284347
Test: flashed device, and verified settings don't appear for secondary
user. Setting still appears for primary user
Test: atest CommunalPreferenceControllerTest

Change-Id: I6686ce4dbc7d708a93131620ae93c5e0dc323995
2023-01-09 15:15:27 +00:00
tom hsu
6461d16c59 [Regional preferences] Add numbering system page.
- Add language selection page
 - Add number format page
 - Refactor some part for readability.

Bug: b/247073388
Bug: b/246929960
Test: atest pass

Change-Id: I617698a3146b6e461467a97de8c08f4c4dc6e7f2
2023-01-09 22:54:57 +08:00
TreeHugger Robot
1b4428ea3d Merge "[Battery usage U] [UI] Show screen time in the battery usage app list items" 2023-01-09 11:33:10 +00:00
TreeHugger Robot
95b9ca6573 Merge "Revert "Fix the inverted logic to judge whether an app is system app."" 2023-01-09 09:39:02 +00:00
Zaiyue Xue
48a1dacc39 [Battery usage U] [UI] Show screen time in the battery usage app list items
https://drive.google.com/file/d/1N2yrra6cga6CRIXzxTGhctcxwN47lE89/view?resourcekey=0-qlw1a78Ph-gSfXFAHKoumQ
https://drive.google.com/file/d/1joSI3YL8dn0rRW1Ywyte7MUy_CTDFS2p/view?resourcekey=0-VsgaqSi2YUfn6ImZEOBH-g

Bug: 258120710
Test: manual
Change-Id: Id22d2490d0bffeb8b7d2e0941bcdb4e3d352e966
2023-01-09 17:26:56 +08:00
lbill
b54ca63996 3-1/ Impl FoldProvider.FoldCallback for Face enroll activities
Create a mechanism to allow OEM config posture guidance with
'config_face_enroll_guidance_page', and customize the config
'config_face_enroll_supported_posture' with standard postures
         0 : DEVICE_POSTURE_UNKNOWN
         1 : DEVICE_POSTURE_CLOSED
         2 : DEVICE_POSTURE_HALF_OPENED
         3 : DEVICE_POSTURE_OPENED
         4 : DEVICE_POSTURE_FLIPPED
For example, if we set 1 for the device, then device only
allow to enroll face in closed(folded) state, if device do
not in the allow state, we will prompt specific guidance
page activity defined in config_face_enroll_guidance_page.

At this stage , we only integrate 2 states OPENED/CLOSED through
ScreenSizeFoldProvider and register for onFoldUpdated() callback
- isFold(DEVICE_POSTURE_CLOSED): finish posture guidance
- !isFold(DEVICE_POSTURE_OPENED): launch posture guidance
- onActivityResult : reset mOnGuidanceShown false

1. Fix A11y lottie animation bug
2. Impl FoldProvider.FoldCallback
3. Register callback to ScreenSizeFoldProvider
4. Integrate back stack, skip, cancel events
   - Back key : RESULT_CANCELED
   - Skip btn : RESULT_SKIP
   - Posture changed : RESULT_FINISHED
5. Set single instance for relative activities
6. FaceEnrollFoldPage listen for onConfigurationChanged()
7. Add empty face_posture_guidance_lottie.json for overlay

Test: atest SettingsGoogleUnitTests
Test: m -j SettingsGoogleRoboTests RunSettingsGoogleRoboTests
Test: m RunSettingsRoboTests ROBOTEST_FILTER= \
      "com.android.settings.biometrics.face.FaceEnrollEducationTest"
Test: m RunSettingsRoboTests ROBOTEST_FILTER= \
      "com.android.settings.biometrics.face.FaceEnrollIntroductionTest"
Test: Manual launch security settings face enroll, unfold device
and observe posture guidance showing fullscreen on top
Test: Fold device ensure the posture guidance activity finish
Bug: 261141826
Fixes: 231908496

Change-Id: Ib9f43f82f7d19f3f187c2f6f8984e76cd843afbc
Merged-In: Ib9f43f82f7d19f3f187c2f6f8984e76cd843afbc
2023-01-09 08:28:26 +00:00
Milton Wu
8e57808247 Fix face enroll introduction crash after 10mins
When requestGatekeeperHat() throws exception in FaceEnrollIntroduction
page, remove gk_pw_handle and recreate activity to trigger confirmLock.

Test: robotest for FaceEnrollIntroductionTest
Bug: 234437174
Change-Id: Ie1dd6f36e4deb3f776e3b39acd165fc47d04f526
Merged-In: Ie1dd6f36e4deb3f776e3b39acd165fc47d04f526
2023-01-09 07:38:59 +00:00
Zaiyue Xue
9a35838436 Revert "Fix the inverted logic to judge whether an app is system app."
This reverts commit 814eff1c24.

Reason for revert: The original logic is right.

Change-Id: I2aee0f9ab13c60d843e91056de9d409a1d84b9d4
2023-01-09 07:30:35 +00:00
lbill
bbca300b30 5/ Refine SetupChooseLockPattern layout by design
Since the SetupChooseLockPattern include header icon
header title, header sub-title, pattern state description,
LockPatternView and FooterBar, there was a limited room
for LockPatternView especially in the confirm steps which
both header title and pattern description occupy 2 lines space.
Hance the PatternView size used to inconsistence in-between
1st draw and 2nd confirm draw, besides it's visual looks
jumping and small on some device which have smaller display.

This solution includes 3 changes:
1. Organized the pattern view message to leverage
   header sub-title view, then we can resever more space.
   (Set minHeight=2 for sub-title)
2. Set screen_lock_options button visibilty to GONE when
   the stage in 2nd confirmation.(Previously it's INVISIBLE
   and reserve additional space)
3. Let LockPatternView align bottom of FrameLayout to prevent
   the view juming and flicker.
4. Clean up unused forAnyBiometric flag and code.
5. GlifLayout.getDescriptionTextView() == mHeaderView
   Need setDescriptionText() to make the view from GONE -> VISIBLE
6. Polish the stage flow and ensure IntroductionStage show
   correct message
7. Add ChooseLockPattern into embeded activity white list
   Force show ChooseLockPattern in fullscreen in case the Pattern
   view truncated in `NeedToConfirmStage` where the title showing
   2 lines and push pattern view down, and get bad UX in the
   device which integrate a shorter display.
8. Add test cases for all stage and polish legacy test code.

Test: make RunSettingsRoboTests ROBOTEST_FILTER= \
     "com.android.settings.password.SetupChooseLockPatternTest"
Test: make RunSettingsRoboTests ROBOTEST_FILTER= \
     "com.android.settings.password.ChooseLockPatternTest"
Bug: 249974175
Bug: 260027850
Change-Id: I868af9b14ba99af5d78a05f6c2a570ccc07aea15
2023-01-09 05:30:33 +00:00
Bill Lin
3072c2a571 Merge "5/ Refine SetupChooseLockPattern layout by design" 2023-01-09 04:46:04 +00:00
Bill Lin
5f1fcab0fa Merge changes from topic "tuscany_settings_posture_support"
* changes:
  3-1/ Impl FoldProvider.FoldCallback for Face enroll activities
  2-1/ Add config_suw_support_face_enroll to customize SUW face enroll flow
2023-01-09 04:26:50 +00:00
TreeHugger Robot
3eabebb730 Merge "Change all the system items unclickable in battery usage list." 2023-01-09 02:47:57 +00:00
Jason Hsu
72fb811bc8 Merge changes from topic "hearing_shortcut"
* changes:
  [Hearing device shortcut] Provide a way to open accessibility hearing device settings via intent
  [Hearing device shortcut] Setup shortcut for hearing device
2023-01-09 01:51:51 +00:00
TreeHugger Robot
8a58b1bea8 Merge "Simplifies serviceSupportsAccessibilityButton by checking service info." 2023-01-08 04:57:54 +00:00
lbill
7135d36d37 5/ Refine SetupChooseLockPattern layout by design
Since the SetupChooseLockPattern include header icon
header title, header sub-title, pattern state description,
LockPatternView and FooterBar, there was a limited room
for LockPatternView especially in the confirm steps which
both header title and pattern description occupy 2 lines space.
Hance the PatternView size used to inconsistence in-between
1st draw and 2nd confirm draw, besides it's visual looks
jumping and small on some device which have smaller display.

This solution includes 3 changes:
1. Organized the pattern view message to leverage
   header sub-title view, then we can resever more space.
   (Set minHeight=2 for sub-title)
2. Set screen_lock_options button visibilty to GONE when
   the stage in 2nd confirmation.(Previously it's INVISIBLE
   and reserve additional space)
3. Let LockPatternView align bottom of FrameLayout to prevent
   the view juming and flicker.
4. Clean up unused forAnyBiometric flag and code.
5. GlifLayout.getDescriptionTextView() == mHeaderView
   Need setDescriptionText() to make the view from GONE -> VISIBLE
6. Polish the stage flow and ensure IntroductionStage show
   correct message
7. Add ChooseLockPattern into embeded activity white list
   Force show ChooseLockPattern in fullscreen in case the Pattern
   view truncated in `NeedToConfirmStage` where the title showing
   2 lines and push pattern view down, and get bad UX in the
   device which integrate a shorter display.
8. Add test cases for all stage and polish legacy test code.

Test: make RunSettingsRoboTests ROBOTEST_FILTER= \
     "com.android.settings.password.SetupChooseLockPatternTest"
Test: make RunSettingsRoboTests ROBOTEST_FILTER= \
     "com.android.settings.password.ChooseLockPatternTest"
Bug: 249974175
Bug: 260027850
Change-Id: I868af9b14ba99af5d78a05f6c2a570ccc07aea15
2023-01-07 19:36:47 +00:00
TreeHugger Robot
d6905dd6ce Merge "[Battery usage U] [UI] Show total "Screen On Time" in the battery usage page" 2023-01-07 03:22:46 +00:00
TreeHugger Robot
95497baf4e Merge "Fix the inverted logic to judge whether an app is system app." 2023-01-07 03:20:08 +00:00
TreeHugger Robot
f730f899d8 Merge "Add Extra Exception Checks to Null Cipher Toggle" 2023-01-06 21:49:22 +00:00
Becca Hughes
c84d77cdf5 Merge "Add credential manager team to OWNERS" am: ce5d029670 am: 5b7dc67d64 am: da53b2912c
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2361251

Change-Id: I645c29b608373dcb31f8dc183da7b220d6bb46c9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-06 20:58:24 +00:00
Becca Hughes
da53b2912c Merge "Add credential manager team to OWNERS" am: ce5d029670 am: 5b7dc67d64
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2361251

Change-Id: I0f6b895cf2ac1a2294eafdad6f15c825bb4ead5e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-06 20:28:41 +00:00
Daniel Norman
05924bf3e6 Simplifies serviceSupportsAccessibilityButton by checking service info.
This should also address a bug where this method used to only check
class name instead of package+class.

Bug: 264307062
Test: atest ToggleAccessibilityServicePreferenceFragmentTest
Change-Id: Ia5f602c6fbc1d23c88dc3d5076c701445b692887
2023-01-06 12:14:47 -08:00
Becca Hughes
ce5d029670 Merge "Add credential manager team to OWNERS" 2023-01-06 20:03:13 +00:00
lbill
ee6366761b 3-1/ Impl FoldProvider.FoldCallback for Face enroll activities
Create a mechanism to allow OEM config posture guidance with
'config_face_enroll_guidance_page', and customize the config
'config_face_enroll_supported_posture' with standard postures
         0 : DEVICE_POSTURE_UNKNOWN
         1 : DEVICE_POSTURE_CLOSED
         2 : DEVICE_POSTURE_HALF_OPENED
         3 : DEVICE_POSTURE_OPENED
         4 : DEVICE_POSTURE_FLIPPED
For example, if we set 1 for the device, then device only
allow to enroll face in closed(folded) state, if device do
not in the allow state, we will prompt specific guidance
page activity defined in config_face_enroll_guidance_page.

At this stage , we only integrate 2 states OPENED/CLOSED through
ScreenSizeFoldProvider and register for onFoldUpdated() callback
- isFold(DEVICE_POSTURE_CLOSED): finish posture guidance
- !isFold(DEVICE_POSTURE_OPENED): launch posture guidance
- onActivityResult : reset mOnGuidanceShown false

1. Fix A11y lottie animation bug
2. Impl FoldProvider.FoldCallback
3. Register callback to ScreenSizeFoldProvider
4. Integrate back stack, skip, cancel events
   - Back key : RESULT_CANCELED
   - Skip btn : RESULT_SKIP
   - Posture changed : RESULT_FINISHED
5. Set single instance for relative activities
6. FaceEnrollFoldPage listen for onConfigurationChanged()
7. Add empty face_posture_guidance_lottie.json for overlay

Test: atest SettingsGoogleUnitTests
Test: m -j SettingsGoogleRoboTests RunSettingsGoogleRoboTests
Test: m RunSettingsRoboTests ROBOTEST_FILTER= \
      "com.android.settings.biometrics.face.FaceEnrollEducationTest"
Test: m RunSettingsRoboTests ROBOTEST_FILTER= \
      "com.android.settings.biometrics.face.FaceEnrollIntroductionTest"
Test: Manual launch security settings face enroll, unfold device
and observe posture guidance showing fullscreen on top
Test: Fold device ensure the posture guidance activity finish
Bug: 261141826
Fixes: 231908496

Change-Id: Ib9f43f82f7d19f3f187c2f6f8984e76cd843afbc
2023-01-06 19:54:03 +00:00
Jing Ji
50490a35ec Add a feature flag for the special access to the long background task
The entry should be hidden if the RUN_LONG_JOBS can't be toggled.

Bug: 255821578
Test: atest AppFilterRegistryTest
Test: make -j RunSettingsRoboTests \
ROBOTTEST_FILTER="LongBackgroundTasksDetailsTest|
LongBackgroundTasksDetailsPreferenceControllerTest"
Test: Manually check the Settings page

Change-Id: Ib1c58d93b40afefdf3ca666c661e213d01c542c6
2023-01-06 11:44:19 -08:00
Gil Cukierman
58f946072d Add Extra Exception Checks to Null Cipher Toggle
Adds broad exception safety to all TelephonyManager calls.
Without these extra catch blocks, the entire Settings app would
crash if a TelephonyManager API were to throw an exception.

Bug: 262914591
Test: atest NullAlgorithmsPreferenceControllerTest
Change-Id: I997a37fe71bf007d67989c89b3abe3e520d79d3c
2023-01-06 19:30:26 +00:00
Becca Hughes
6bd41f20c5 Fix settings bug (pt 2)
Follow on from ag/20862879 to keep track of prefs
so if the list of enabled providers is updated
we update the UI.

Bug: 253157366
Test: make & manual test
Change-Id: Ibf3c83fd445ced51a8cbea0113f12fc04002c23a
2023-01-06 17:23:56 +00:00
Bill Yi
1883efae0a Merge TQ1A.230105.002 to aosp-master - DO NOT MERGE
Merged-In: I11c236f3901c9faaeb6c702678d330dde8f07f38
Merged-In: I3d784788884f9b80733786dc73d9bb62ffef817b

Change-Id: Iabf5075f225933cd03d2d2ac43b9821ecc9fb7c1
2023-01-06 15:26:15 +00:00
Bonian Chen
7a714456fd [Settings] Support of Primary IMEI feature
Present primary IMEI information when there're multiple.

Bug: 260188417
Test: local

Change-Id: I7817fed506f8fc4fabd94f004c9a74b2fab25e10
2023-01-06 13:22:18 +00:00
Zaiyue Xue
e853dd3104 Change all the system items unclickable in battery usage list.
Bug: 264643763
Fix: 264643763
Test: manual
Change-Id: I5854f9517bfb308142cc5f3c5e5cd8f54a237d59
2023-01-06 19:42:46 +08:00
Vania Januar
ce93c656aa Show None default app in stylus preference if no Notes holder.
This also fixes the role holder not updating when the
default role holder has changed.

Test: StylusDevicesControllerTest
Bug: 254834764
Change-Id: Iec7ed7698f18279da9a04918dcdf3e20e73609d1
2023-01-06 11:25:35 +00:00
Zaiyue Xue
833e47d851 [Battery usage U] [UI] Show total "Screen On Time" in the battery usage page
Screen record: https://drive.google.com/open?id=16ZOp1E2YBzWQXbnXl786FaLFPel-S9CF&authuser=0&resourcekey=0-oRqCrdTc9FZjVgsq9orhEw&usp=drive_link
For Arabic: https://drive.google.com/open?id=1zh_4jcUnqLC6CDgwju1qQkWJ0QCtm19c&authuser=0&resourcekey=0-kuKfDdOTWxqOUmD0RfPNLQ&usp=drive_link

Next step: show screen on time for each app

Bug: 258120710
Test: manual
Change-Id: I2085a2a85ebd50b2ac876972f6a8ebbf6f20246c
2023-01-06 19:09:52 +08:00
Zaiyue Xue
814eff1c24 Fix the inverted logic to judge whether an app is system app.
Bug: 264626206
Fix: 264626206
Test: maunal
Change-Id: I3750e3b11e444add27243c492cf8968373cd57d0
2023-01-06 15:24:44 +08:00
Jason Hsu
ed2728073f Merge "Fix preferences under Related category can not launch its own page in bluetooth device details page" 2023-01-06 06:27:03 +00:00
TreeHugger Robot
2462e490ab Merge "Refine TetherSettings with ViewModel" 2023-01-06 03:38:49 +00:00
Vania Januar
c3f6c0d593 Merge "Replace placeholder ROLE_ASSISTANT with ROLE_NOTES." 2023-01-05 14:49:31 +00:00
Tetiana Meronyk
c0e31b3be1 Merge "Allow creating admin users when 'config_enableMultipleAdmins' property is enabled" 2023-01-05 14:30:34 +00:00
Chaohui Wang
4525cfb462 Merge "Remove EXTRA_USER_HANDLE from startSpaActivityForApp" 2023-01-05 11:06:08 +00:00