diff options
| author | 2022-04-04 11:34:05 -0400 | |
|---|---|---|
| committer | 2022-04-04 11:34:05 -0400 | |
| commit | cf85186f9ebc2ceae75bd7d7966828bd3ceb80b8 (patch) | |
| tree | ba0b67cf62452ac2cfff9f1bc3d8ddf4c4b4c338 | |
| parent | f0f06ed20919cb7cd5092b582c7800ec1291514d (diff) | |
Propagate write_uri perms from screenshot to sharesheet
Add the WRITE_URI flag to the share intent, to allow deleting image
from sharesheet -> edit [Markup].
Bug: 227693908
Fix: 227693908
Test: manual
Change-Id: Id00ea1418619bdf31d04542d7d0441a207196b05
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/screenshot/SaveImageInBackgroundTask.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/SaveImageInBackgroundTask.java b/packages/SystemUI/src/com/android/systemui/screenshot/SaveImageInBackgroundTask.java index 41e468d382a3..50ee1f7ba97a 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/SaveImageInBackgroundTask.java +++ b/packages/SystemUI/src/com/android/systemui/screenshot/SaveImageInBackgroundTask.java @@ -246,7 +246,9 @@ class SaveImageInBackgroundTask extends AsyncTask<Void, Void, Void> { new ClipData.Item(uri)); sharingIntent.setClipData(clipdata); sharingIntent.putExtra(Intent.EXTRA_SUBJECT, subject); - sharingIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); + sharingIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION) + .addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION); + // Make sure pending intents for the system user are still unique across users // by setting the (otherwise unused) request code to the current user id. @@ -256,6 +258,7 @@ class SaveImageInBackgroundTask extends AsyncTask<Void, Void, Void> { .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK) .addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); + // cancel current pending intent (if any) since clipData isn't used for matching PendingIntent pendingIntent = PendingIntent.getActivityAsUser( context, 0, sharingChooserIntent, |