Commit Graph

2099 Commits

Author SHA1 Message Date
Quang Luong
72c56e2c88 Merge "Fix NPE on getTitle()" into qt-dev am: afee5a7219
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15888886

Change-Id: Ib57e720c6c28fe5d24406775ba8832650c8dbd12
2021-09-30 15:23:33 +00:00
cnchen
ced3af1e05 Fix NPE on getTitle()
Bug: 199922685
Test: make RunSettingsLibRoboTests -j40
Change-Id: I35bf6f5911dc0ee56e43af7faddaceb479362863
(cherry picked from commit f00f2203b5)
Merged-In: I35bf6f5911dc0ee56e43af7faddaceb479362863
2021-09-22 22:20:42 +00:00
Raff Tsai
8ef5d5e438 Fix Battery optimization takes long time
isDefaultActiveApp is called on every package. We can cache default
dialer and default sms package in a list, and check if the list
contains target package name.

Fixes: 140279638
Bug: 151233929
Test: manual, make RunSettingsLibRoboTests
Change-Id: I81f5ccb7aed1ebec797a21af6094971e05f456a7
(cherry picked from commit 19c2bbccfd)
2020-03-30 06:15:28 +00:00
TreeHugger Robot
4af0a5bc27 Merge "Concurrent collections for Bluetooth callbacks." into qt-qpr1-dev 2020-01-31 20:11:31 +00:00
Evan Laird
ad08b5b831 DO NOT MERGE: Use a copy of bt device profile list when updating
CachedBluetoothDevice#getProfiles() only returns a
Collections.unmodifiableList which isn't thread safe. Use a copy in
BluetoothControllerImpl so we can avoid a CME

Test: atest SystemUITests
Bug: 146828136
Change-Id: I451a746836c67b8b82f26f4f39b5363ac5e0ea79
2020-01-15 22:17:48 +00:00
davidln
b6dce0b74f Concurrent collections for Bluetooth callbacks.
This allows callback classes to remove themselves or add additional
callbacks in response to state change dispatches.

Bug: 129060225
Bug: 144357642

Test: build and deploy, pair multiple devices, switch users

Change-Id: I8eed81bbc9c12321ec41b2491d006764e2e483d6
Merged-In: I8eed81bbc9c12321ec41b2491d006764e2e483d6
2019-12-16 18:47:18 +00:00
Arc Wang
6e810df9b8 [Wi-Fi] Fix transition mode problems
1. In AccessPoint#updateBestRssiInfo, if bestResult is available, cache if it’s transition mode at  new variables.
2. Remove SECURITY_PSK_SAE_TRANSITION & SECURITY_OWE_TRANSITION since we will cache if an Wi-Fi AP is transition mode.
3. Enhance getSecurity(ScanResult result).
   For a PSK/SAE transition mode ScanResult, return SAE.
   For a open/OWE transition mode ScanResult, return OWE.
4. Enhance all AccessPoint#matches methods
5. Use enhanced AccessPoint#matches to replace AccessPoint#isKeyEqual
6. In WifiTracker#updateAccessPoints, it associates an AccessPoint with a configured WifiConfiguration
   I. If an AccessPoint is PSK/SAE transition mode, update it with a configured network
      of the same SSID and PSK/SAE security if it’s available. (SAE has higher priority).
   II. If an AccessPoint is Open/OWE transition mode, update it with a configured network
       of the same SSID and open/OWE security if it’s available. (OWE has higher priority).

Bug: 144320676
Bug: 144320649
Bug: 144325162
Bug: 144321574
Test: atest SettingsLibTests
      manual: In Wi-Fi picker
              1. Save a PSK network, click a PSK/SAE transition mode AP of the same SSID,
	         it should connects.
              2. Save a SAE network, click a PSK/SAE transition mode AP of the same SSID,
	         it should connects.
              3. For 1. and 2., the transition mode AP should show 'Saved'.
	      4. For 1. and 2., looking at saved network page, each saved network should
	         shows correct connection status of the transition mode AP.

