Commit Graph

2277 Commits

Author SHA1 Message Date
Yanting Yang
ea6a06c8e8 Check DISALLOW_APPS_CONTROL before performing reset app preferences
When DISALLOW_APPS_CONTROL restriction is enabled, users should not be
able to enable/disable apps, clear app caches and clear app data.

The function of reset app preferences will re-enable the disabled apps,
it can let users bypass DISALLOW_APPS_CONTROL to enable an app disabled
by IT admin to see sensitive information.

To fix this vulnerability, we add a check for DISALLOW_APPS_CONTROL
restriction before users reset app preferences. Once the restriction is
enabled, it will show dialog “Blocked by your IT admin” instead.

Bug: 238745070
Test: Verify change by turning on/off DISALLOW_APPS_CONTROL with TestDPC.
Change-Id: Iffee73cf4952b686a78b4c7aaa54747971337d03
(cherry picked from commit 4356c9c653)
2022-08-12 12:25:48 +00:00
Zaiyue Xue
3b7953eac2 Merge "Move battery usage files to a separate folder." into tm-qpr-dev 2022-06-20 09:12:04 +00:00
xuezaiyue
ac7318419a Move battery usage files to a separate folder.
Bug: 202118250
Test: presubmit
Change-Id: I21aa58ebc02327849ed2161dbbafcdc806c007f2
2022-06-19 05:59:35 +00:00
Jason Parks
3f55cd8929 Merge "Use API to check for the superivion component." into tm-dev am: 73276b3c91 am: 3b6fe0813b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18817832

Change-Id: I0fafd91b14712a6bf9a118a2512973af1fb3d502
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-15 13:42:02 +00:00
Jason Parks
4a9c108b28 Use API to check for the superivion component.
Bug: 219025233
Test: manual
Change-Id: Icd2593a67ae0297340991a5375b18e2f933facb1
2022-06-14 17:16:07 +00:00
Chaohui Wang
304a3fd37e Merge "Enable Kotlin for Settings App" into tm-qpr-dev 2022-05-30 02:43:23 +00:00
Chaohui Wang
9ec6f0e41a Enable Kotlin for Settings App
Currently Kotlin files cannot build with library app-compat-annotations.

Only one @ChangeId need this library, create separate build target
library Settings-change-ids to solve this issue.

After this cl, Kotlin could be used for Settings App.

Fix: 229037247
Test: make Settings
Change-Id: I4a0d99425c9e6cc2cbc015d2561daa68609ca0fd
2022-05-30 01:58:25 +08:00
Chaohui Wang
6737a44fba Merge "Fix unable to toggle off Pause app activity" into tm-dev am: bc2e0f5fc4 am: caabb4fe49
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18581945

Change-Id: I97d75ae94ed28e05698b516ef7e43d6c638c2b7a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-27 05:48:18 +00:00
Chaohui Wang
2af5588692 Fix unable to toggle off Pause app activity
The "Pause app activity if unused" SwitchPreference under App info page.

Currently, the preference controller updates the UI state in the
onOpChanged(), which is unnecessary and is called in another non-UI
thread.

Not updating state in onOpChanged() to fix.

Note: This controller implements the LifecycleObserver to handle
lifecycle related logic, but it's actually a no-op before change
If9e48e44267de8e89a5e8f45d256719130936320. So it used to work fine
without the OnOpChangedListener, we can remove it now.

Fix: 227762370
Test: manual
Change-Id: I33f1f55a706407d7b409c3544f9889c45855b34d
2022-05-25 11:45:23 +08:00
Tom Hsu
ab7057cb7f Merge "[Panlingual] Fix icon shall have work badage in work profile." into tm-dev am: 883f5e2572 am: 7a69cee691
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18491260

