Commit Graph

20989 Commits

Author SHA1 Message Date
Ayush Sharma
1a847ee7cb Don't ret admin info from createAdminSupportIntent
As part of fixing the security vulnerability(b/192245204), do not
return admin package details in the returned
Intent(ACTION_SHOW_ADMIN_SUPPORT_DETAILS) from createAdminSupportIntent
API. Insted introduce an API to return admin info given user and
restriction, this API will be used by the Activity that handles the
Intent returned by createAdminSupportIntent API.

Bug: 192245204
Test: atest MixedDeviceOwnerTest#testCreateAdminSupportIntent
      atest MixedProfileOwnerTest#testCreateAdminSupportIntent
      atest MixedManagedProfileOwnerTest#testCreateAdminSupportIntent
      atest DevicePolicyManagerTest#testCreateAdminSupportIntent

Change-Id: I3ed502a078eebac62e0b8a27f6302410c22111e4
Merged-In: I3ed502a078eebac62e0b8a27f6302410c22111e4
2021-09-16 12:14:05 +00:00
Charles Chen
c72d4fc175 Merge "[RESTRICT AUTOMERGE] Send DA's config directly when attaching to DA" into sc-qpr1-dev 2021-09-15 13:29:40 +00:00
Charles Chen
37430c5ba8 [RESTRICT AUTOMERGE] Send DA's config directly when attaching to DA
WindowContext relies on WindowTokenClient#onConfigurationChanged after
calling WMS#attachWindowContextToDisplayArea.
However, it took some time to wait for onConfigurationChanged callback
from the server side so that we may get a stale value right after
creating WindowContext.
This confuses developers especially when the foreground activity is in
size compat mode or freeform because the process config is overridden
by activity's config.
This CL makes #attachWindowContextToDisplayArea return DA's configuration
and applies to WindowContext direcly.
It also benefits WindowProviderService because it can obtain DA's
 configuration before onCreate() based on [1] and this CL.

Bug: 190019118
Bug: 190745506
Bug: 198298520
Test: manual - 1. launch an Activity in size compat mode
               2. create a WindowContext and verify if WindowMetrics
                  matches DA bounds.
Test: atest WindowContextTest WindowContextTests
Test: atest WindowContextControllerTest ContextGetDisplayTest
[1]: dd4a748af0

Change-Id: I8dd3987b731662502bc01e9d2ed67e718ada5f46
2021-09-14 03:06:50 +00:00
Wu Ahan
a3921a91f4 Merge "DO NOT MERGE: Fix temporary black after setting a new image wallpaper" into sc-qpr1-dev 2021-09-13 15:54:44 +00:00
Ahan Wu
7af300eea6 DO NOT MERGE: Fix temporary black after setting a new image wallpaper
Sometimes see temporary black wallpaper after setting a new image
wallpaper because of:
- decode bitmap twice, results in long latency until drawing.
- the set wallpaper apis didn't sync with wallpaper rendering well.
Solutions:
- Only decode bitmap when necessary.
- Make set wallpaper apis wait for image wallpaper rendering finished.

Bug: 194080642
Test: see b/194080642#comment3
Test: atest WallpaperManagerServiceTests --iterations 50
Test: atest SystemUITests
Change-Id: I369eff5195571161cf286b3ec97175481b02eed7
2021-09-13 18:53:27 +08:00
Jeff DeCew
2f0616bd79 Merge changes I0fc3b7ae,I712e6d6b into sc-qpr1-dev
* changes:
  Reduce the color contrast requirements for the emphasized action button fill color.
  Refactor the color span code inside Notification.java and add tests.
2021-09-10 15:28:37 +00:00
Jeff DeCew
050a0d0d64 Reduce the color contrast requirements for the emphasized action button fill color.
This reduces the contrast requirement between the notification background and the button fill from 3:1 to 1.3:1

