浏览代码

Replace imageButton with MaterialButton and apply primary tonal dynamic coloring

Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
Andy Scherzinger 2 年之前
父节点
当前提交
d34ba85461

+ 1 - 0
app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt

@@ -674,6 +674,7 @@ class ChatController(args: Bundle) :
         }
 
         binding?.scrollDownButton?.setOnClickListener { binding?.messagesListView?.smoothScrollToPosition(0) }
+        binding?.let { viewThemeUtils.material.colorMaterialButtonPrimaryTonal(it.scrollDownButton) }
 
         binding?.let { viewThemeUtils.material.colorMaterialButtonPrimaryFilled(it.popupBubbleView) }
 

+ 12 - 7
app/src/main/res/drawable/ic_baseline_keyboard_double_arrow_down_24.xml → app/src/main/res/drawable/ic_keyboard_double_arrow_down.xml

@@ -1,21 +1,26 @@
 <!--
     @author Google LLC
     Copyright (C) 2023 Google LLC
+
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at
+
     http://www.apache.org/licenses/LICENSE-2.0
+
     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
 -->
-<vector android:height="24dp" android:tint="#000"
-    android:viewportHeight="24" android:viewportWidth="24"
-    android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
-    <path android:fillColor="@android:color/black"
-        android:pathData="M18,6.41l-1.41,-1.41l-4.59,4.58l-4.59,-4.58l-1.41,1.41l6,6z"/>
-    <path android:fillColor="@android:color/black"
-        android:pathData="M18,13l-1.41,-1.41l-4.59,4.58l-4.59,-4.58l-1.41,1.41l6,6z"/>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?attr/colorControlNormal"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M12,19.275 L5.8,13.1 7.4,11.5 12,16.075 16.6,11.5 18.2,13.1ZM12,13.1 L5.8,6.9 7.4,5.325 12,9.9 16.6,5.325 18.2,6.9Z" />
 </vector>

+ 16 - 12
app/src/main/res/layout/controller_chat.xml

@@ -76,8 +76,8 @@
             app:incomingImageTimeTextSize="12sp"
             app:incomingTextColor="@color/nc_incoming_text_default"
             app:incomingTextLinkColor="@color/nc_incoming_text_default"
-            app:incomingTimeTextColor="@color/no_emphasis_text"
             app:incomingTextSize="@dimen/chat_text_size"
+            app:incomingTimeTextColor="@color/no_emphasis_text"
             app:incomingTimeTextSize="12sp"
             app:outcomingBubblePaddingBottom="@dimen/message_bubble_corners_vertical_padding"
             app:outcomingBubblePaddingLeft="@dimen/message_bubble_corners_horizontal_padding"
@@ -100,9 +100,9 @@
             android:layout_height="wrap_content"
             android:layout_alignParentBottom="true"
             android:layout_centerHorizontal="true"
-            android:layout_marginStart="@dimen/dialog_padding"
+            android:layout_marginStart="64dp"
             android:layout_marginTop="16dp"
-            android:layout_marginEnd="@dimen/dialog_padding"
+            android:layout_marginEnd="64dp"
             android:layout_marginBottom="16dp"
             android:minHeight="@dimen/min_size_clickable_area"
             android:text="@string/nc_new_messages"
@@ -110,20 +110,24 @@
             app:cornerRadius="@dimen/button_corner_radius"
             app:icon="@drawable/ic_baseline_arrow_downward_24px" />
 
-        <ImageButton
+        <com.google.android.material.button.MaterialButton
             android:id="@+id/scrollDownButton"
-            android:layout_width="44dp"
-            android:layout_height="44dp"
+            style="@style/Widget.AppTheme.Button.IconButton"
+            android:layout_width="@dimen/min_size_clickable_area"
+            android:layout_height="@dimen/min_size_clickable_area"
             android:layout_alignParentEnd="true"
             android:layout_alignParentBottom="true"
-            android:layout_marginEnd="6dp"
-            android:layout_marginBottom="16dp"
-            android:background="@drawable/shape_oval"
-            android:backgroundTint="@color/scroll_down_chat_button"
+            android:layout_centerHorizontal="true"
+            android:layout_marginEnd="@dimen/standard_half_margin"
+            android:layout_marginBottom="@dimen/standard_margin"
             android:contentDescription="@string/scroll_to_bottom"
-            android:src="@drawable/ic_baseline_keyboard_double_arrow_down_24"
+            android:paddingStart="@dimen/standard_padding"
+            android:paddingEnd="@dimen/standard_padding"
             android:visibility="invisible"
-            app:tint="@color/scroll_down_chat_button_icon" />
+            app:cornerRadius="@dimen/button_corner_radius"
+            app:icon="@drawable/ic_keyboard_double_arrow_down"
+            app:iconPadding="0dp"
+            app:iconSize="24dp" />
 
     </RelativeLayout>
 

+ 0 - 4
app/src/main/res/values-night/colors.xml

@@ -76,8 +76,4 @@
 
     <color name="dialog_background">#353535</color>
 
-    <!-- scroll down chat button  -->
-    <color name="scroll_down_chat_button">#141F25</color>
-    <color name="scroll_down_chat_button_icon">#99C3DA</color>
-
 </resources>

+ 0 - 4
app/src/main/res/values/colors.xml

@@ -102,10 +102,6 @@
     <color name="list_divider_background">#1F121212</color>
     <color name="grey_200">#EEEEEE</color>
 
-    <!-- scroll down chat button  -->
-    <color name="scroll_down_chat_button">#E5F0F5</color>
-    <color name="scroll_down_chat_button_icon">#002A41</color>
-
     <!-- this is just a helper for status icon background because getting the background color of a dialog is not
     possible?! don't use this to set the background of dialogs -->
     <color name="dialog_background">#FFFFFF</color>