Commit Graph

2188 Commits

Author SHA1 Message Date
tom hsu
ea9e627c1c [Panlingual] Improve UI can not show on at first.
- Settings take much time to get the info of app launcher entry. User
    may not see the panlingual UI at first after boot to home.
  - Does small refactor to somewhere.

Bug: 218416193
Test: local
Test: atest pass
Change-Id: Ibfb91f0bb8d8ff54cadd041250b3cff252dbe591
(cherry picked from commit cae20ce2f7)
Merged-In: Ibfb91f0bb8d8ff54cadd041250b3cff252dbe591
2022-03-03 08:39:20 +00:00
Julia Reynolds
40caac3c9e Merge "Disable app toggle for some T+ apps" into tm-dev 2022-03-01 13:42:26 +00:00
tom hsu
62a8514d1b [Panlingual] Fix duplicated locale show on suggested group
- When User select 2 same locale but different region, current logic
   will also check 2 times and add these same results into cache.
 - Use hashSet to resolve this problem

Bug: 220804297
Test: local
Test: atest pass
Change-Id: I60c63a1eb570373fd714cf9b29ed926d15b2daa7
2022-02-25 09:35:51 +00:00
Julia Reynolds
f56aa26b2e Disable app toggle for some T+ apps
Specifically, apps that haven't requested the notif permission
in their manifest, as we cannot grant/revoke the permission unless
they do

Test: NotificationBackendTest, AppStateNotificationBridgeTest
Fixes: 218315122

Change-Id: Icd936de806d7642809ef6c79d2d169bd673c2659
2022-02-24 14:48:39 -05:00
Julia Reynolds
1d15b24da2 Merge "Remove unnecessary async" into tm-dev 2022-02-24 15:30:02 +00:00
TreeHugger Robot
ad1a789a86 Merge "Ensure icons on app filtering page" into tm-dev 2022-02-23 20:05:34 +00:00
Julia Reynolds
6fd71484b5 Remove unnecessary async
Because if the work wasn't scheduled by the time the main page was
shown, the switch would be shown in the wrong state. And these
calls are fast, and can be done on the main thread

Test: turn off DND access for apps with DND rules
Fixes: 207058117
Change-Id: I186413f4237ef754bdfa5cc469e1b7be4ff71f2c
2022-02-23 12:51:45 -05:00
Julia Reynolds
de08d984ef Ensure icons on app filtering page
Test: BridgedAppsPreferenceControllerTest.java, manually look at screen
Fixes: 218724983
Change-Id: I6ee4bb6c39efacecff5c4219dbe9fdb066c49368
2022-02-23 12:25:49 -05:00
Edgar Wang
fa5ab2e268 Replace SettingsSpinner with Spinner
Bug: 219610512
Test: manual
Change-Id: Ib8562a64299a6cb36f8225199f9432cb81e8e9f2
2022-02-17 02:16:27 +08:00
tom hsu
cfc5554068 [Panlingual] Add device default language to suggested group
- Add default language preference
 - Polish unit test
 - Fix unsupported locale show on suggested group

Bug: 209728327
Test: local test
Test: atest pass

Change-Id: I69778cb8d69b21314c75689f0d61c25294c7f9d2
2022-02-14 11:30:30 +08:00
Qi Cao
68d6c80a12 Merge "Made following changes to Settings:" 2022-02-10 22:52:53 +00:00
Tom Hsu
f813e2b2f4 Merge "Add a OWNER file for per-app language" am: 38cb70ffd9 am: f9355dcc95 am: 3639f8c59a am: d1040f8fe9
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1977704

Change-Id: Id9a68603cc2ebe8e4b7a7e0f667728d9e55e97f5
2022-02-10 10:45:32 +00:00
Tom Hsu
d1040f8fe9 Merge "Add a OWNER file for per-app language" am: 38cb70ffd9 am: f9355dcc95 am: 3639f8c59a
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1977704

Change-Id: I4db5ebcc51cef0ad63ce03b0d3d137515c6fa8a5
2022-02-10 10:32:35 +00:00
tom hsu
085e5fc946 Add a OWNER file for per-app language
Change-Id: I5b0d9491db1f1ba602306289d6df2e4282c2bece
2022-02-10 15:27:09 +08:00
Roman Kalukiewicz
669ebc9b89 Merge "Allow users to add profile owner after setup if the supervision role is set." 2022-02-10 02:24:17 +00:00
Roman Kalukiewicz
f6a7b65a98 Allow users to add profile owner after setup if the supervision role is
set.

