Selaa lähdekoodia

combine share logic

Signed-off-by: alperozturk <alper_ozturk@proton.me>
alperozturk 7 kuukautta sitten
vanhempi
commit
3f9e563dea

+ 15 - 0
app/src/main/java/com/nextcloud/utils/mdm/MDMConfig.kt

@@ -58,6 +58,21 @@ object MDMConfig {
         return sendFilesToOtherApp && !disableShareViaMDM
     }
 
+    fun sharingSupport(context: Context): Boolean {
+        val disableShareViaMDM = context.getRestriction(
+            AppConfigKeys.DisableSharing,
+            context.resources.getBoolean(R.bool.disable_sharing)
+        )
+
+        val sendFilesToOtherApp = "on".equals(context.getString(R.string.send_files_to_other_apps), ignoreCase = true)
+
+        val shareViaUsers = context.resources.getBoolean(R.bool.share_with_users_feature)
+
+        val shareViaLink = context.resources.getBoolean(R.bool.share_via_link_feature)
+
+        return sendFilesToOtherApp && shareViaLink && shareViaUsers && !disableShareViaMDM
+    }
+
     fun clipBoardSupport(context: Context): Boolean {
         val disableClipboardSupport = context.getRestriction(
             AppConfigKeys.DisableClipboard,

+ 2 - 4
app/src/main/java/com/owncloud/android/ui/adapter/OCFileListAdapter.java

@@ -36,8 +36,8 @@ import com.nextcloud.client.account.User;
 import com.nextcloud.client.database.entity.OfflineOperationEntity;
 import com.nextcloud.client.jobs.upload.FileUploadHelper;
 import com.nextcloud.client.preferences.AppPreferences;
-import com.nextcloud.model.OfflineOperationType;
 import com.nextcloud.model.OCFileFilterType;
+import com.nextcloud.model.OfflineOperationType;
 import com.nextcloud.utils.extensions.ViewExtensionsKt;
 import com.nextcloud.utils.mdm.MDMConfig;
 import com.owncloud.android.MainApp;
@@ -460,9 +460,7 @@ public class OCFileListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
 
             updateLivePhotoIndicators(gridViewHolder, file);
 
-            if (!MDMConfig.INSTANCE.shareViaLink(activity) ||
-                !MDMConfig.INSTANCE.shareViaUser(activity) ||
-                !MDMConfig.INSTANCE.sendFilesSupport(activity)) {
+            if (!MDMConfig.INSTANCE.sharingSupport(activity)) {
                 gridViewHolder.getShared().setVisibility(View.GONE);
             }
         }

+ 1 - 1
app/src/main/java/com/owncloud/android/ui/adapter/OCFileListDelegate.kt

@@ -370,7 +370,7 @@ class OCFileListDelegate(
     private fun showShareIcon(gridViewHolder: ListViewHolder, file: OCFile) {
         val sharedIconView = gridViewHolder.shared
 
-        if (!MDMConfig.shareViaLink(context) || !MDMConfig.shareViaUser(context) || !MDMConfig.sendFilesSupport(context)) {
+        if (!MDMConfig.sharingSupport(context)) {
             sharedIconView.visibility = View.GONE
             return
         }