Browse Source

Update UI to hide sections that are disabled according to setup variables

jabarros 9 years ago
parent
commit
4899d0b851

+ 154 - 143
res/layout/share_file_layout.xml

@@ -81,6 +81,7 @@
             />
 
         <LinearLayout
+            android:id="@+id/shareWithUsersSection"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:orientation="vertical"
@@ -122,165 +123,175 @@
                 android:text="@string/share_add_user_or_group"
                 android:theme="@style/Button.Primary"/>
 
-            <android.support.v7.widget.SwitchCompat
-                android:id="@+id/shareViaLinkSectionSwitch"
-                style="?android:attr/listSeparatorTextViewStyle"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_gravity="start"
-                android:layout_marginTop="@dimen/standard_half_margin"
-                android:checked="false"
-                android:paddingRight="@dimen/standard_half_padding"
-                android:text="@string/share_via_link_section_title"
-                android:textColor="@color/color_accent"/>
+            </LinearLayout>
 
-            <RelativeLayout
-                android:id="@+id/shareViaLinkExpirationSection"
+            <LinearLayout
+                android:id="@+id/shareViaLinkSection"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
-                android:layout_marginTop="@dimen/standard_half_margin"
-                >
+                android:orientation="vertical"
+                android:padding="@dimen/standard_padding">
 
                 <android.support.v7.widget.SwitchCompat
-                    android:id="@+id/shareViaLinkExpirationSwitch"
-                    android:layout_width="wrap_content"
+                    android:id="@+id/shareViaLinkSectionSwitch"
+                    style="?android:attr/listSeparatorTextViewStyle"
+                    android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_alignParentEnd="true"
-                    android:layout_alignParentRight="true"
-                    android:layout_alignParentTop="true"
+                    android:layout_gravity="start"
+                    android:layout_marginTop="@dimen/standard_half_margin"
                     android:checked="false"
-                    android:padding="@dimen/standard_half_padding"/>
-
-                <TextView
-                    android:id="@+id/shareViaLinkExpirationLabel"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_alignParentLeft="true"
-                    android:layout_alignParentStart="true"
-                    android:layout_toLeftOf="@id/shareViaLinkExpirationSwitch"
-                    android:layout_toStartOf="@id/shareViaLinkExpirationSwitch"
-                    android:paddingLeft="@dimen/standard_half_padding"
-                    android:paddingRight="@dimen/standard_half_padding"
-                    android:paddingTop="@dimen/standard_half_padding"
-                    android:text="@string/share_via_link_expiration_date_label"
-                    android:textColor="@color/black"
-                    android:textSize="14sp"
-                    />
-
-                <TextView
-                    android:id="@+id/shareViaLinkExpirationValue"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_alignParentLeft="true"
-                    android:layout_alignParentStart="true"
-                    android:layout_below="@id/shareViaLinkExpirationLabel"
-                    android:layout_toLeftOf="@id/shareViaLinkExpirationSwitch"
-                    android:layout_toStartOf="@id/shareViaLinkExpirationSwitch"
-                    android:paddingBottom="@dimen/standard_half_padding"
-                    android:paddingLeft="@dimen/standard_half_padding"
                     android:paddingRight="@dimen/standard_half_padding"
-                    android:textSize="12sp"
-                    />
-
-            </RelativeLayout>
-
-            <RelativeLayout
-                android:id="@+id/shareViaLinkPasswordSection"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                >
+                    android:text="@string/share_via_link_section_title"
+                    android:textColor="@color/color_accent"/>
 
