summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-04-05 21:49:35 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-04-05 21:49:35 +0000
commit87725c3faa3f5d4e6ed838ad684d2bd49b5d9721 (patch)
tree3528d29d60e907662b1dd8eba94837560e228459
parente24735cae15d6ad6d6ca20d4d30ddce601bfaef4 (diff)
parentcf066d77629043b51b52ba915e904c73c4466b00 (diff)
downloadbase-android13-qpr2-s11-release.tar.gz
Merge cherrypicks of ['googleplex-android-review.googlesource.com/22357084'] into tm-qpr2-release.android-13.0.0_r45android-13.0.0_r44android-13.0.0_r43android13-qpr2-s11-releaseandroid13-qpr2-s10-releaseandroid13-qpr2-release
Change-Id: I27cb9a6ad2101c0019b6feb8a8273fb6b66298b2
-rw-r--r--core/java/com/android/internal/app/ChooserActivity.java35
1 files changed, 2 insertions, 33 deletions
diff --git a/core/java/com/android/internal/app/ChooserActivity.java b/core/java/com/android/internal/app/ChooserActivity.java
index 09c1efb2c638..1fcfe7dd5b6f 100644
--- a/core/java/com/android/internal/app/ChooserActivity.java
+++ b/core/java/com/android/internal/app/ChooserActivity.java
@@ -21,7 +21,6 @@ import static android.app.admin.DevicePolicyResources.Strings.Core.RESOLVER_CANT
import static android.app.admin.DevicePolicyResources.Strings.Core.RESOLVER_CANT_SHARE_WITH_PERSONAL;
import static android.app.admin.DevicePolicyResources.Strings.Core.RESOLVER_CANT_SHARE_WITH_WORK;
import static android.app.admin.DevicePolicyResources.Strings.Core.RESOLVER_CROSS_PROFILE_BLOCKED_TITLE;
-import static android.content.ContentProvider.getUserIdFromUri;
import static android.stats.devicepolicy.DevicePolicyEnums.RESOLVER_EMPTY_STATE_NO_SHARING_TO_PERSONAL;
import static android.stats.devicepolicy.DevicePolicyEnums.RESOLVER_EMPTY_STATE_NO_SHARING_TO_WORK;
@@ -162,7 +161,6 @@ import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.function.Supplier;
-import java.util.stream.Collectors;
/**
* The Chooser Activity handles intent resolution specifically for sharing intents -
@@ -1426,11 +1424,7 @@ public class ChooserActivity extends ResolverActivity implements
String action = targetIntent.getAction();
if (Intent.ACTION_SEND.equals(action)) {
- Uri uri = targetIntent.getParcelableExtra(Intent.EXTRA_STREAM, android.net.Uri.class);
- if (!validForContentPreview(uri)) {
- contentPreviewLayout.setVisibility(View.GONE);
- return contentPreviewLayout;
- }
+ Uri uri = targetIntent.getParcelableExtra(Intent.EXTRA_STREAM);
imagePreview.findViewById(R.id.content_preview_image_1_large)
.setTransitionName(ChooserActivity.FIRST_IMAGE_PREVIEW_TRANSITION_NAME);
mPreviewCoord.loadUriIntoView(R.id.content_preview_image_1_large, uri, 0);
@@ -1440,7 +1434,7 @@ public class ChooserActivity extends ResolverActivity implements
List<Uri> uris = targetIntent.getParcelableArrayListExtra(Intent.EXTRA_STREAM);
List<Uri> imageUris = new ArrayList<>();
for (Uri uri : uris) {
- if (validForContentPreview(uri) && isImageType(resolver.getType(uri))) {
+ if (isImageType(resolver.getType(uri))) {
imageUris.add(uri);
}
}
@@ -1550,16 +1544,9 @@ public class ChooserActivity extends ResolverActivity implements
String action = targetIntent.getAction();
if (Intent.ACTION_SEND.equals(action)) {
Uri uri = targetIntent.getParcelableExtra(Intent.EXTRA_STREAM);
- if (!validForContentPreview(uri)) {
- contentPreviewLayout.setVisibility(View.GONE);
- return contentPreviewLayout;
- }
loadFileUriIntoView(uri, contentPreviewLayout);
} else {
List<Uri> uris = targetIntent.getParcelableArrayListExtra(Intent.EXTRA_STREAM);
- uris = uris.stream()
- .filter(ChooserActivity::validForContentPreview)
- .collect(Collectors.toList());
int uriCount = uris.size();
if (uriCount == 0) {
@@ -1618,24 +1605,6 @@ public class ChooserActivity extends ResolverActivity implements
}
}
- /**
- * Indicate if the incoming content URI should be allowed.
- *
- * @param uri the uri to test
- * @return true if the URI is allowed for content preview
- */
- private static boolean validForContentPreview(Uri uri) throws SecurityException {
- if (uri == null) {
- return false;
- }
- int userId = getUserIdFromUri(uri, UserHandle.USER_CURRENT);
- if (userId != UserHandle.USER_CURRENT && userId != UserHandle.myUserId()) {
- Log.e(TAG, "dropped invalid content URI belonging to user " + userId);
- return false;
- }
- return true;
- }
-
@VisibleForTesting
protected boolean isImageType(String mimeType) {
return mimeType != null && mimeType.startsWith("image/");