Fixes: 196393060
Test: manual testing using the go/notify2-apk and the CallStyle color customizer
Test: android.app.NotificationTest
Change-Id: I0fc3b7ae1ede7afd28974c59fa2a58d7fea2e9de
2021-09-09 15:00:00 -04:00
Jeff DeCew
5cb7307ebb Refactor the color span code inside Notification.java and add tests.
* This makes it easy to reduce the contrast requirement between the notification background and the button fill in another review.
* This also fixes a bug where partial-length color spans within the emphasized buttons would be contrast-adjusted only with the notification background color rather than the button fill color.

Bug: 196393060
Fixes: 197572220
Test: manual testing using the go/notify2-apk and the CallStyle color customizer
Test: android.app.NotificationTest
Change-Id: I712e6d6b2da1de89afeacda7bd2fc4ad24632811
2021-09-09 14:59:59 -04:00
Hyunyoung Song
c0992e4ec4 Merge "fix a bug that extra is not actually set to the query." into sc-qpr1-dev 2021-09-03 03:28:43 +00:00
Tim Van Patten
4de992c9cb Merge "Enable ANGLE as a Game Dashboard Intervention" into sc-qpr1-dev 2021-09-01 00:10:33 +00:00
Tim Van Patten
08c3f5b379 Enable ANGLE as a Game Dashboard Intervention
Enable ANGLE as a Game Dashboard intervention via Phenotype.

Bug: b/188475576
Test: GameManagerServiceTests
Change-Id: I91894a76b8dcf7a97244cff679a501001734f671
Merged-In: I91894a76b8dcf7a97244cff679a501001734f671
(cherry picked from commit acf3851b8f)
2021-08-31 15:08:38 -06:00
Jing Ji
9fd02e1b76 Merge "Use ArrayMap instead of SparseArray to manage the ProviderKey" into sc-dev am: d5ea86eaf0
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15664720

Change-Id: Ic1e72abe6ee64f763ec67c8c84de88c386943791
2021-08-31 06:04:45 +00:00
Jing Ji
d5ea86eaf0 Merge "Use ArrayMap instead of SparseArray to manage the ProviderKey" into sc-dev 2021-08-31 05:48:08 +00:00
Julia Reynolds
cc547d33e5 Revert "Don't restore notification channel if its sound is unavailable"
This reverts commit 6a5ca92e75.

Reason for revert: This is affecting notification channels that are using the system sound and is resulting in users losing most of their notification settings

Change-Id: I350cf8190eec6296a597bef38b711900336ddf75
Fixes: 197129198
2021-08-30 20:30:57 +00:00
Chilun
e6692e20e6 [RESTRICT AUTOMERGE] Workaround to dump error log instead of exception am: f8fc1326f7
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15690060

Change-Id: I8107e094cd6182434683d359a52d9e0855c48221
2021-08-29 16:27:20 +00:00
Chilun
f8fc1326f7 [RESTRICT AUTOMERGE] Workaround to dump error log instead of exception
This is a short-term workaround to dump error log instead of throwing
the exception to unblock the test.

Bug: 197484331
Test: build pass
Change-Id: I2ece3b9d85edc1ae43038e6f69b35f59b160a3dd
2021-08-27 10:41:41 +00:00
Jing Ji
119dd01b49 Use ArrayMap instead of SparseArray to manage the ProviderKey
As the ArrayMap handles the hash code collision properly.

Bug: 197647956
Test: atest CtsContentTestCases:android.content.cts
Change-Id: Ibb57a22c08b0fa5462505d586d5fb0aaf908c80f
2021-08-24 11:42:58 -07:00
Govinda Wasserman
8de1c313e6 Allow BackupHelper to be overridden
This will allow vendor versions of System UI to backup their
vendor-specific data.

