Jelajahi Sumber

Merge pull request #6042 from nextcloud/feature/ui-revamp/favorite-icon-design

New design (UI) - Favorite and "downloaded" icons alignment
Andy Scherzinger 4 tahun lalu
induk
melakukan
ab99e71c41
2 mengubah file dengan 43 tambahan dan 35 penghapusan
  1. 41 33
      src/main/res/layout/list_item.xml
  2. 2 2
      src/main/res/values/dims.xml

+ 41 - 33
src/main/res/layout/list_item.xml

@@ -22,65 +22,73 @@
     android:layout_width="match_parent"
     android:layout_height="@dimen/standard_list_item_size"
     android:background="@drawable/list_selector"
+    android:baselineAligned="false"
     android:descendantFocusability="blocksDescendants"
     android:foreground="?android:attr/selectableItemBackground"
-    android:baselineAligned="false"
     android:orientation="horizontal">
 
-    <RelativeLayout
+    <androidx.constraintlayout.widget.ConstraintLayout
         android:layout_width="@dimen/standard_list_item_size"
         android:layout_height="@dimen/standard_list_item_size"
-        android:paddingStart="@dimen/zero"
-        android:paddingTop="@dimen/standard_padding"
-        android:paddingEnd="@dimen/standard_quarter_padding"
-        android:paddingBottom="@dimen/standard_padding">
+        android:layout_marginStart="@dimen/zero"
+        android:layout_marginEnd="@dimen/standard_quarter_padding"
+        android:layout_marginBottom="@dimen/standard_padding">
+
+        <ImageView
+            android:id="@+id/thumbnail"
+            android:layout_width="@dimen/file_icon_size"
+            android:layout_height="@dimen/file_icon_size"
+            android:contentDescription="@null"
+            android:src="@drawable/folder"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent" />
 
-        <FrameLayout
+        <RelativeLayout
             android:id="@+id/shimmer_view_container"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_centerInParent="true"
-            android:layout_marginStart="@dimen/standard_half_margin">
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent">
 
             <com.elyeproj.loaderviewlibrary.LoaderImageView
                 android:id="@+id/thumbnail_shimmer"
-                android:layout_width="@dimen/file_icon_size"
-                android:layout_height="@dimen/file_icon_size"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
                 android:layout_marginStart="@dimen/standard_half_margin"
                 android:visibility="gone"
                 app:corners="8" />
 
-            <ImageView
-                android:id="@+id/thumbnail"
-                android:layout_width="@dimen/file_icon_size"
-                android:layout_height="@dimen/file_icon_size"
-                android:layout_marginStart="@dimen/standard_half_margin"
-                android:contentDescription="@null"
-                android:src="@drawable/folder"/>
-        </FrameLayout>
-
-        <ImageView
-            android:id="@+id/favorite_action"
-            android:layout_width="@dimen/list_item_favorite_action_layout_width"
-            android:layout_height="@dimen/list_item_favorite_action_layout_height"
-            android:layout_alignParentTop="true"
-            android:layout_alignParentEnd="true"
-            android:layout_marginEnd="@dimen/standard_quarter_margin"
-            android:contentDescription="@string/favorite"
-            android:src="@drawable/favorite" />
+        </RelativeLayout>
 
         <ImageView
             android:id="@+id/localFileIndicator"
             android:layout_width="@dimen/list_item_local_file_indicator_layout_width"
             android:layout_height="@dimen/list_item_local_file_indicator_layout_height"
-            android:layout_alignParentEnd="true"
-            android:layout_alignParentBottom="true"
-            android:layout_marginEnd="@dimen/standard_quarter_margin"
             android:contentDescription="@string/downloader_download_succeeded_ticker"
             android:scaleType="fitCenter"
-            android:src="@drawable/ic_synced" />
+            android:src="@drawable/ic_synced"
+            app:layout_constraintBottom_toBottomOf="@+id/thumbnail"
+            app:layout_constraintEnd_toEndOf="@+id/thumbnail"
+            app:layout_constraintStart_toEndOf="@+id/thumbnail"
+            app:layout_constraintTop_toBottomOf="@+id/thumbnail" />
 
-    </RelativeLayout>
+        <ImageView
+            android:id="@+id/favorite_action"
+            android:layout_width="@dimen/list_item_favorite_action_layout_width"
+            android:layout_height="@dimen/list_item_favorite_action_layout_height"
+            android:contentDescription="@string/favorite"
+            android:src="@drawable/favorite"
+            app:layout_constraintBottom_toTopOf="@+id/thumbnail"
+            app:layout_constraintEnd_toEndOf="@+id/thumbnail"
+            app:layout_constraintStart_toEndOf="@+id/thumbnail"
+            app:layout_constraintTop_toTopOf="@+id/thumbnail" />
+
+    </androidx.constraintlayout.widget.ConstraintLayout>
 
     <LinearLayout
         android:layout_width="0dp"

+ 2 - 2
src/main/res/values/dims.xml

@@ -121,8 +121,8 @@
     <dimen name="grid_item_local_file_indicator_layout_height">16dp</dimen>
     <dimen name="grid_sync_item_layout_next_text_size">22sp</dimen>
     <dimen name="grid_sync_item_layout_counter_text_size">22sp</dimen>
-    <dimen name="list_item_favorite_action_layout_width">16dp</dimen>
-    <dimen name="list_item_favorite_action_layout_height">16dp</dimen>
+    <dimen name="list_item_favorite_action_layout_width">14dp</dimen>
+    <dimen name="list_item_favorite_action_layout_height">14dp</dimen>
     <dimen name="list_item_local_file_indicator_layout_width">12dp</dimen>
     <dimen name="list_item_local_file_indicator_layout_height">12dp</dimen>
     <dimen name="preview_error_image_layout_width">72dp</dimen>