Change-Id: Ida858af791bc60f0ccb11025901de2a79eacba3c
Merged-In: I9688f51f4a4b8e3d5c080fb0d0103abb4e3fd79b
2019-12-09 19:17:23 +08:00
Hai Shalom
65c9665125 Merge "Revert submission" into qt-qpr1-dev 2019-11-22 03:46:01 +00:00
Hai Shalom
a4284cb292 Revert submission
Reason for revert: Incomplete fix that causes additional issues which were not anticipated earlier.

Change-Id: I383273509797ed95a7f9ece780ec52abb1341292
Merged-In: Iff36d5a10e6c8ee8978a5842af8f19efc10c0a91
2019-11-21 23:08:43 +00:00
Hai Shalom
78ee3320ff Merge "[WPA3] Fix WPA3-Personal transition mode" into qt-qpr1-dev 2019-11-18 21:29:39 +00:00
Hai Shalom
8000abd65b [WPA3] Fix WPA3-Personal transition mode
Fix WPA3-Personal in transition mode issues. Current
solution will create an upgraded WPA3 connection if
there is a WPA2 saved network and AP is in transition
mode.

Bug: 143843364
Test: Manual tests
Test: atest com.android.server.wifi
Change-Id: Idadbd1d155ddd617e61063e64e186abec478f5ff
Merged-In: I53b278e846828198fb1953b075d86e16fac6d795
2019-11-16 01:43:30 +00:00
Jason Chiu
cf1517cfcc Fix Settings creating too many threads unexpectedly
Provide a method to submit a Callable for execution in the shared
background thread pool.

Bug: 143434413
Test: manual, robotest
Change-Id: I149b5926f20acd0e43c4071cc35520c6bc50efef
Merged-In: I149b5926f20acd0e43c4071cc35520c6bc50efef
(cherry picked from commit ab21b8a838)
2019-11-12 16:32:01 +08:00
Philip P. Moltmann
43f6144e21 Merge "Update PermissionChecker usages to avoid unnecessary attribution." into qt-dev
am: 0a71df1f7e

Change-Id: I658626de14fa325e08db3aead53707d8d3e00d3b
2019-10-04 11:43:06 -07:00
Svet Ganov
7fe065eb66 Update PermissionChecker usages to avoid unnecessary attribution.
We had accidental usages of the PermissionChecker for cases where no
private data was provided to the app but the checkPermission API on
the latter also did blame data access on the app. The PermissionChecker
was designed to handle IPC calls and not for generic API checks.

To avoid future accidental incorrect PermissionChecker usages this
change renames the existing APIs of the latter to clearly indicate
that they should be used for data delivery and also adds sibling
methods for doing the same permission checks for preflight purposes.
Also the documentation is improved to furhter assist developers.

In addition, this change fixes accidental permission checker usages
that blame when they should not by using the new preflight flavor
of the permission check APIs.

Test:
    atest com.android.settingslib.location.RecentLocationAppsTest
    atest CtsPermissionTestCases
    added: LocationAccessCheckTest#notificationOnlyForAccessesSinceFeatureWasEnabled
    added: LocationAccessCheckTest#noNotificationIfFeatureDisabled
    added: LocationAccessCheckTest#noNotificationIfBlamerNotSystemOrLocationProvider
    added: LocationAccessCheckTest#testOpeningLocationSettingsDoesNotTriggerAccess

bug:141028068
Merged-In: I65c71569d0dd8a40bc6fecabb22c5373dd6e806e
Change-Id: I65c71569d0dd8a40bc6fecabb22c5373dd6e806e
2019-10-03 21:58:13 +00:00
Zongheng Wang
596b6f71b4 Merge "Set default phonebook access to ACCESS_REJECTED when user didn't choose one" into qt-dev
am: 4e4b2875d5

Change-Id: I370cf06dd4cf268663a062b0b0d7cd4dea6dd0e2
2019-09-10 18:15:58 -07:00
Zongheng Wang
efdcff2452 Set default phonebook access to ACCESS_REJECTED when user didn't choose
one

When there's no users' choice to tell us whether to share their
phonebook information to the Bluetooth device, set the phonebook access
permission to ACCESS_REJECTED.