-                <android.support.v7.widget.SwitchCompat
-                    android:id="@+id/shareViaLinkPasswordSwitch"
-                    android:layout_width="wrap_content"
+                <RelativeLayout
+                    android:id="@+id/shareViaLinkExpirationSection"
+                    android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_alignParentEnd="true"
-                    android:layout_alignParentRight="true"
-                    android:layout_alignParentTop="true"
-                    android:padding="@dimen/standard_half_padding"
-                    />
-
-                <TextView
-                    android:id="@+id/shareViaLinkPasswordLabel"
-                    android:layout_width="wrap_content"
+                    android:layout_marginTop="@dimen/standard_half_margin"
+                    >
+
+                    <android.support.v7.widget.SwitchCompat
+                        android:id="@+id/shareViaLinkExpirationSwitch"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_alignParentEnd="true"
+                        android:layout_alignParentRight="true"
+                        android:layout_alignParentTop="true"
+                        android:checked="false"
+                        android:padding="@dimen/standard_half_padding"/>
+
+                    <TextView
+                        android:id="@+id/shareViaLinkExpirationLabel"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_alignParentLeft="true"
+                        android:layout_alignParentStart="true"
+                        android:layout_toLeftOf="@id/shareViaLinkExpirationSwitch"
+                        android:layout_toStartOf="@id/shareViaLinkExpirationSwitch"
+                        android:paddingLeft="@dimen/standard_half_padding"
+                        android:paddingRight="@dimen/standard_half_padding"
+                        android:paddingTop="@dimen/standard_half_padding"
+                        android:text="@string/share_via_link_expiration_date_label"
+                        android:textColor="@color/black"
+                        android:textSize="14sp"
+                        />
+
+                    <TextView
+                        android:id="@+id/shareViaLinkExpirationValue"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_alignParentLeft="true"
+                        android:layout_alignParentStart="true"
+                        android:layout_below="@id/shareViaLinkExpirationLabel"
+                        android:layout_toLeftOf="@id/shareViaLinkExpirationSwitch"
+                        android:layout_toStartOf="@id/shareViaLinkExpirationSwitch"
+                        android:paddingBottom="@dimen/standard_half_padding"
+                        android:paddingLeft="@dimen/standard_half_padding"
+                        android:paddingRight="@dimen/standard_half_padding"
+                        android:textSize="12sp"
+                        />
+
+                </RelativeLayout>
+
+                <RelativeLayout
+                    android:id="@+id/shareViaLinkPasswordSection"
+                    android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_alignParentLeft="true"
-                    android:layout_alignParentStart="true"
-                    android:layout_toLeftOf="@id/shareViaLinkPasswordSwitch"
-                    android:layout_toStartOf="@id/shareViaLinkPasswordSwitch"
-                    android:paddingLeft="@dimen/standard_half_padding"
-                    android:paddingRight="@dimen/standard_half_padding"
-                    android:paddingTop="@dimen/standard_half_padding"
-                    android:text="@string/share_via_link_password_label"
-                    android:textColor="@color/black"
-                    android:textSize="14sp"
-                    />
-
-                <TextView
-                    android:id="@+id/shareViaLinkPasswordValue"
-                    android:layout_width="wrap_content"
+                    >
+
+                    <android.support.v7.widget.SwitchCompat
+                        android:id="@+id/shareViaLinkPasswordSwitch"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_alignParentEnd="true"
+                        android:layout_alignParentRight="true"
+                        android:layout_alignParentTop="true"
+                        android:padding="@dimen/standard_half_padding"
+                        />
+
+                    <TextView
+                        android:id="@+id/shareViaLinkPasswordLabel"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_alignParentLeft="true"
+                        android:layout_alignParentStart="true"
+                        android:layout_toLeftOf="@id/shareViaLinkPasswordSwitch"
+                        android:layout_toStartOf="@id/shareViaLinkPasswordSwitch"
+                        android:paddingLeft="@dimen/standard_half_padding"
+                        android:paddingRight="@dimen/standard_half_padding"
+                        android:paddingTop="@dimen/standard_half_padding"
+                        android:text="@string/share_via_link_password_label"
+                        android:textColor="@color/black"
+                        android:textSize="14sp"
+                        />
+
+                    <TextView
+                        android:id="@+id/shareViaLinkPasswordValue"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_alignParentLeft="true"
+                        android:layout_alignParentStart="true"
+                        android:layout_below="@id/shareViaLinkPasswordLabel"
+                        android:layout_toLeftOf="@id/shareViaLinkPasswordSwitch"
+                        android:layout_toStartOf="@id/shareViaLinkPasswordSwitch"
+                        android:paddingBottom="@dimen/standard_half_padding"
+                        android:paddingLeft="@dimen/standard_half_padding"
+                        android:paddingRight="@dimen/standard_half_padding"
+                        android:text="@string/share_via_link_password_title"
+                        android:textSize="12sp"
+                        android:visibility="invisible"
+                        />
+
+                </RelativeLayout>
+
+                <RelativeLayout
+                    android:id="@+id/shareViaLinkEditPermissionSection"
+                    android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_alignParentLeft="true"
-                    android:layout_alignParentStart="true"
-                    android:layout_below="@id/shareViaLinkPasswordLabel"
-                    android:layout_toLeftOf="@id/shareViaLinkPasswordSwitch"
-                    android:layout_toStartOf="@id/shareViaLinkPasswordSwitch"
-                    android:paddingBottom="@dimen/standard_half_padding"
-                    android:paddingLeft="@dimen/standard_half_padding"
-                    android:paddingRight="@dimen/standard_half_padding"
-                    android:text="@string/share_via_link_password_title"
-                    android:textSize="12sp"
                     android:visibility="invisible"