Test: Tested locally
BUG: 195548201
Change-Id: Iebf512104be2a8fa0dfb614af12d95ed6a3625eb
2021-08-19 12:30:40 -04:00
Jeff DeCew
0c43fe4e92 Merge "Make foreground color selection in SmartReplyView and RemoteInputView match Notification." into sc-qpr1-dev 2021-08-17 18:59:51 +00:00
Jeff DeCew
2bd5f502fd Make foreground color selection in SmartReplyView and RemoteInputView match Notification.
Fixes: 196585371
Test: post colorized notification with luminance between .2 and .5; validate that smart replies and remote input use black text to match the notification.
Change-Id: I5ea69181755ed5c2b48352a0379ae4e898202e21
Merged-In: I5ea69181755ed5c2b48352a0379ae4e898202e21
2021-08-16 14:37:42 +00:00
Jeff DeCew
d8054270e7 Use tertiary accent color for expander with unread count.
Fixes: 196586577
Test: visual inspection
Test: atest android.app.NotificationTest
Change-Id: I09b3999ad1c51615fbf7c8027dc65e6750721f18
2021-08-16 14:19:13 +00:00
synch
00f00ace62 fix a bug that extra is not actually set to the query.
Bug: 196294479
Test: manually
Change-Id: I765ac6b996880c607aee4ed5e627c1c33bde2b6d
2021-08-12 14:44:22 +08:00
Makoto Onuki
0c1dc2fc76 Merge "Clarify how FGS restriction won't apply STICKY FGS restarts" into sc-dev 2021-08-11 21:17:20 +00:00
Makoto Onuki
5031c3a4f6 Clarify how FGS restriction won't apply STICKY FGS restarts
Fix: 195780554
Test: build
Change-Id: Ic627a89ac863729d36554070d04c22254747f014
2021-08-06 21:43:31 +00:00
Ruslan Tkhakokhov
21f45cd998 Handle empty <cloud-backup> section in android:dataExtractionRules
Currently the <cloud-backup> section in android:dataExtractionRules is
ignored unless it contains rules. Instead, we should interpret it as
'everything other than cache and no-backup dirs is eligible for cloud
backup'.

Bug: 195095045
Test: 1. atest BackupEligibilityHostSideTest
      2. Use a test app with empty <cloud-backup> section to manually
      test:
          2.1. Empty section - everything is backed up
	  2.2. Empty section but "disableIfNoEncryptionCapabilitites"
	  set to "true" - data only backed up if the transport supports
	  encryption.
Change-Id: Ic8066721a46bda688f9211c51a0f2497e9caf93b
2021-08-06 12:16:05 +00:00
Riddle Hsu
6c675a3a48 Fix NPE when calling recreate in onCreate
ActivityClientRecord#activity is assigned after calling
Activity#onCreate. A use case is that the app uses
support library to set night mode in onCreate.

Bug: 195418295
Test: Invoke Activity#recreate() in Activity#onCreate.
Change-Id: I6319cd6ee94fc2603979da47303963d04168db04
2021-08-04 10:16:41 +08:00
Nate Myren
5d97f29218 Merge "Add attribution info to start callbacks" into sc-dev 2021-08-03 19:56:02 +00:00
Nate Myren
06d07d54db Add attribution info to start callbacks
Add attribution flags and chain IDs to start callbacks, and have the
PermissionUsageHelper listen for starts. This ensures that, if another
start happens while an op is already running, and has chain information,
then this chain information will be recorded.

Test: manual
Bug: 194198234
Change-Id: I0ab1aa0969b70e18001f4a814ea5689f9329a019
2021-08-03 08:25:31 -07:00
Nate Myren
50ff5ac8b8 Merge "Revert sync app op chain changes" into sc-dev 2021-08-03 15:16:35 +00:00
Nate Myren
86c337659a Revert sync app op chain changes
These changes cause some noted app ops to be swallowed due to one-way
app ops.

Fixes: 187721493
Test: atest AppOpsLoggingTest
Change-Id: I3b761b65b2e06138fc1d130bf80587f8885bb1d5
2021-08-02 12:50:44 -07:00
Jeff DeCew
4203db854f Merge "Fix bug removing semantic colors of CallStyle notification actions." into sc-dev 2021-07-29 20:24:37 +00:00
Jeff DeCew
5dae211842 Fix bug removing semantic colors of CallStyle notification actions.
* When we changed the default color of emphasized actions to an accent color instead of the notification background color, I didn't split the two into different locals, and this meant the accent color was used to enforce the color contrast of the custom color.  This led to color desaturation in an attempt to meet contrast (when in dark mode) and a failure to ensure sufficient contrast (in light mode).
* A piece of this that applies specifically to colorized notifications is that we used the 'night mode' state as a shortcut for whether the background was light or dark.  This led to 1) different foreground colors for the same background color, depending on dark mode state, and 2) frequently a failure to meet contrast (and/or extreme desaturation) in one of those modes.
* Also adding different night-mode colors for CallStyle actions, to meet spec.

