Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstefan-niedermann <info@niedermann.it>2020-02-01 20:39:35 +0300
committerstefan-niedermann <info@niedermann.it>2020-02-01 20:39:35 +0300
commit8ab6bdc033f88b62c6beb1092ace1d5fc1db3ab0 (patch)
tree08045ae698ecda541db5097d64a9406b2a3322bc
parent77771b920f5b37e093015c51d4a8a7df42525fac (diff)
#211 Attachments
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java26
1 files changed, 21 insertions, 5 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java
index 28f77add0..f3288c27c 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java
@@ -1,8 +1,10 @@
package it.niedermann.nextcloud.deck.ui.card;
+import android.Manifest;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
+import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
@@ -12,6 +14,7 @@ import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.coordinatorlayout.widget.CoordinatorLayout;
+import androidx.core.app.ActivityCompat;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.RecyclerView;
@@ -39,6 +42,7 @@ public class CardAttachmentsFragment extends Fragment implements AttachmentAdapt
private static final String TAG = CardAttachmentsFragment.class.getCanonicalName();
private static final int REQUEST_CODE_ADD_ATTACHMENT = 1;
+ private static final int REQUEST_PERMISSION = 2;
private SyncManager syncManager;
@@ -85,11 +89,12 @@ public class CardAttachmentsFragment extends Fragment implements AttachmentAdapt
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT && canEdit) {
fab.setOnClickListener(v -> {
-// Snackbar.make(coordinatorLayout, "Adding attachments is not yet implemented", Snackbar.LENGTH_LONG).show();
- Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
- intent.addCategory(Intent.CATEGORY_OPENABLE);
- intent.setType("*/*");
- startActivityForResult(intent, REQUEST_CODE_ADD_ATTACHMENT);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+ ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},
+ REQUEST_PERMISSION);
+ } else {
+ startFilePickerIntent();
+ }
});
fab.show();
attachmentsList.addOnScrollListener(new RecyclerView.OnScrollListener() {
@@ -111,9 +116,20 @@ public class CardAttachmentsFragment extends Fragment implements AttachmentAdapt
return view;
}
+ private void startFilePickerIntent() {
+// Snackbar.make(coordinatorLayout, "Adding attachments is not yet implemented", Snackbar.LENGTH_LONG).show();
+ Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+ intent.addCategory(Intent.CATEGORY_OPENABLE);
+ intent.setType("*/*");
+ startActivityForResult(intent, REQUEST_CODE_ADD_ATTACHMENT);
+ }
+
@Override
public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
+ if (requestCode == REQUEST_PERMISSION && resultCode == Activity.RESULT_OK) {
+ startFilePickerIntent();
+ }
if (requestCode == REQUEST_CODE_ADD_ATTACHMENT && resultCode == Activity.RESULT_OK) {
Uri uri = null;
if (data != null) {