Bug: 138529441
Test: Manual test
Change-Id: Iefabeb731b941f09fe1272ac7b7cd2feba75c8df
Merged-In: Iefabeb731b941f09fe1272ac7b7cd2feba75c8df
(cherry picked from commit 810c6d2117)
2019-09-09 22:33:55 +00:00
Quang Luong
c825db1194 Do not set AccessPoint.ssid to config.SSID for Passpoint networks
On each WifiTracker scan, existing Passpoint AccessPoints are updated
by update(config) with a WifiConfiguration returned by the framework
and then updated with fresh scan results through setScanResults().
Since the Passpoint WifiConfigurations given to update(config) have
null SSID, the call to setScanResults() sets the config.SSID to the
SSID of the strongest scan result. However, update(config) also sets
AccessPoint.ssid to config.SSID, which means the UI may display a blank
SSID before the call to setScanResults() sets it to the correct SSID.
Thus, update(config) should not set AccessPoint.ssid to config.SSID if
the AccessPoint is for Passpoint.

Bug: 137282522
Test: manual - connect to Passpoint network, validate SSID in network
details page.
Change-Id: I2218c1217de3e4fe48e40114a3ea8ceab3d845f2
2019-07-16 14:46:52 -07:00
Malcolm Chen
ac56a4254e Provide @hide API to return merged IMSIs from grouping.
Bug: 135105735
Test: test app. Apply grouping and call the new API, to make sure
it returns correct values.

Change-Id: I99586976d3421d4b35be465201ee33cbb2dfd1d9
2019-07-11 13:19:36 -07:00
Lei Yu
68178f853b Merge "Use old API to build NetworkTemplate" into qt-dev
am: e5fdc968a0

