summaryrefslogtreecommitdiffstats
path: root/src/com/android/browser
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2014-09-22 11:33:50 +0100
committerBen Murdoch <benm@google.com>2014-09-22 11:33:50 +0100
commita1f40f93fc1eb046a06683cafc62205a7ec6ca0c (patch)
treea22630c07971904afd6f6eb30f5adb72d9de6265 /src/com/android/browser
parent481681a1d37ea51a6b1ee53600efeb5013666c58 (diff)
downloadpackages_apps_Browser-a1f40f93fc1eb046a06683cafc62205a7ec6ca0c.zip
packages_apps_Browser-a1f40f93fc1eb046a06683cafc62205a7ec6ca0c.tar.gz
packages_apps_Browser-a1f40f93fc1eb046a06683cafc62205a7ec6ca0c.tar.bz2
Pass ClipData in media capture Intent.
This is necessary to ensure that the capture application has permission to read the URI that we are asking it to save the capture media into. Bug: 17524075 Change-Id: I6337e58f2610005fb22525e9ae45b037e9832db0
Diffstat (limited to 'src/com/android/browser')
-rw-r--r--src/com/android/browser/UploadHandler.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/com/android/browser/UploadHandler.java b/src/com/android/browser/UploadHandler.java
index ab4aff6..87c7897 100644
--- a/src/com/android/browser/UploadHandler.java
+++ b/src/com/android/browser/UploadHandler.java
@@ -18,6 +18,7 @@ package com.android.browser;
import android.app.Activity;
import android.content.ActivityNotFoundException;
+import android.content.ClipData;
import android.content.Intent;
import android.net.Uri;
import android.provider.MediaStore;
@@ -36,6 +37,8 @@ public class UploadHandler {
private final static String VIDEO_MIME_TYPE = "video/*";
private final static String AUDIO_MIME_TYPE = "audio/*";
+ private final static String FILE_PROVIDER_AUTHORITY = "com.android.browser-classic.file";
+
/*
* The Object used to inform the WebView of the file to upload.
*/
@@ -158,7 +161,7 @@ public class UploadHandler {
File mediaFile = File.createTempFile(
String.valueOf(System.currentTimeMillis()), suffix, mediaPath);
return FileProvider.getUriForFile(mController.getActivity(),
- "com.android.browser-classic.file", mediaFile);
+ FILE_PROVIDER_AUTHORITY, mediaFile);
} catch (java.io.IOException e) {
throw new RuntimeException(e);
}
@@ -171,6 +174,8 @@ public class UploadHandler {
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION |
Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
intent.putExtra(MediaStore.EXTRA_OUTPUT, mCapturedMedia);
+ intent.setClipData(ClipData.newUri(mController.getActivity().getContentResolver(),
+ FILE_PROVIDER_AUTHORITY, mCapturedMedia));
return intent;
}