Bug: 185905077
Test: manual
Change-Id: Ia267c9d4fa6d438fa9449c6f44031a3831e86fa1
2022-02-09 21:13:10 +00:00
Qi Cao
17ff2b25a5 Made following changes to Settings:
- Moved the Voice Input setting from Digital assistant app to Languages & input.
- Bundled Voice Input and Text-to-speech settings together under Speech
  category.

Bug: 218609449

Test: refactoring CL. Existing unit tests still pass.
Change-Id: I3107a410ed35685f5f1081cbe448b105b5c79c24
2022-02-09 19:31:08 +00:00
Jonathan Scott
a2781721e2 Merge "Allow overriding of strings referenced in XML files." 2022-02-09 10:48:09 +00:00
Tom Hsu
64e203ad43 Merge "[Panlingual] Add PackageManager api to Per app language." 2022-02-08 07:05:29 +00:00
tom hsu
b48802c152 [Panlingual] Add PackageManager api to Per app language.
Bug: 216099500
Test: atest pass
Test: local test with Settings app
Change-Id: Icbdb1475d45e0652de369711ea21b5043f36dc19
2022-02-08 03:25:03 +00:00
Jonathan Scott
269f97d960 Allow overriding of strings referenced in XML files.
Test: manual
Bug: 188414370
Change-Id: Ice45b1808530c14c4efff16795cac7b2cb81516e
2022-02-07 21:00:05 +00:00
Kevin Han
24d67e9a09 Merge "Hook up hibernation eligibility to exemption toggle" 2022-02-03 23:56:04 +00:00
Jonathan Scott
c3dbc3ffbd Merge "Allow Device Management Role Holder to update Settings strings." 2022-01-31 19:10:30 +00:00
Kevin Han
143cc954f3 Hook up hibernation eligibility to exemption toggle
Use hibernation eligibility API to determine whether toggle should be
enabled or disabled for an app. For apps that are already exempt from
hibernation by the system, the toggle is disabled and unchecked.

Bug: 200087723
Test: manual
Test: atest AppHibernationIntegrationTest
Change-Id: I36a1eafc2bb90a92bcbdc4bf32041426d6377fd4
2022-01-28 14:23:22 -08:00
TreeHugger Robot
b22a383cf3 Merge "Apply a new icon cache mechanism for memory improvement" 2022-01-28 15:45:15 +00:00
Ricky Wai
d3fe360d26 Merge "Add restricted settings UI in Settings accessibility screeen" 2022-01-28 11:23:17 +00:00
Kevin Han
c721a44f20 Merge "Pull unused app count from PermissionController" 2022-01-27 23:50:03 +00:00
Ricky Wai
c76a11f0c1 Add restricted settings UI in Settings accessibility screeen
If OP_ACCESS_RESTRICTED_SETTINGS is rejected, it means accessibility page
for that app is gray out and app info won't show "unlock restricted settings menu"

If OP_ACCESS_RESTRICTED_SETTINGS is ignored, it means accessibility page
for that app is gray out, but app info shows "unlock restricted settings menu"

If OP_ACCESS_RESTRICTED_SETTINGS is allowed(default), it means users can
access accessibility page for that app.

OP_ACCESS_RESTRICTED_SETTINGS will be changed to ignored if user visited
the restricted settings dialog.

OP_ACCESS_RESTRICTED_SETTINGS will be changed to allowed if user passes
the confirmation screen.

Bug: 202130031
Test: Tested the UI and it works correctly
Change-Id: I3dfb94cee440658b4726a1c3f7265f93cd19ed3e
2022-01-27 09:50:40 +00:00
Yanting Yang
19bdc6ce67 Apply a new icon cache mechanism for memory improvement
- Avoid loading all app icons at once to decrease memory usage.
- Only load visible icons when entering the apps page.
- Reserve icon placeholder to alleviate icon loading flicker.
- Release icon cache when low memory or leaving apps page.

