diff --git a/app/src/main/java/com/owncloud/android/ui/fragment/FileDetailSharingFragment.java b/app/src/main/java/com/owncloud/android/ui/fragment/FileDetailSharingFragment.java index 48a1ac642937..58dfba1f0888 100644 --- a/app/src/main/java/com/owncloud/android/ui/fragment/FileDetailSharingFragment.java +++ b/app/src/main/java/com/owncloud/android/ui/fragment/FileDetailSharingFragment.java @@ -613,9 +613,21 @@ public void refreshSharesFromDB() { } private void addExternalAndPublicShares(List externalShares) { - final var publicShares = fileDataStorageManager.getSharesByPathAndType(file.getRemotePath(), ShareType.PUBLIC_LINK, ""); + final var publicShares = fileDataStorageManager.getSharesByPathAndType( + file.getRemotePath(), ShareType.PUBLIC_LINK, ""); externalShareeListAdapter.removeAll(); final var shares = OCShareExtensionsKt.mergeDistinctByToken(externalShares, publicShares); + + boolean hasNoSecureFileDrop = shares.stream() + .noneMatch(s -> s.getShareType() == ShareType.PUBLIC_LINK + || s.getShareType() == ShareType.NEW_PUBLIC_LINK); + + if (file.isEncrypted() && hasNoSecureFileDrop) { + OCShare placeholder = new OCShare(); + placeholder.setShareType(ShareType.NEW_PUBLIC_LINK); + shares.add(placeholder); + } + externalShareeListAdapter.addShares(shares); }