Forráskód Böngészése

Use M3 bottom sheet

Signed-off-by: alperozturk <alper_ozturk@proton.me>
alperozturk 1 éve
szülő
commit
2755dcf708

+ 7 - 0
app/src/main/java/com/owncloud/android/ui/dialog/SendShareDialog.kt

@@ -10,8 +10,10 @@ import android.view.ViewGroup
 import android.widget.ImageView
 import androidx.recyclerview.widget.GridLayoutManager
 import com.google.android.material.bottomsheet.BottomSheetBehavior
+import com.google.android.material.bottomsheet.BottomSheetDialog
 import com.google.android.material.bottomsheet.BottomSheetDialogFragment
 import com.google.android.material.snackbar.Snackbar
+import com.nextcloud.android.common.ui.theme.utils.ColorRole
 import com.nextcloud.client.di.Injectable
 import com.nextcloud.client.utils.IntentUtil.createSendIntent
 import com.owncloud.android.R
@@ -90,6 +92,11 @@ class SendShareDialog : BottomSheetDialogFragment(R.layout.send_share_fragment),
         viewThemeUtils?.material?.colorMaterialButtonPrimaryFilled(binding.btnLink)
         binding.btnLink.setOnClickListener { shareByLink() }
 
+        val bottomSheetDialog = dialog as BottomSheetDialog
+        bottomSheetDialog.behavior.state = BottomSheetBehavior.STATE_EXPANDED
+        bottomSheetDialog.behavior.skipCollapsed = true
+        viewThemeUtils?.platform?.colorViewBackground(binding.bottomSheet, ColorRole.SURFACE_VARIANT)
+
         if (hideNcSharingOptions) {
             binding.sendShareButtons.visibility = View.GONE
             binding.divider.visibility = View.GONE

+ 51 - 52
app/src/main/res/layout/send_share_fragment.xml

@@ -19,71 +19,70 @@
  You should have received a copy of the GNU Affero General Public License
  along with this program. If not, see <http://www.gnu.org/licenses/>.
 -->
-<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<FrameLayout
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
+    android:id="@+id/standard_bottom_sheet"
+    style="@style/Widget.Material3.BottomSheet"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    android:background="@color/bg_default">
+    android:layout_height="wrap_content"
+    android:layout_gravity="bottom"
+    app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior">
 
-    <FrameLayout
-        android:id="@+id/standard_bottom_sheet"
-        style="@style/Widget.Material3.BottomSheet"
+    <LinearLayout
+        android:id="@+id/bottom_sheet"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior">
+        android:layout_height="wrap_content"
+        android:orientation="vertical">
+
+        <com.google.android.material.bottomsheet.BottomSheetDragHandleView
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"/>
 
         <LinearLayout
+            android:id="@+id/send_share_buttons"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:orientation="vertical">
+            android:gravity="center"
+            android:orientation="horizontal"
+            android:padding="@dimen/standard_margin">
 
-            <LinearLayout
-                android:id="@+id/send_share_buttons"
-                android:layout_width="match_parent"
+            <com.google.android.material.button.MaterialButton
+                android:id="@+id/btn_share"
+                style="@style/Widget.Material3.Button.IconButton.Filled.Tonal"
+                android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_gravity="center"
-                android:gravity="center"
-                android:orientation="horizontal"
-                android:padding="@dimen/send_share_fragment_layout_padding">
-
-                <com.google.android.material.button.MaterialButton
-                    android:id="@+id/btn_share"
-                    style="@style/Widget.Material3.Button.IconButton.Filled.Tonal"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:text="@string/share"
-                    app:iconTint="@color/white"
-                    android:textColor="@color/white"
-                    app:icon="@drawable/shared_via_users" />
-
-                <com.google.android.material.button.MaterialButton
-                    android:id="@+id/btn_link"
-                    style="@style/Widget.Material3.Button.IconButton.Filled.Tonal"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:text="@string/link"
-                    app:iconTint="@color/white"
-                    android:textColor="@color/white"
-                    app:icon="@drawable/shared_via_link" />
-
-            </LinearLayout>
+                android:text="@string/share"
+                app:iconTint="@color/white"
+                android:textColor="@color/white"
+                app:icon="@drawable/shared_via_users" />
 
-            <View
-                android:id="@+id/divider"
-                android:layout_width="match_parent"
-                android:layout_height="1dp"
-                android:alpha="0.3"
-                android:background="@color/background_color_inverse"/>
-
-            <androidx.recyclerview.widget.RecyclerView
-                android:id="@+id/send_button_recycler_view"
-                android:layout_width="match_parent"
+            <com.google.android.material.button.MaterialButton
+                android:id="@+id/btn_link"
+                style="@style/Widget.Material3.Button.IconButton.Filled.Tonal"
+                android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                tools:listitem="@layout/send_button" />
+                android:text="@string/link"
+                app:iconTint="@color/white"
+                android:textColor="@color/white"
+                app:icon="@drawable/shared_via_link" />
 
         </LinearLayout>
 
-    </FrameLayout>
+        <View
+            android:id="@+id/divider"
+            android:layout_width="match_parent"
+            android:layout_height="1dp"
+            android:alpha="0.3"
+            android:background="@color/background_color_inverse"/>
+
+        <androidx.recyclerview.widget.RecyclerView
+            android:id="@+id/send_button_recycler_view"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            tools:listitem="@layout/send_button" />
+
+    </LinearLayout>
 
-</androidx.coordinatorlayout.widget.CoordinatorLayout>
+</FrameLayout>