Bug: 187118427
Bug: 209898662
Test: manual check the smoothness and memory usage of apps pages.
Change-Id: Ifc3c2a73cc88d6e42739df4e8208445afa12e0ea
2022-01-27 17:20:58 +08:00
Pyuli Naithani
d140857954 Add "All services" settings in the App Preference screen for GmsCore.
BUG: 188920241

Test: N/A

Change-Id: Icf475f4a6c7498cd9782524806b0335e9cb0f8fc
2022-01-26 21:36:25 +00:00
Kevin Han
350a1785de Pull unused app count from PermissionController
Use the new PermissionControllerManager API to get the number of unused
apps directly from PermissionController instead of replicating the
logic

Bug: 200087723
Test: atest HibernatedAppsPreferenceControllerTest
Change-Id: I989219cfb2a44b5acb054ff5fb744e68d8e118b3
2022-01-26 01:07:38 +00:00
Jonathan Scott
e0d439472f Allow Device Management Role Holder to update Settings strings.
Test: manual
Bug: 188414370
Change-Id: I6e1a06619799a9e99382d791e72e2e4518f93cac
2022-01-25 19:03:24 +00:00
Daniel Huang
56a62d74ec Merge "[Panlingual] Suggested locales update" 2022-01-21 09:12:06 +00:00
Tom Hsu
456eaedbcd Merge "[Panlingual] Adds a filter of application for per apps locale change." 2022-01-21 09:02:40 +00:00
danielwbhuang
714bcfff2c [Panlingual] Suggested locales update
1. Extract the Country from the Top system langauge, TelephonyManager.getSimCountryIso().toUpperCase(Locale.US), and TelephonyManager.getNetworkCountryIso().toUpperCase(Locale.US).
2. For each app-supported locale, if the region is identical then add this as a suggested language.

Bug: 209729740
Test: atest AppLocaleDetailsTest
Change-Id: I4f95a638916e88197fc37546c7786c63b59f581d
2022-01-20 22:48:28 +08:00
Allen Su
2e9760efd1 Merge "Change locale comparison API" 2022-01-20 06:52:28 +00:00
allenwtsu
03711a8ed4 Change locale comparison API
Bug: 209729853
Test: atest AppLocaleDetailsTest
Change-Id: I1568fe9474e473ac6d3fb81dcf9edf9ba7434e85
2022-01-20 14:09:54 +08:00
tom hsu
33f2096fea [Panlingual] Adds a filter of application for per apps locale change.
- Settings -> System -> app language -> app languages
   Use this filter to only show apps allowed to change the locale.
 - Settings -> Apps -> all apps -> any one of app -> language
   Use this filter to only show the language preference of app allowed to change the locale.
Bug: 210935436
Test: atest pass.
Test: local test.
Change-Id: I2f8a0815dae68392e11882ad9e1e4945492efdba
2022-01-19 09:06:50 +00:00
Treehugger Robot
61e1a07529 Merge "[MS50] Remove NetworkTemplate#buildTemplate* usages" am: 0ccb8750b9 am: 039cdfd764 am: 5ea82e5955 am: b21993b793
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1943134

Change-Id: I4fe5dfdfc66aaad72a31de1761c28c6245db5bd6
2022-01-11 10:51:15 +00:00
Treehugger Robot
b21993b793 Merge "[MS50] Remove NetworkTemplate#buildTemplate* usages" am: 0ccb8750b9 am: 039cdfd764 am: 5ea82e5955
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1943134

Change-Id: I21f0e516ec82f875638eabcd700fdead02048d7c
2022-01-11 10:03:53 +00:00
Junyu Lai
123f2e1581 [MS50] Remove NetworkTemplate#buildTemplate* usages
This is a no-op refactoring.
These functions are deprecated and replaced by
NetworkTemplate#Builder, use public API instead.

Test: make RunSettingsLibRoboTests
Bug: 204830222
Change-Id: Idc2a09d8e3789ca2c7a97691cfad4b2e2b417f0d
2022-01-11 02:53:03 +00: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
tom hsu
4da192d732 [Panlingual] Remove getCallingPackage and use Uri instead.
- Use uri to pass the package name.
 - Allow adb command to start this function

Bug: 211856852
Test: see b/211856852#2