Change-Id: Ia8b4686e81f5d36c4750ec933c737e5e3b128ea5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-23 17:03:56 +00:00
tom hsu
7e27ecb91e [Panlingual] Fix icon shall have work badage in work profile.
Bug: 233064114
Test: local
Change-Id: I8aa24373f0381b172c30d16aedb2f9ba97238234
2022-05-23 19:34:51 +08:00
Edgar Wang
42704ba27c Merge "Update learn more string of FooterPrefernce" into tm-dev am: 24654a3d61 am: 4d371adf7f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18356903

Change-Id: I70547c9094cdd200f1fa2a77272affbcbe308a34
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-20 23:52:43 +00:00
Edgar Wang
24654a3d61 Merge "Update learn more string of FooterPrefernce" into tm-dev 2022-05-20 23:13:07 +00:00
TreeHugger Robot
6a2136b93a Merge "Revert "Show previous query upon configuration change"" into tm-dev am: fea570f524 am: 4ffd6caf54
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18486386

Change-Id: I0c4ea8367b14a7ac81867587cddb97a1152f61ba
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-20 13:05:57 +00:00
Calvin Pan
2552125764 Merge "Avoid getting app locale config for each app" into tm-dev am: 9d6cf4255d am: 4d728de8bc
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18456663

Change-Id: Ic52667662f873194ff4000b59144fa30223bbc33
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-20 12:48:28 +00:00
TreeHugger Robot
fea570f524 Merge "Revert "Show previous query upon configuration change"" into tm-dev 2022-05-20 12:27:55 +00:00
Yi-Ling Chuang
e763ca1715 Revert "Show previous query upon configuration change"
This reverts commit d9453bf8c6.

Reason for revert: This introduces a new flicker which doesn't seem good. Will have another solution once all things are ready.

Fixes: 232355879
Change-Id: I0bbc4561ce4fbef36d59de15ae98705a6d81574c
2022-05-20 10:11:20 +00:00
Calvin Pan
9d6cf4255d Merge "Avoid getting app locale config for each app" into tm-dev 2022-05-20 01:52:46 +00:00
Arc Wang
5eb4a3b989 Center apps Preference title when there is no summary am: 3cb8171f4f am: 75eac09a00
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18426345

Change-Id: I9dd27011538e0fce99d33045288e984c6252e853
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-18 22:39:18 +00:00
Tom Hsu
5156987650 Merge "[Panlingual] Fix the item clicked is not match target application" into tm-dev am: 45c60f8564 am: 6a85746757
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18356600

Change-Id: I96399fbf01ccf5915f263106fbb331b428d1e126
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-18 22:38:43 +00:00
Calvin Pan
1a253baae4 Avoid getting app locale config for each app
Getting app locale config will spend a lot of time. Removing the log
to prevent getting locale-config for each system app.

Bug: 232557302
Test: Saving about 80% under java stack tracing mode
Change-Id: I2e755286a4e493be7fd73028ade8d190f6571e46
2022-05-18 11:15:46 +00:00
Arc Wang
3cb8171f4f Center apps Preference title when there is no summary
Hide apps Preference summary when a summary is empty
then its title will be vertically centered.

Bug: 229646669
Test: manual visual
      Settings -> Apps -> See all apps
      Settings -> Notifications -> App settings
      Settings -> Storage -> Apps
      Settings -> System -> Language & input -> App Languages
Change-Id: I6fceba243e2ccac9ea180b940b571da07e1ba805
Merged-In: I6fceba243e2ccac9ea180b940b571da07e1ba805
2022-05-17 09:09:08 +00:00
tom hsu
c5bb55689b [Panlingual] Fix the item clicked is not match target application
- Remove unnecessary action of shift poistion.

Bug: b/232754527
Test: local and see b/232754527#2
Change-Id: Ief8655661dd3cc468e68a085dede528694ede33c
2022-05-16 22:42:20 +08:00
KUAN WANG
614d2dfc0b Merge "Reset Optimization Mode of apps when users reset app settings." into tm-qpr-dev 2022-05-16 05:34:47 +00:00
Kuan Wang
4028e6123c Reset Optimization Mode of apps when users reset app settings.
Fix the issue that Optimization Mode is not reset when users click the
"Reset apps" button in the setting.