-                    />
-
-            </RelativeLayout>
-
-            <RelativeLayout
-                android:id="@+id/shareViaLinkEditPermissionSection"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:visibility="invisible"
-                >
-
-                <android.support.v7.widget.SwitchCompat
-                    android:id="@+id/shareViaLinkEditPermissionSwitch"
-                    android:layout_width="wrap_content"
+                    >
+
+                    <android.support.v7.widget.SwitchCompat
+                        android:id="@+id/shareViaLinkEditPermissionSwitch"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_alignParentEnd="true"
+                        android:layout_alignParentRight="true"
+                        android:layout_centerInParent="true"
+                        android:padding="@dimen/standard_half_padding"
+                        />
+
+                    <TextView
+                        android:id="@+id/shareViaLinkEditPermissionLabel"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_alignParentLeft="true"
+                        android:layout_alignParentStart="true"
+                        android:layout_toLeftOf="@id/shareViaLinkEditPermissionSwitch"
+                        android:layout_toStartOf="@id/shareViaLinkEditPermissionSwitch"
+                        android:paddingLeft="@dimen/standard_half_padding"
+                        android:paddingRight="@dimen/standard_half_padding"
+                        android:paddingTop="@dimen/standard_half_padding"
+                        android:text="@string/share_via_link_edit_permission_label"
+                        android:textColor="@color/black"
+                        android:textSize="14sp"
+                        />
+
+                </RelativeLayout>
+
+                <android.support.v7.widget.AppCompatButton
+                    android:id="@+id/shareViaLinkGetLinkButton"
+                    style="@style/ownCloud.Button"
+                    android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_alignParentEnd="true"
-                    android:layout_alignParentRight="true"
-                    android:layout_centerInParent="true"
-                    android:padding="@dimen/standard_half_padding"
-                    />
-
-                <TextView
-                    android:id="@+id/shareViaLinkEditPermissionLabel"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_alignParentLeft="true"
-                    android:layout_alignParentStart="true"
-                    android:layout_toLeftOf="@id/shareViaLinkEditPermissionSwitch"
-                    android:layout_toStartOf="@id/shareViaLinkEditPermissionSwitch"
-                    android:paddingLeft="@dimen/standard_half_padding"
-                    android:paddingRight="@dimen/standard_half_padding"
-                    android:paddingTop="@dimen/standard_half_padding"
-                    android:text="@string/share_via_link_edit_permission_label"
-                    android:textColor="@color/black"
-                    android:textSize="14sp"
-                    />
+                    android:layout_gravity="center_horizontal"
+                    android:contentDescription="shareGetLinkButton"
+                    android:text="@string/share_get_public_link_button"
+                    android:theme="@style/Button.Primary"/>
 
-            </RelativeLayout>
-
-            <android.support.v7.widget.AppCompatButton
-                android:id="@+id/shareViaLinkGetLinkButton"
-                style="@style/ownCloud.Button"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_gravity="center_horizontal"
-                android:contentDescription="shareGetLinkButton"
-                android:text="@string/share_get_public_link_button"
-                android:theme="@style/Button.Primary"/>
+            </LinearLayout>
 
         </LinearLayout>
-    </LinearLayout>
 
 </ScrollView>

+ 22 - 1
src/com/owncloud/android/ui/fragment/ShareFileFragment.java

@@ -34,6 +34,7 @@ import android.view.ViewGroup;
 import android.widget.Button;
 import android.widget.CompoundButton;
 import android.widget.ImageView;
+import android.widget.LinearLayout;
 import android.widget.ListAdapter;
 import android.widget.ListView;
 import android.widget.ScrollView;
@@ -212,6 +213,9 @@ public class ShareFileFragment extends Fragment
             size.setText(DisplayUtils.bytesToHumanReadable(mFile.getFileLength()));
         }
 
+        // Check which share sections are allowed to be shown
+        showShareSections(view);
+
         //  Add User Button
         Button addUserGroupButton = (Button)
                 view.findViewById(R.id.addUserButton);
@@ -853,7 +857,24 @@ public class ShareFileFragment extends Fragment
      */
     public void requestPasswordForShareViaLink(boolean createShare) {
         SharePasswordDialogFragment dialog = SharePasswordDialogFragment.newInstance(mFile, createShare);
-        dialog.show(getFragmentManager(),SharePasswordDialogFragment.PASSWORD_FRAGMENT);
+        dialog.show(getFragmentManager(), SharePasswordDialogFragment.PASSWORD_FRAGMENT);
+    }
+
+    private void showShareSections(View shareView) {
+        LinearLayout shareWithUsersSection = (LinearLayout) shareView.findViewById(R.id.shareWithUsersSection);
+        LinearLayout shareViaLinkSection = (LinearLayout) shareView.findViewById(R.id.shareViaLinkSection);
+
+        boolean shareByLinkAllowed = getActivity().getString(R.string.show_share_by_link_section).equalsIgnoreCase("true");
+        boolean shareWithUsersAllowed = getActivity().getString(R.string.show_share_with_users_section).equalsIgnoreCase("true");
+
+        if (!shareByLinkAllowed) {
+            shareViaLinkSection.setVisibility(View.GONE);
+        }
+
+        if (!shareWithUsersAllowed) {
+            shareWithUsersSection.setVisibility(View.GONE);
+        }
+
     }
 
 }