Change-Id: I3d73d32d7546bf0e3db25d952b2caee934f523dc
2021-12-23 13:00:28 +00:00
tom hsu
26b0bd7f19 [Panlingual] Add outside entry.
- video: https://screencast.googleplex.com/cast/NjIxODkzNzYyMjU5MzUzNnwwMWMxYjI1Ny1hMw

Bug: 207743479
Test: local
Change-Id: Iab3ba4d14f581aed7b737521ccba4f62e1c04998
2021-12-20 19:37:59 +08:00
tom hsu
58244b1b74 [Panlingual] Implement entries of Panlingual in settings UI part.
- Path 1 : System -> Language & Input -> App Languages -> per app
 language
 - path 2 : System -> Apps -> App Info -> per app language
 Video: https://screencast.googleplex.com/cast/NjUyNTUzMDY0MTc5MzAyNHxjNTg2MzMwYS0yOA

Bug: 206854105
Test: local test pass
Test: atest pass

Change-Id: Ic06fa4f0c6ec68680eb828032b6e3f479b412dc4
2021-12-13 22:54:40 +08:00
TreeHugger Robot
3d8edf8e43 Merge "Fix the background color of CollapsingToolbarLayout" into sc-v2-dev am: d355d7f123
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16284152

Change-Id: I2203f0844c527bf1ac7934b1d711117397ed120c
2021-12-02 07:54:01 +00:00
TreeHugger Robot
d355d7f123 Merge "Fix the background color of CollapsingToolbarLayout" into sc-v2-dev 2021-12-02 07:19:45 +00:00
Mill Chen
3825bff021 Fix the background color of CollapsingToolbarLayout
The wrong background color of CollapsingToolbarLayout appears in some
pages like "All apps" page or "Password and accounts" page. This symptom
can be observed in these pages when the work profile is enabled and the
line count of title is 1.

This issue is caused by updating the title of the page many times. In
these pages that have the tab view, the structure of the page differs
from a general setting page. The title of the page is coming from
BaseActivity, ProfileSelectFragment, PersonalFragment and WorkFragment,
in which the page that has the issue has an empty string from
ProfileSelectFragment. That is causing the CollapsingTollbarLayout has
the different line count during the process of setting the title.

Since the pages that have the tab view are different from the general
pages in Settings, the title should be set separately for those pages.
Adding a method to get the title resource ID so the page extending from
ProfileSelectFragment can set its title.

Bug: 192914660
Test: visual test and manual test
1) Enable work profile
2) Navigate to All apps page
3) The page should have the correct background color in the
CollapsingToolbarLayout

Change-Id: I52ef9729f3cad56161ea3d87ba25429dfcdb26ef
Merged-In: I52ef9729f3cad56161ea3d87ba25429dfcdb26ef
2021-12-02 13:40:45 +08:00
Mill Chen
28bc1c04b9 Fix the background color of CollapsingToolbarLayout
The wrong background color of CollapsingToolbarLayout appears in some
pages like "All apps" page or "Password and accounts" page. This symptom
can be observed in these pages when the work profile is enabled and the
line count of title is 1.

This issue is caused by updating the title of the page many times. In
these pages that have the tab view, the structure of the page differs
from a general setting page. The title of the page is coming from
BaseActivity, ProfileSelectFragment, PersonalFragment and WorkFragment,
in which the page that has the issue has an empty string from
ProfileSelectFragment. That is causing the CollapsingTollbarLayout has
the different line count during the process of setting the title.

Since the pages that have the tab view are different from the general
pages in Settings, the title should be set separately for those pages.
Adding a method to get the title resource ID so the page extending from
ProfileSelectFragment can set its title.

Bug: 192914660
Test: visual test and manual test
1) Enable work profile
2) Navigate to All apps page
3) The page should have the correct background color in the
CollapsingToolbarLayout

Change-Id: I52ef9729f3cad56161ea3d87ba25429dfcdb26ef
2021-12-01 18:44:42 +08:00
Kevin Han
6dc2c76da0 Merge "Unhibernate an app when a user exempts it" into sc-v2-dev am: 83a8b76ec2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16286576

Change-Id: Icacd93b1f5b0cfe950dd4e4ccc0f8081ad1d58c3
2021-11-18 21:58:23 +00:00