Bug: 222037028
Test: make RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.fuelgauge" + emulator
Change-Id: I22fb8aa19e284e11882b2920b77b544dee4cc33c
2022-05-16 05:01:20 +00:00
Yi-Ling Chuang
14d31677d6 Merge "Make sure loading extra info once" into tm-dev 2022-05-16 03:26:30 +00:00
tom hsu
36693d8096 [Panlingual][Settings] Add top intro on the top of app list.
- show a message for app selection of user to avoid any confusion of
   searching app.

Bug: b/230689178
Test: see b/230689178
Change-Id: I597e718b81bd7a5019c69dbdfc02f26d7f3af5fd
2022-05-13 16:31:36 +00:00
Edgar Wang
68d12953e7 Update learn more string of FooterPrefernce
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
2022-05-13 08:13:36 +00:00
Mill Chen
b8315994b9 Make sure loading extra info once
In those pages that extend ManageApplications, they need to load extra
information from other services as a summary for each package or as a
condition to be filtered. The way to load extra information is invoked
at two places. One is invoked once all apps are loaded and the other is
running before all apps loaded. It took much more time to prepare the
data for those pages if it is time consuming to load extra info. This
also caused the loading spinner to be always shown.

This change is to make sure that the loading extra info is invoked just
once when entering those pages and to decrease the time to load extra
info. The loading spinner is still displayed on some pages since it
still needs to take more than 100 ms to load extra infor in those pages.

Bug: 222441965
Bug: 223315960
Bug: 222981538
Bug: 222981533
Test: manual test
Change-Id: I8d0084ab5c412d9661f31446e613b7d1f58202ca
2022-05-12 22:44:34 +08:00
Tom Hsu
7f3f9666ee Merge "[Panlingual] Fix shall not show app with empty LocaleConfig." into tm-dev 2022-05-12 14:38:37 +00:00
Yi-Ling Chuang
f6c416054e Merge "Make the force stop dialog work properly in split screen" into tm-dev 2022-05-12 03:23:11 +00:00
tom hsu
89f48dce82 [Panlingual] Fix shall not show app with empty LocaleConfig.
Bug: b/231990625
Test: local
Change-Id: Ia4747b777ee5228b57c0293d366c77e91ae5bee0
2022-05-12 01:50:13 +08:00
Yi-Ling Chuang
2754a20c72 Make the force stop dialog work properly in split screen
When it's in a multi-window mode, force stopping an app will lead to an
activity recreate, and the dialog fragment will also be recreated.
That's why the dialog still shows after the button is clicked.

Hence, dismiss the dialog before stopping the app to fix it.

Fixes: 231529730
Test: robotest
Change-Id: I75d27624f0c60bb617e7d1a92ffe01d3c0fbf7be
2022-05-11 17:07:38 +08:00
James.cf Lin
85db3167e2 [Panlingual] Remove the warning message from AppLocaleDetails
Since opt-in is enabled and it will only display locales that are available or downloadable, there is no longer a need to display the warning message to users.

Bug: 228923650
Test: manual test
Change-Id: Ibd98f3a292eb09c921f4bf00dbf448c976927e5d
2022-05-11 15:20:52 +08:00
Yanting Yang
51204e3deb Merge "Fix reset app preferences for work profile apps" into tm-dev 2022-05-10 12:25:59 +00:00
Martijn Coenen
63db54c290 Merge "Add SDK sandbox network usage to corresponding apps." into tm-dev 2022-05-10 09:18:52 +00:00
Tsung-Mao Fang
ca72e5c333 Merge "Disable setting items in App details page" into tm-dev 2022-05-10 08:17:57 +00:00
Yanting Yang
ee0931f5ba Fix reset app preferences for work profile apps
In the past, Settings didn't support resetting the disable status of
work profile apps, it doesn’t follow the behavior that the reset dialog
mentioned.

