summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGary Kipnis <gkipnis@cyngn.com>2016-06-07 16:56:44 -0700
committerMichael Bestas <mkbestas@lineageos.org>2018-01-21 21:57:19 +0200
commita6c4425c696348ce41f77a32d5584b90edee04d6 (patch)
tree4e4d87343910d374d96d5d10aa04fc4b277faa4b
parent71582f41326d94d9d50d6bcbb4464a854d4c0bd6 (diff)
downloadandroid_packages_apps_Messaging-a6c4425c696348ce41f77a32d5584b90edee04d6.tar.gz
android_packages_apps_Messaging-a6c4425c696348ce41f77a32d5584b90edee04d6.tar.bz2
android_packages_apps_Messaging-a6c4425c696348ce41f77a32d5584b90edee04d6.zip
Fixed storage permission issue for attachments
When Storage Permissions were being requested and granted, they were applied to either the Gallery (image & video) or Audio tab. This patch makes sure that the permissions are propagated to both. Change-Id: Ic8a3316616fad6fdf1cbc771aba360a031db88ad TicketId: Kipper-587 TicketId: Crackling-937 TicketId: Feij-143 TicketId: Porridge-64
-rw-r--r--src/com/android/messaging/ui/mediapicker/AudioListChooser.java7
-rw-r--r--src/com/android/messaging/ui/mediapicker/GalleryMediaChooser.java4
-rw-r--r--src/com/android/messaging/ui/mediapicker/MediaPicker.java1
3 files changed, 9 insertions, 3 deletions
diff --git a/src/com/android/messaging/ui/mediapicker/AudioListChooser.java b/src/com/android/messaging/ui/mediapicker/AudioListChooser.java
index 2ce42b3..de0445c 100644
--- a/src/com/android/messaging/ui/mediapicker/AudioListChooser.java
+++ b/src/com/android/messaging/ui/mediapicker/AudioListChooser.java
@@ -174,6 +174,9 @@ class AudioListChooser extends MediaChooser implements
// Work around a bug in MediaStore where cursors querying the Files provider don't get
// updated for changes to Images.Media or Video.Media.
startMediaPickerDataLoader();
+ updateForPermissionState(true);
+ } else {
+ updateForPermissionState(false);
}
}
@@ -183,7 +186,7 @@ class AudioListChooser extends MediaChooser implements
if (selected && !OsUtil.hasStoragePermission()) {
mMediaPicker.requestPermissions(
new String[] { Manifest.permission.READ_EXTERNAL_STORAGE },
- MediaPicker.GALLERY_PERMISSION_REQUEST_CODE);
+ MediaPicker.AUDIO_LIBRARY_PERMISSION_REQUEST_CODE);
}
}
@@ -195,7 +198,7 @@ class AudioListChooser extends MediaChooser implements
@Override
protected void onRequestPermissionsResult(
final int requestCode, final String permissions[], final int[] grantResults) {
- if (requestCode == MediaPicker.GALLERY_PERMISSION_REQUEST_CODE) {
+ if (requestCode == MediaPicker.AUDIO_LIBRARY_PERMISSION_REQUEST_CODE) {
final boolean permissionGranted = grantResults[0] == PackageManager.PERMISSION_GRANTED;
if (permissionGranted) {
startMediaPickerDataLoader();
diff --git a/src/com/android/messaging/ui/mediapicker/GalleryMediaChooser.java b/src/com/android/messaging/ui/mediapicker/GalleryMediaChooser.java
index eae03eb..0b72a40 100644
--- a/src/com/android/messaging/ui/mediapicker/GalleryMediaChooser.java
+++ b/src/com/android/messaging/ui/mediapicker/GalleryMediaChooser.java
@@ -24,7 +24,6 @@ import android.database.MergeCursor;
import android.provider.Telephony;
import android.support.v7.app.ActionBar;
import android.support.v7.mms.CarrierConfigValuesLoader;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
@@ -196,6 +195,9 @@ class GalleryMediaChooser extends MediaChooser implements
// Work around a bug in MediaStore where cursors querying the Files provider don't get
// updated for changes to Images.Media or Video.Media.
startMediaPickerDataLoader();
+ updateForPermissionState(true);
+ } else {
+ updateForPermissionState(false);
}
}
diff --git a/src/com/android/messaging/ui/mediapicker/MediaPicker.java b/src/com/android/messaging/ui/mediapicker/MediaPicker.java
index 7842e3b..6692620 100644
--- a/src/com/android/messaging/ui/mediapicker/MediaPicker.java
+++ b/src/com/android/messaging/ui/mediapicker/MediaPicker.java
@@ -726,6 +726,7 @@ public class MediaPicker extends Fragment implements DraftMessageSubscriptionDat
protected static final int LOCATION_PERMISSION_REQUEST_CODE = 2;
protected static final int RECORD_AUDIO_PERMISSION_REQUEST_CODE = 3;
protected static final int GALLERY_PERMISSION_REQUEST_CODE = 4;
+ protected static final int AUDIO_LIBRARY_PERMISSION_REQUEST_CODE = 5;
@Override
public void onRequestPermissionsResult(