Test: validated sufficient contrast of default and various colorized background/button combos using the accessibility scanner.
Bug: 194935539
Change-Id: I3a69eadc89f1d9d98a816c44a36873c7615a177e
2021-07-29 11:16:52 -04:00
Chalard Jean
d90d6457fb Fix: ConnectivityManager methods crashing with SecurityException
Starting in R, some methods in ConnectivityManager like
getNetworkCapabilities started passing the package name from
the context stored in CM to check that the package is really
whom it pretends to be. Unfortunately, in some cases, the
context contains package "android" for an app, and since the
app is not the system, the check fails and crashes the app.

It seems the culprit is updateHttpProxy, which is called by
ProcessList when the PROXY_CHANGE_ACTION broadcast is sent.
If this happens to run between the time the process is created
and the activity thread is "bound", then the mInitialApplication
member is not set, and updateHttpProxy uses a system context.
Since ConnectivityManager caches the context forever in a
static, this leads to subsequent legitimate calls crashing.

Setting the proxy can be deffered until such a time that the
app is bound, as it can't run any code before then. The member
is never reset to null, so it's guaranteed to be non-null at
bind time.

An alternative would be to post a runnable on the handler
thread if the member is null to try again later. This
could however run the lambda a considerable number of times
as binding can be delayed, and risks causing an infinite loop
if some invariants are changed in the future.

See also b/73572062 and ag/4056059

Bug: 155549446
Bug: 189360509
Test: ActivityThreadTest FrameworksNetTests NetworkStackTests
Test: Manually set a proxy, observe the broadcast being sent and
      apps not crashing
Change-Id: I956f76be2e0a1a675576511fb394d7ed4354b28a
(cherry picked from commit b0d13e29515d5b7c82daed7533b78ac57e46bd93)
2021-07-29 11:55:37 +09:00
Rubin Xu
28e4c5d57a Merge "Stop managed profile owner granting READ_SMS" into sc-dev 2021-07-27 08:51:15 +00:00
Ahaan Ugale
2db19f5679 Merge "Copy ContentCaptureOptions into derived Contexts" into sc-dev 2021-07-24 01:18:17 +00:00
Alex Johnston
7f632dca95 Stop managed profile owner granting READ_SMS
Reason: There is only one telephony stack shared
between the personal and work profile.

Bug: 194382185
Bug: 189942529
Test: atest com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testGrantOfSensorsRelatedPermissions
      atest com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testDenyOfSensorsRelatedPermissions
      atest com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testSensorsRelatedPermissionsNotGrantedViaPolicy
      atest com.android.cts.devicepolicy.MixedDeviceOwnerTest#testGrantOfSensorsRelatedPermissions
      atest com.android.cts.devicepolicy.MixedDeviceOwnerTest#testDenyOfSensorsRelatedPermissions
      atest com.android.cts.devicepolicy.MixedDeviceOwnerTest#testSensorsRelatedPermissionsNotGrantedViaPolicy
Change-Id: I99384d5713bb2d04f5b6fbe20c17bd72a39b57d7
2021-07-23 17:05:21 +01:00
Ahaan Ugale
0cfcde8d5e Copy ContentCaptureOptions into derived Contexts
When a new Context is created from the Activity Context and used to
inflate views, Content Capture is disabled for those views because the
new Context is missing ContentCaptureOptions.

Fix: 194321297
Test: atest CtsContentCaptureServiceTestCases
Test: manual - view appeared events come through
Change-Id: I934d41953c7668e371d5961b66187ecd15408e3e
2021-07-23 03:24:42 +00:00
Bo Liu
0b2ad9f70d Implement java PerformanceHintManager on top of native
Note some exceptions became silence errors in this conversion.