Change-Id: I35702ae50d5274defd6974245bf1209ad3a0115f
2019-07-10 11:07:38 -07:00
Lei Yu
e5fdc968a0 Merge "Use old API to build NetworkTemplate" into qt-dev 2019-07-10 17:27:58 +00:00
Chienyuan
991b628a09 [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277 am: 9ac58f09c3 am: 181fb5b929 am: e6bf153855 am: 3aaf2811fc am: df484ced0b am: 2a547afdfa am: b36f88020e am: 60aad1a06f
am: 5f70ebf52c

Change-Id: Id4c1a257b04515a03828a33229e5630c75c56ac2
2019-07-09 22:33:28 -07:00
Chienyuan
5f70ebf52c [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277 am: 9ac58f09c3 am: 181fb5b929 am: e6bf153855 am: 3aaf2811fc am: df484ced0b am: 2a547afdfa am: b36f88020e
am: 60aad1a06f

Change-Id: I59696232bedf6bc978f66efd8f5df2ec2fb3336a
2019-07-09 22:23:46 -07:00
Chienyuan
60aad1a06f [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277 am: 9ac58f09c3 am: 181fb5b929 am: e6bf153855 am: 3aaf2811fc am: df484ced0b am: 2a547afdfa
am: b36f88020e

Change-Id: I34205b247a3261c940c9704f8b3f03bd10ec3238
2019-07-09 22:06:03 -07:00
Chienyuan
b36f88020e [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277 am: 9ac58f09c3 am: 181fb5b929 am: e6bf153855 am: 3aaf2811fc am: df484ced0b
am: 2a547afdfa

Change-Id: I0ec4664b3654fb0b8397a89b8948183413d7d522
2019-07-09 21:47:21 -07:00
Chienyuan
2a547afdfa [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277 am: 9ac58f09c3 am: 181fb5b929 am: e6bf153855 am: 3aaf2811fc
am: df484ced0b

Change-Id: I174f1594f8f7ae21979398ba29b961e95bd47c75
2019-07-09 21:33:15 -07:00
Lei Yu
5e955861f9 Use old API to build NetworkTemplate
Use old API to be consistent with NetworkPolicyManagerService

Bug: 135105735
Test: RunSettingsLibRoboTests & Manual test
Change-Id: I5d04cfd962c3d09cac7d33a97f847771074ab258
2019-07-09 17:18:49 -07:00
Android Build Merger (Role)
df484ced0b [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277 am: 9ac58f09c3 am: 181fb5b929 am: e6bf153855 am: 3aaf2811fc
Change-Id: Id1233680c478ff3367d69375056dd5d0bc1867ff
2019-07-09 07:11:53 +00:00
Android Build Merger (Role)
3aaf2811fc [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277 am: 9ac58f09c3 am: 181fb5b929 am: e6bf153855
Change-Id: Ieb2eab9943a3fde047fbfe947ccad105a5f7160d
2019-07-09 07:11:47 +00:00
Android Build Merger (Role)
181fb5b929 [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277 am: 9ac58f09c3
Change-Id: I231941e32409574af8c15fe9e763169fe09b279f
2019-07-09 07:11:36 +00:00
Android Build Merger (Role)
9ac58f09c3 [automerger] HidProfile: sync isPreferred() with HidHostService am: 830217f277
Change-Id: If9cb4de9ab510f1ddfff44a404a0a248cf9103dc
2019-07-09 07:11:28 +00:00
Chienyuan
830217f277 HidProfile: sync isPreferred() with HidHostService
HidHostService allow to connect when priority is PRIORITY_UNDEFINED.
HidProfile should return ture when priority is PRIORITY_UNDEFINED.
Otherwise, the "Input device" toggle in off state when HID device
connected.

Bug: 132456322
Test: manual
Change-Id: Id7bae694c57aec17e019d591c0a677e3cb64f845
2019-07-09 15:09:56 +08:00
Amin Shaikh
408d2d312d Update SignalDrawable X path drawing.
- Use config resources to specify svg path and cutout width / height
- Specify these resources for all 3 themes

Fixes: 133343689
Test: mp res sysuig; demo mode; manually change themes
Change-Id: Ic29e5da541330c1aa99b0e82e46a14dbb10d7940
2019-06-27 16:49:05 -04:00
Beverly
5090f7da48 Log Preference changes when value is a String
As long as the String can be converted to an integer

Test: atest SharedPreferenceLoggerTest
Fixes: 135937584
Change-Id: If58077c9c7b10373c4c2459d275add25a5bcdc05
2019-06-24 16:41:37 -04:00
Arc Wang
b85c1276c7 Merge "[Wi-Fi] Support transition mode in AccessPoint#matches" into qt-dev
am: 1b9e062d24

Change-Id: Ib87bdb31a9cb3996f8acc9966a51e1c171f3022f
2019-06-19 10:15:39 -07:00
Arc Wang
04bb4b82c6 [Wi-Fi] Support transition mode in AccessPoint#matches
When enrolling Wi-Fi network with Settings Wi-Fi QR code scanner,
it will compare Wi-Fi network information between QR code and
all reachable Wi-Fi networks before connecting.

This change supports to enroll Wi-Fi networks from a Wi-Fi AP
of transition mode.

Bug: 134706055
Test: Scan a QR code of open network, verify connection
      Scan a QR code of OWE network, verify connection
      Scan a QR code of WPA3 network, verify connection
      Scan a QR code of WPA3 network, verify transition mode connection

Change-Id: Ifc470cbcde7f33ffd76c9f6a8606cabda78a88cd
2019-06-19 11:20:58 +08:00
Amin Shaikh
efe9f0523d Merge "Invalidate SignalDrawable on level change." into qt-dev
am: fb5526ce13

Change-Id: I681e8c822dfcf612c949f1e92ff9120401bf49cb
2019-06-13 07:26:15 -07:00
Amin Shaikh
b7e99e1f33 Invalidate SignalDrawable on level change.
This regression was introduced by ag/7248138. Previously, changes to the
level always caused drawable invalidation, but currently invalidation
only occurs on signal level changes (not cutout or carrier change state
changes). This change fixes this behavior to invalidate the signal
drawable on all level changes.

Fixes: 134621165
Test: sysui demo mode
Change-Id: I5e14480a61fde5a0f7fdce781ae4a42a97e5d88a
2019-06-12 16:45:11 +00:00
Lifu Tang
f5076dfc51 Filter "Android System" from recent location apps
Bug: 134674484
Test: build, flash, and test manually
Change-Id: I86879e034b6605a4d3db2024f5e27601a45580fd
2019-06-10 22:05:04 +00:00
Quang Luong
8e13ea659e Merge "Made AccessPoint's scan result list thread safe" into qt-dev 2019-06-10 21:37:43 +00:00
Quang Luong
9574a1beb4 Made AccessPoint's scan result list thread safe
If wifi verbose logging is enabled, the main thread may iterate through
the scan result list while the worker thread updates it, resulting in
an ArrayIndexOutOfBounds exception. This change adds a lock to every
iteration through mScanResults and mExtraScanResults.

Bug: 134098126
Test: atest WifiTrackerTest && atest AccessPointTest
Change-Id: If42a9ad8031ff66b1732a79772ba441185f7a18f
2019-06-07 14:06:24 -07:00
Quang Luong
4c23e8cbfb Unsaved carrier wifi connection should display carrier in summary
Autoconnected carrier wifi should display "Connected via <carrier>"
in the wifi picker even if the network has not been saved.

Bug: 134525097
Test: atest AccessPointTest
Change-Id: Id28daec3f80124f5329386ef5ff2b32cda505355
2019-06-07 12:04:25 -07:00
Lei Yu
2a31c40e45 Use new API to build NetworkTemplate
This CL is built to make CBRS show correct data usage, by merging
all subscriberId under same groupuuid

Bug: 133865338
Test: RunSettingsLibRoboTests
Change-Id: I1c5084ff98ac9a71655cc93698f3e02268654977
2019-05-31 13:40:54 -07:00
Antony Sargent
c026de3dbf Move config for inflateSignalStrength
This moves the config files for determining the inflateSignalStrength
boolean into frameworks/base/core/res, and adds a utility method in
SettingsLib for retrieving it. This is needed so we can display
per-subscription signal strength icons in the DSDS header on the
Settings Network & internet page that match what SysUI shows.

Bug: 128855095
Test: manual, existing tests should pass
Change-Id: I57032f022439b2de3f7bf57757b2a49dc7eccfe1
2019-05-28 09:31:19 -07:00
Salvador Martinez
ade071d6c2 Merge "Add function to query last estimate time to Estimate" into qt-dev 2019-05-20 21:22:23 +00:00
Narayan Kamath
e1bbd0b1d2 Merge "SettingsLib: Add an API method to query whether a package is a system module." into qt-dev 2019-05-20 07:42:53 +00:00
Salvador Martinez
5b84fde6af Add function to query last estimate time to Estimate
This just adds a centralized place to query for the last update
time so that people don't implement it with different defaults
or something like that.

Test: in sister CL
Bug: 132751712
Change-Id: I10769eaa2e4c2ec613397988a264228a9474d1d6
2019-05-17 15:43:16 -07:00
Philip P. Moltmann
4f09b09f62 Merge "Whitelist all perms on installExistingPackage" into qt-dev 2019-05-17 19:56:19 +00:00
Lei Yu
b899f8abdd Merge "Add short version bluetooth device summary" into qt-dev 2019-05-16 18:18:45 +00:00
Philip P. Moltmann
a4bd150588 Whitelist all perms on installExistingPackage
The code allows to also whitelist only a select set of permissions, but
this is not yet exposed in the API.

Also: Fix up shell commands for restricted permissions

Fixes: 132368462
Test: - Enabled app via device admin in secondary profile
        -> verified that permissions were whitelisted
      - Installed existing and new app using --restrictpermissions and
        not
	-> verified that permissions were whitelisted or not
      atest AppRestrictionsHelperTest
            RestrictedPermissionsTest
Change-Id: I9cd76c555b40663f2e25ad86e8a54991baae346c
Merged-In: I9787e63d8beb8f6b1ba2d15532d4c0f69dbdf863
2019-05-15 11:09:45 -07:00
Narayan Kamath
97e6c3afb0 SettingsLib: Add an API method to query whether a package is a system module.
Modules may not necessarily be hidden, but we would still like to
prevent them from being disabled as they may contain critical system
functionality.

Bug: 131927465
Test: atest ApplicationsStateTest

Change-Id: I38995ecce7f517642c51a1145b1fd294638cb786
2019-05-15 18:19:11 +01:00