Commit Graph

174 Commits

Author SHA1 Message Date
Oli Thompson
08b4973f8e Update Work profile settings
Change work apps toggle to a primary toggle
make Xprofile contact search toggle disable/enable when work profile is turned off
Add footer and change strings
Add tests

Test: atest ContactSearchPreferenceControllerTest, atest WorkModePreferenceControllerTest

Bug: 253009702 275538029
Change-Id: I3b2044a5fe3f2aff0748d66e701a3f0d7667ab7a
2023-05-11 14:02:27 +00:00
Vincent Wang
818f77cd1f Test Fix SettingRobolectricTest Fail
Bug: b/275023433
Test: NA
Change-Id: If2dcb8f6c196327129ccc9375b190e394c994efa
2023-05-09 06:26:39 +00:00
TreeHugger Robot
cbdc66b767 Merge "Remove BatteryFixSlice as it's not used" 2022-11-04 09:06:05 +00:00
Yi-Ling Chuang
e3fcf1f082 Remove BatteryFixSlice as it's not used
The BatteryFixSlice hasn't been used for a while, and it's introducing
memory leaks due to a design change at the framework's end. Hence,
remove it.

Bug: 245385410
Test: robotests
Change-Id: I517cab71a32613d5cb5fcd3beb991a24926a2902
2022-11-04 12:22:56 +08:00
Michael Groover
6ce57b67fb Add unaudited exported flag to exposed runtime receivers
Android T allows apps to declare a runtime receiver as not exported
by invoking registerReceiver with a new RECEIVER_NOT_EXPORTED flag;
receivers registered with this flag will only receive broadcasts from
the platform and the app itself. However to ensure developers can
properly protect their receivers, all apps targeting U or later
registering a receiver for non-system broadcasts must specify either
the exported or not exported flag when invoking #registerReceiver;
if one of these flags is not provided, the platform will throw a
SecurityException. This commit updates all the exposed receivers
with a new RECEIVER_EXPORTED_UNAUDITED flag to maintain the existing
behavior of exporting the receiver while also flagging the receiver
for audit before the U release.

Bug: 234659204
Test: Build
Change-Id: I8fbcf69575d829f26e02d661498d69f5fc8740d0
2022-10-11 17:26:02 -05:00
Jason Chiu
c89755525f Update all preferences when the account preference updates UI
When an account is added or removed, the account preference controller
just updates the account list, whereas there's no trigger point for the
account data sync preferences to refresh.

Add an API to update all preferences in DashboardFragment, so we can
refresh the account sync preferences whenever the account list is
updated.

Bug: 185479221
Test: robotest, manual
Change-Id: Ide3d972abae09ce0175e3bafbb1f4a5e307d20c8
2022-07-19 10:32:23 +00:00
Jonathan Scott
b7f4f56cad Add missing settings strings.
Also re-enable and fix tests.

Test: manual
Fixes: 226183482
Fixes: 218799125
Fixes: 219375624

Change-Id: I9605f1f4e2e834baf63e015e96639567c5481b5f
2022-05-05 09:12:59 +00:00
Michael Groover
a0dc31f3c5 Resolve test failure in WorkModePreferenceControllerTest
Android T introduced a new requirement that apps registering for
non-system broadcasts via Context#registerReceiver must specify a flag
indicating whether the receiver should be exported. This flag was
added to the receiver in WorkModePreferenceController, but this broke
a test since the signature of the registerReceiver method was changed.
This commit updates the signature of the method in the test to also
expect an int parameter for the flags.

Fixes: 214906107
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WorkModePreferenceControllerTest
Change-Id: I17061ab24ed3ec3def4062fe461803ad88bce9c8
2022-01-20 11:45:43 -08:00
Tsung-Mao Fang
99c4cabe14 Ignore broken tests
Test: Run all robo tests
Bug: 214906480
Bug: 214906101
Bug: 214906504
Bug: 214907514
Bug: 214907475
Bug: 214907472
Bug: 214907388
Bug: 214906107
Change-Id: I47dd81ee72f3a55b2f2a30a7a5cb5c68758fbc9a
2022-01-17 18:31:04 +08:00
Tsung-Mao Fang
07dd833a6a FRP bypass defense in the settings app
Over the last few years, there have been a number of
Factory Reset Protection bypass bugs in the SUW flow.
It's unlikely to defense all points from individual apps.

Therefore, we decide to block some critical pages when
user doesn't complete the SUW flow.

Test: Can't open the certain pages in the suw flow.
Fix: 200746457
Bug: 202975040
Fix: 213091525
Fix: 213090835
Fix: 201561699
Fix: 213090827
Fix: 213090875
Change-Id: Ia18f367109df5af7da0a5acad7702898a459d32e
2022-01-05 12:10:00 +08:00
Jason Chiu
29a09e55ba Revert "Revert "Support highlightable Settings homepage menu for 2-pane""
This reverts commit 096c090b80.