To fix it, we are going to check apps by enabling user profiles and user
id. If the work profile is enabled, we will also reset them when users
select to reset app preferences.

Bug: 187387211
Test: manual
Change-Id: I25fd0129335539a23ed2ee0af57fdd9714eddf74
2022-05-10 07:06:14 +08:00
Tsung-Mao Fang
05de9819e9 Disable setting items in App details page
Prior to this cl, we allow user to tap on those
setting items which belong to another user profile app.
However, we already observed some functional broken cases now.
Such as, device can't get the storage data/screen time/mobile data
battery, notification for those apps from another user profile.
Therefore, we decide to grey out those setting items,
and we don't allow user to tap on unsupported setting items.

Test: Download apk in different user profile, and see setting items
is disabled/enabled correctly. and run robo test.
Fix: 230303570

Change-Id: I1bb6b1d8b52f6a00088b2f0e4279b896d568f8a6
2022-05-09 22:04:45 +08:00
Chaohui Wang
870dcb6949 Merge "Fix the device admin apps status not refreshed" into tm-dev 2022-05-09 11:22:18 +00:00
Tom Hsu
e05d71b702 Merge "[Panlingual] Invisible TopIntroPreference under opt-out mode." into tm-dev 2022-05-09 10:32:58 +00:00
Tom Hsu
855099c704 Merge "[Panlingual] Use feature flag to switch opt-in on/off" into tm-dev 2022-05-09 10:31:46 +00:00
TreeHugger Robot
036d6744dd Merge "Ensure loading all apps once in ManageApplications" into tm-dev 2022-05-09 08:09:46 +00:00
Chaohui Wang
0e8acae9d1 Fix the device admin apps status not refreshed
This is caused by I7175c966fbbfbf5d6331f5ac26c06b60d59a4e0d.

updateList() should be called in updateState() to refresh the latest
app status.

Fix: 231113758
Test: manual visual test
Change-Id: I9dc082c829020841ccd76bc4787855c8301f1154
2022-05-09 15:15:40 +08:00
tom hsu
f35406c4b2 [Panlingual] Invisible TopIntroPreference under opt-out mode.
Bug: b/231889115
Test: local see b/231889115#2
Change-Id: I44c30f62caf10ab7c57e8ec7d0b2b06148c3fe5c
2022-05-09 06:58:20 +00:00
tom hsu
8976293162 [Panlingual] Use feature flag to switch opt-in on/off
- Currently per app language use opt-out by default. This change is to
   add a new idea to have a way to change opt-out to opt-in, and let
   user be able to use LocaleConfig.xml to control the feature more
   precise.
 - If app does not support locale picker or there is no locale provided, remove entries' UI.

Bug: b/231396734
Bug: b/230688538
Test: local
Change-Id: I2661fffab804a2816744711130b26aa2ec47f820
2022-05-09 13:36:06 +08:00
Mill Chen
fdbf748dc0 Ensure loading all apps once in ManageApplications
Some pages that extend ManageApplications always display a loading
spinner when entering them. This is caused by that it takes over
100 ms to load all apps and to sort the apps. In addition, the task of
loading all apps might be invoked twice, which caused loading time
increasing.

This CL is to make sure the task of loading all apps execute only once
in those pages that extend ManageApplications.

Bug: 222985623
Test: manual test
Change-Id: I3b15bf2eee2a4c220f42da39a29f0014cc620898
2022-05-06 15:55:36 +08:00
Yi-Ling Chuang
9a14f087cd Merge "Show previous query upon configuration change" into tm-dev 2022-05-06 03:17:22 +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
Tom Hsu
70fe2d1fdd [Panlingual] Fix conflict
- sync code from master to tm-dev

Change-Id: I75b66cd2fa161a6e7c8a9d272b67516ac55e7025
2022-05-05 06:18:22 +00:00