Test: None
Bug: 194204196
Change-Id: Ia3cc7f2396f2e307a23b40b3f104a2fa90352196
2021-07-22 11:33:13 -04:00
Evan Severson
2b11e7f25c Merge "Don't block intent if op is restricted due to toggles" into sc-dev 2021-07-21 17:10:21 +00:00
Evan Severson
7b6d643171 Don't block intent if op is restricted due to toggles
Test: Create sdk 22 and 30 test apps and use the MEDIASTORE intents
Bug: 192635623
Change-Id: I250a5e398e72919ec8217e87b76273082e781f63
2021-07-21 08:37:00 -07:00
Shuo Qian
2be8f7898d Change the doc to reflect the default status of preferential network service
Test: Build
Bug: 193913733
Change-Id: I648b85c39f9b4e66193188852d649e82371ee90c
2021-07-19 23:24:55 +00:00
TreeHugger Robot
e0c972a2be Merge "Don't allow PI crashes on unknown sender types" into sc-dev 2021-07-15 03:14:15 +00:00
Hongwei Wang
ebe8550d03 Fix letterbox issue when auto-enter-pip from landscape
Included in this CL
- Skip layout of window when in transition to PiP mode
- Pass display cutout info via TaskInfo
- Removed TaskInfoCompat

Video: http://recall/-/aaaaaabFQoRHlzixHdtY/bpKcGg1eoOo5Jz5U6IwBYK
Bug: 191310680
Test: manual, auto-enter-pip from landscape with source rect hint being
      turned on, see the video
Change-Id: Ie657d15d9edb9d07555bd166b5919bb12cb217e6
Merged-In: Ie657d15d9edb9d07555bd166b5919bb12cb217e6
2021-07-13 15:07:18 -07:00
TreeHugger Robot
d2dd630204 Merge "Apply pending AppInfo on Activity override change" into sc-dev 2021-07-12 23:46:03 +00:00
TreeHugger Robot
f59bf68628 Merge "Remove isAppStartModeDisabled binder entry point" into sc-dev 2021-07-12 22:14:30 +00:00
Ryan Mitchell
290e51fce3 Apply pending AppInfo on Activity override change
When the activity override configuration changes, we need to apply any
pending application info changes so that when the activity is
recreated, it will have updated overlays.

Bug: 193256671
Test: change live wallpaper and observe launcher colors
Change-Id: I6b8c25a6e6756f612a0f57c921625bc58ac1ecf6
2021-07-12 22:00:43 +00:00
Jeff DeCew
d14c60be51 Merge "Use SRC_ATOP instead of SRC_IN for blending the NotificationExpandButton" into sc-dev 2021-07-12 19:48:58 +00:00
Svet Ganov
1babd5bf51 Optimize AttributionSource tokens - base
For cases where the attribution soruce doesn't need to be
registered as trusted we are now using a shares static
token since the only purpose of the token in these cases
is for watching the source process dying as opposed to that
and security for registered cases.

bug: 192415943

Test: CtsPermissionTestCases
      CtsPermission2TestCases
      CtsPermission3TestCases
      CtsPermission4TestCases
      CtsPermission5TestCases

Change-Id: I93fde9ca1cacada7929761533dcae11b2736ce1e
2021-07-10 00:24:30 +00:00
Christopher Tate
6054148ef9 Remove isAppStartModeDisabled binder entry point
Obsolete: the use cases for which it was introduced now have a clean
internal API layer to use instead, and this reduces informational
exposure about package presence & states.

Bug: 185513355
Test: atest SyncManagerTest
Test: atest CtsSyncManagerTest
Change-Id: I4aa1848950061dce3a1378f7d0117364e62ba59f
2021-07-09 14:28:37 -07:00
Jeff DeCew
8d6f3cc158 Use SRC_ATOP instead of SRC_IN for blending the NotificationExpandButton
Bug: 191969252
Bug: 193157438
Test: check for number of layers in the scene
Change-Id: I65bd80c71b55582347da1559cf707e9d023b7f13
2021-07-09 15:40:31 -04:00