Reason for revert: crash is fixed in this change

Bug: 202510128
Test: manual, build
Change-Id: Ifff8d58cfdcf43e123b11dee308665b2617cb4b3
2021-10-12 09:32:07 +00:00
Greg Kaiser
096c090b80 Revert "Support highlightable Settings homepage menu for 2-pane"
This reverts commit 9037ceabd3.

Reason for revert: Presumed cause of b/202510128

Change-Id: I0daaab95d9bc57229c0c8c916cbe3ada7aafb6fa
2021-10-08 14:29:06 +00:00
Jason Chiu
9037ceabd3 Support highlightable Settings homepage menu for 2-pane
1. Add a preference group adapter to perform highlighting
2. Add a class for mapping highlighable menu keys and preference keys
3. Add an API to determine if the screen is in split mode

Bug: 199017944
Test: manual, build
Change-Id: I8e3fe5fb96480a31ee0f3b3afb6ad78999d3d2bc
2021-10-08 12:52:52 +08:00
Sunny Shao
a6eb37b215 Fix Learn more link placement is wrong problem
- Use the new style of the FooterPreference.

Fixes: 189389674
Test: Robo test
Change-Id: I1529952181cca0eccd18f911eaa265b19dbb97f7
2021-06-10 20:14:56 +08:00
Ahaan Ugale
6663bed71c Account settings: Fix duplicate title and extra padding.
This change reverts the change in
I3981ce73fef63f06a40e61e894481d24284614ba to add a PreferenceCategory
for the accounts after merging the page with autofill settings. That was
done to get the Accounts heading to display for the personal/work
profile view.
This change instead sets the title on the existing PreferenceCategory
that's created dynamically in the Controller.

Removing the extra PreferenceCategory also fixes the padding.

Fix: 183677515
Bug: 183677706
Test: manual - with single profile, with personal/work profiles
Test: make -j RunSettingsRoboTests \
 ROBOTEST_FILTER="com.android.settings.accounts.AccountPreferenceControllerTest"
Change-Id: Ib7fe6f97b93b81d5a5897280cdd6bbad1b75f3a9
2021-05-13 19:49:04 -07:00
Yanting Yang
d1312e8e6e Add summary back to the homepage
Also update some summaries with new strings.

Bug: 183586663
Test: robotests & atest & visual

Change-Id: I692be9b34e8867501aaa8c8e40428870b99644f8
2021-05-06 00:27:37 +08:00
Ahaan Ugale
2e46cdb287 Merge "Update summary for Passwords and Accounts." into sc-dev 2021-03-25 16:22:46 +00:00
Ahaan Ugale
2c80a7ca98 Update summary for Passwords and Accounts.
Bug: 169455298
Test: manual - disable silky home and check summary
Test: make RunSettingsRoboTests
Change-Id: Id4574f5865c57ec6a5cd010412a59411ab9af546
2021-03-25 09:25:30 +00:00
Ahaan Ugale
7f3534925f Merge "Merge Autofill settings into Account settings." into sc-dev 2021-03-24 14:48:58 +00:00
Jason Chiu
c37dd71260 Settings homepage redesign
- Support new suggestion design
- Search bar relayout
- Move avatar icon to the top right corner

Test: robotest
Bug: 178068045

Change-Id: I07f1577488d6d1827ee07d55db6759f02d655d5f
2021-03-24 18:53:27 +08:00
Ahaan Ugale
9b183778f2 Merge Autofill settings into Account settings.
Autofill settings are removed from Language and Input.

They are now in a new top-level Passwords and Accounts page.

Some polish work is left to match the new design.

Bug: 169455298
Test: manual - check settings page and some search keywords
Test: manual - add work profile and check the above again
Test: make RunSettingsRoboTests
Change-Id: I3981ce73fef63f06a40e61e894481d24284614ba
2021-03-23 23:48:09 -07:00
Dmitri Plotnikov
313dbc0355 Remove references to BatteryStatsHelper from PowerUsageBase
Bug: 180630447
Bug: 173745486

Test: make RunSettingsRoboTests
Test: male RunSettingsGoogleRoboTests
Change-Id: Ifed69c4fdd741f75b0b962f9d3200f0ed533358f
2021-03-18 06:07:29 +00:00
Edgar Wang
9691da0d21 Change packagename of TwoTargetPreference
Bug: 180156703
Test: robotest
Change-Id: Ida344e689971aa780054093b2472582d61c476d1
2021-02-13 12:17:14 +08:00
Yanting Yang
6778fe74bd Fix robotests fail if turning on silky home by default
Bug: 179136903
Test: robotests
Change-Id: Ic620a5061fe7b778076970fd01f212a7aa95bf9e
2021-02-03 03:36:08 +08:00
Arc Wang
62c78ff3fa Migrate robolectric tests to junit tests
This change do the 2 things:

1. Add new junit tests files which replace robolectric
   RobolectricTestRunner & RuntimeEnvironment with
   AndroidX objects without problem.
2. Remove the robolectric test files which have it's new junit files.

This change migrate 103 files, there are still 1209
files to go.

Bug: 174728471
Test: atest
      make RunSettingsRoboTests
Change-Id: I15ed3f4745b85862f720aabbf710ce1475aced93
2020-12-16 11:17:57 +08:00
Yanting Yang
9aa4a5463f Remove subtitles for the homepage IA
Remove the summary of the homepage IA if silky home enabled.

Fixes: 170933968
Test: robotest & visual with turning on/off silky home
Change-Id: I502b6590cece9b80e9923109fe0582cc4d9a1c56
2020-10-20 23:54:03 +08:00
Edgar Wang
c2e4513fb6 Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: I36829e0055437dab79d9e5339ac002a87a4b874f
2020-08-04 18:12:48 +08:00
Tsung-Mao Fang
17b882a94d Fix broken test cases
Since we added a new API in ag/11355641,
we need to shadow this new new API.

Fix: 130916962
Test: run robo test
Change-Id: I2176253aae915d1a31043ebbf197d4dd1b1f2072
2020-05-04 17:22:01 +08:00
Tsung-Mao Fang
b3bb7a0237 Fallback to AOSP emergency info if the original intent is broken
If the variant of emergency info is broken, we should try to show
AOSP emergency info instead.

Test: Rebuilt rom and see the Ui. Run robo test
Fix: 154114259
Change-Id: I5bc3f6cbf9102a7b7299c3edf718a58101effbf8
2020-04-16 17:23:52 +08:00
Alex Kershaw
c364f5d95d Remove policy transparency for cross-profile calendar setting
We will likely deprecate this setting in the next release, to be
replaced by usage of 'connected work and personal apps'. However, we are
keeping it in this release as it's still possible that a lightweight
calendar access API could be useful, if the admin and user approvals are
combined.

For now, the error message that refers to cross-profile calendar when
the setting is disabled is confusing admins, since we're not
recommending usage of this API at this time.

Remove the setting when it is disabled, rather than showing policy
transparency.

Fixes: 143477431
Test: manual
Change-Id: I65573a5ba892e12a4dabcdf23541f33516db0a8a
2020-03-31 11:41:44 +01:00
Sunny Shao
0030d78b62 Disable the sync now menu while no any synced item
- Check the number of the switch on for all SyncStateSwitchPreferences to
  enable/disable the sync now menu item.

Fixes: 147030748
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.accounts
Change-Id: I88e4b042e6d236b98866b9e8bff9ec2c64b41b87
2020-03-19 20:58:29 +08:00
Stanley Wang
3b02810356 Index user accounts.
Index user accounts in AccountDashboardFragment if there is no managed
user profile.

Fixes: 146478761
Test: manual & robotest
Change-Id: I719dc6ee8030a11f1cbfacc8f24419e9e4c3ca18
2019-12-19 10:55:42 +08:00
Raff Tsai
1e5d8146b5 Change ProfileType definition
Bug: 141601408
Test: rebuild
Change-Id: Ia4d4fabe8a4daad4ce54c243748fa3c29bf944ba
2019-12-12 13:44:35 +08:00
Stanley Wang
8015cbab9e Add work profile items of Account page to dynamic index.
- Add "Work profile settings" & "Remove work profile"
to dynamic index

Test: manual & robotests AccountPreferenceControllerTest
Change-Id: I122269927fd466bc8fbce1dd68faa372a6a7477b
Bugs: 69907442
2019-11-27 18:44:12 +08:00
Jason Chiu
bac5987c8e [Settings] Support pure switch of inline toggle of Settings Injection v2
Bug: 132808482
Test: robotest
Change-Id: Ib24614fb46fe990925edad721e3b7d5d032854fc
2019-11-19 18:24:13 +08:00
Raff Tsai
65866290ce Add tablayout for work/personal profile
- Add Tablayout in ProfileSelectFragment
- Add AccountWorkProfileDashboardFragment inherited from
ProfileSelectFragment
- Add ProfileFragmentBridge to convert AccountDashboardFragment
to AccountProfileSelectFragment
- Use flag settings_work_profile to guard the new fragment

Bug: 141601408
Test: Settings->developer options->feature flags->
turn settings_work_profile on/off, then go to settings->account
to see if UI is changed.

