From 5d06f040e80a16cd93cca256af3498d72d219e78 Mon Sep 17 00:00:00 2001 From: x0b Date: Thu, 6 Feb 2020 16:48:44 +0100 Subject: [PATCH] Fix deletable flags in DocumentProvider A file is deletable if the _parent_ is writable, not the file itself. --- .../java/com/termux/filepicker/TermuxDocumentsProvider.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/termux/filepicker/TermuxDocumentsProvider.java b/app/src/main/java/com/termux/filepicker/TermuxDocumentsProvider.java index 16c697eb..6a849040 100644 --- a/app/src/main/java/com/termux/filepicker/TermuxDocumentsProvider.java +++ b/app/src/main/java/com/termux/filepicker/TermuxDocumentsProvider.java @@ -248,10 +248,11 @@ public class TermuxDocumentsProvider extends DocumentsProvider { int flags = 0; if (file.isDirectory()) { - if (file.isDirectory() && file.canWrite()) flags |= Document.FLAG_DIR_SUPPORTS_CREATE; + if (file.canWrite()) flags |= Document.FLAG_DIR_SUPPORTS_CREATE; } else if (file.canWrite()) { - flags |= Document.FLAG_SUPPORTS_WRITE | Document.FLAG_SUPPORTS_DELETE; + flags |= Document.FLAG_SUPPORTS_WRITE; } + if (file.getParentFile().canWrite()) flags |= Document.FLAG_SUPPORTS_DELETE; final String displayName = file.getName(); final String mimeType = getMimeType(file);