Browse Source

Sharing menus aren't visible anymore for shared files without resharing permissions #1176

Victor Nidens 7 years ago
parent
commit
ec322ff8a8

+ 10 - 6
src/main/java/com/owncloud/android/ui/fragment/FileDetailFragment.java

@@ -285,6 +285,15 @@ public class FileDetailFragment extends FileFragment implements OnClickListener,
             item.setVisible(false);
             item.setEnabled(false);
         }
+
+        if(getFile().isSharedWithMe() && !getFile().canReshare()){
+            // additional restriction for this fragment
+            item = menu.findItem(R.id.action_share_file);
+            if(item != null){
+                item.setVisible(false);
+                item.setEnabled(false);
+            }
+        }
     }
 
 
@@ -295,12 +304,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener,
     public boolean onOptionsItemSelected(MenuItem item) {
         switch (item.getItemId()) {
             case R.id.action_share_file: {
-                if(getFile().isSharedWithMe()
-                        && (mContainerActivity.getStorageManager().getCapability(mContainerActivity.getStorageManager().getAccount().name).getFilesSharingResharing().isFalse() || !getFile().canReshare())){
-                    Snackbar.make(mView, R.string.resharing_is_not_allowed, Snackbar.LENGTH_LONG).show();
-                } else {
-                    mContainerActivity.getFileOperationsHelper().showShareFile(getFile());
-                }
+                mContainerActivity.getFileOperationsHelper().showShareFile(getFile());
                 return true;
             }
             case R.id.action_open_file_with: {

+ 1 - 2
src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java

@@ -913,8 +913,7 @@ public class OCFileListFragment extends ExtendedListFragment implements OCFileLi
             OCFile singleFile = checkedFiles.get(0);
             switch (menuId) {
                 case R.id.action_share_file: {
-                    if(singleFile.isSharedWithMe()
-                            && (mContainerActivity.getStorageManager().getCapability(mContainerActivity.getStorageManager().getAccount().name).getFilesSharingResharing().isFalse() || !singleFile.canReshare())){
+                    if(singleFile.isSharedWithMe() && !singleFile.canReshare()){
                         Snackbar.make(getView(), R.string.resharing_is_not_allowed, Snackbar.LENGTH_LONG).show();
                     } else {
                         mContainerActivity.getFileOperationsHelper().showShareFile(singleFile);

+ 9 - 0
src/main/java/com/owncloud/android/ui/preview/PreviewImageFragment.java

@@ -332,6 +332,15 @@ public class PreviewImageFragment extends FileFragment {
             item.setEnabled(false);
         }
 
+        if(getFile().isSharedWithMe() && !getFile().canReshare()){
+            // additional restriction for this fragment
+            item = menu.findItem(R.id.action_share_file);
+            if(item != null){
+                item.setVisible(false);
+                item.setEnabled(false);
+            }
+        }
+
     }
 
 

+ 9 - 0
src/main/java/com/owncloud/android/ui/preview/PreviewMediaFragment.java

@@ -401,6 +401,15 @@ public class PreviewMediaFragment extends FileFragment implements
             item.setEnabled(false);
         }
 
+        if(getFile().isSharedWithMe() && !getFile().canReshare()){
+            // additional restriction for this fragment
+            item = menu.findItem(R.id.action_share_file);
+            if(item != null){
+                item.setVisible(false);
+                item.setEnabled(false);
+            }
+        }
+
     }
 
 

+ 9 - 0
src/main/java/com/owncloud/android/ui/preview/PreviewTextFragment.java

@@ -351,6 +351,15 @@ public class PreviewTextFragment extends FileFragment {
             item.setEnabled(false);
         }
 
+        if(getFile().isSharedWithMe() && !getFile().canReshare()){
+            // additional restriction for this fragment
+            item = menu.findItem(R.id.action_share_file);
+            if(item != null){
+                item.setVisible(false);
+                item.setEnabled(false);
+            }
+        }
+
     }
 
     /**