Change-Id: Ifb32c22cdeab69c51517664081cacf4a401c46a1
2019-10-15 18:01:08 +08:00
Jason Chiu
1a1f9314b6 Refactor Settings for injection v2 inline toggle
Bug: 132808482
Test: robotest
Change-Id: I0b74e05bc26b97259a15859c669060ce3da7972a
2019-10-04 18:32:11 +08:00
Raff Tsai
966fa01423 Use SettingsLib Indexable
- Use SettingsLib Indexable
- Directly use resource id in getPreferenceScreenResId

Bug: 135053028
Test: roboletric
Change-Id: I05f493b55e8b6e2091301e9231ba5615215618e6
2019-09-25 18:24:56 +08:00
TreeHugger Robot
ea43780693 Merge "Revert "Prevent accounts page directly opening in screen pinning mode"" 2019-09-06 11:13:40 +00:00
Mill Chen
348234565a Revert "Prevent accounts page directly opening in screen pinning mode"
This reverts commit f3242dab35.

Reason for revert: use another way to handle this.

Change-Id: I83c97db5189cfda3a09f5249d8591ea91dbd3bcb
2019-09-06 09:18:23 +00:00
Sunny Shao
7e866b670e Use Builder to replace the Uitls.addFooterPreference
Fixes: 139163212
Test: manual test
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.bluetooth
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accounts
Change-Id: I861434b81c07db785e6f1cfb3e34871ffba41e5f
2019-08-09 11:42:04 +08:00
Sunny Shao
6b4a22522b Use FooterPreference in xml explicitly
Removed the FooterPreferenceMixin from the ChooseAccountFragment page.

Fixes: 139043643
Test: manual test
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accounts
Change-Id: I2b6ebef7f8ca0684afd75ec9bdd742a78a771bcd
2019-08-07 17:01:25 +08:00
Sunny Shao
1908cb6bd2 Use FooterPreference in AccountSyncSettings page
.Use the new FooterPreference and removed the old FooterPreferenceMixin
 from the AccountSyncSettings page.
.Add the ShadowAuthenticationHelper for commnon shadow util.

Fixes: 138978130
Test: manual test
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accounts
Change-Id: I93ae46b3b66e7e504320a9ed120ab7948dd06423
2019-08-06 20:33:44 +08:00
Mill Chen
f3242dab35 Prevent accounts page directly opening in screen pinning mode
There is no auth mechanism to prevent accounts page being opened in
screen pinning mode. We will directly close the account page if users
are trying to navigate to it from screen pinning mode.

Fixes: 137015265
Test: manual, robotests
Change-Id: If26eda408a9ef6fa03ad82e5bee51bb7185950d6
2019-07-20 02:51:14 +08:00
TreeHugger Robot
fe1a2476b3 Merge "Use Activity Context in RemoveAccountPreferenceControllerTest." 2019-06-14 19:01:39 +00:00
Jonathan Scott
2b0d9a5778 Use Activity Context in RemoveAccountPreferenceControllerTest.
Test: make -j56 RunSettingsRoboTests
Bug: 117487838
Change-Id: I2647bf98018e72af24053a336c8246d1f7e5fd4b
2019-06-14 11:09:11 +01:00
TreeHugger Robot
78241bc06b Merge "Update testcases which failed due to the SupportLibrary changed" 2019-06-14 03:11:33 +00:00
Sunny Shao
5da24591ea Update testcases which failed due to the SupportLibrary changed
Fragment.oncreate() causes an IllegalStateException. We use a
ShadowFragment to stop the calling sequence.

Fixes: 135086559
Test: robotest
Change-Id: I601e0f2513f826b0b7749cb2c013b7e4c0a94a33
2019-06-13 10:02:50 +00:00
Sunny Shao
2c6d308ecb Set the mAccountName as null while device has no any account
It doesn't clean the mAccountName buffer while device has no any account. And it will be put into
the Intent and pass to MeCard when user click the ghost boy avatar. It does not make sense and
modify code to fixed it.

Fixes: 129265427
Test: make RunSettingsRoboTests -j56 ROBOTEST_FILTER=com.android.settings.accounts
      make RunSettingsRoboTests -j56 ROBOTEST_FILTER=com.android.settings.core
      make RunSettingsRoboTests -j56 ROBOTEST_FILTER=com.android.settings.dashboard

Change-Id: Ib8cfab2cb416515018f335b21ef49a95699a1597
2019-06-04 15:56:18 +08:00
Fan Zhang
e3ecf5bb9e Fix a NPE when removing accounts.
Guard against null activity. If activity is already null, there is no
need to call finish().

Fixes: 131180213
Test: robotests
Change-Id: I19232ed67ddd0c3539b1827de23fdc584850b519
2019-04-23 15:23:36 -07:00