Skip to content

Commit 6ab5686

Browse files
Move to Material 3 color theming for notification items
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
1 parent 8ff4cb9 commit 6ab5686

4 files changed

Lines changed: 29 additions & 35 deletions

File tree

app/src/main/java/com/owncloud/android/ui/adapter/NotificationListAdapter.java

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
import com.bumptech.glide.load.resource.file.FileToStreamDecoder;
4848
import com.caverock.androidsvg.SVG;
4949
import com.google.android.material.button.MaterialButton;
50+
import com.nextcloud.android.common.ui.theme.utils.ColorRole;
5051
import com.owncloud.android.R;
5152
import com.owncloud.android.databinding.NotificationListItemBinding;
5253
import com.owncloud.android.lib.common.OwnCloudClient;
@@ -149,18 +150,11 @@ public void onBindViewHolder(@NonNull NotificationViewHolder holder, int positio
149150
downloadIcon(notification.getIcon(), holder.binding.icon, notificationsActivity);
150151
}
151152

152-
int nightModeFlag =
153-
notificationsActivity.getResources().getConfiguration().uiMode
154-
& Configuration.UI_MODE_NIGHT_MASK;
155-
if (Configuration.UI_MODE_NIGHT_YES == nightModeFlag) {
156-
holder.binding.icon.setColorFilter(ResourcesCompat.getColor(notificationsActivity.getResources(),
157-
R.color.grey_30, null),
158-
PorterDuff.Mode.SRC_IN);
159-
} else {
160-
holder.binding.icon.setColorFilter(ResourcesCompat.getColor(notificationsActivity.getResources(),
161-
R.color.text_color, null),
162-
PorterDuff.Mode.SRC_IN);
163-
}
153+
viewThemeUtils.platform.colorImageView(holder.binding.icon, ColorRole.ON_SURFACE_VARIANT);
154+
viewThemeUtils.platform.colorImageView(holder.binding.dismiss, ColorRole.ON_SURFACE_VARIANT);
155+
viewThemeUtils.platform.colorTextView(holder.binding.subject, ColorRole.ON_SURFACE);
156+
viewThemeUtils.platform.colorTextView(holder.binding.message, ColorRole.ON_SURFACE_VARIANT);
157+
viewThemeUtils.platform.colorTextView(holder.binding.datetime, ColorRole.ON_SURFACE_VARIANT);
164158

165159
setButtons(holder, notification);
166160

app/src/main/res/layout/notification_list_item.xml

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@
44
55
@author Tobias Kaminsky
66
@author TSI-mc
7-
Copyright (C) 2018 Tobias Kaminsky
8-
Copyright (C) 2018 Nextcloud GmbH.
7+
Copyright (C) 2023 Andy Scherzinger
98
Copyright (C) 2023 TSI-mc
9+
Copyright (C) 2018 Tobias Kaminsky
10+
Copyright (C) 2018 Nextcloud GmbH
1011
1112
This program is free software: you can redistribute it and/or modify
1213
it under the terms of the GNU General Public License as published by
@@ -22,15 +23,15 @@
2223
along with this program. If not, see <https://www.gnu.org/licenses/>.
2324
-->
2425
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
26+
xmlns:app="http://schemas.android.com/apk/res-auto"
2527
xmlns:tools="http://schemas.android.com/tools"
2628
android:layout_width="match_parent"
27-
android:layout_height="@dimen/notification_row_item_height"
28-
xmlns:app="http://schemas.android.com/apk/res-auto"
29+
android:layout_height="wrap_content"
2930
android:orientation="horizontal"
31+
android:paddingStart="@dimen/standard_padding"
3032
android:paddingTop="@dimen/standard_padding"
31-
android:paddingRight="@dimen/standard_padding"
33+
android:paddingEnd="@dimen/standard_padding"
3234
android:paddingBottom="@dimen/standard_padding"
33-
android:paddingLeft="@dimen/standard_padding"
3435
tools:ignore="UseCompoundDrawables">
3536

3637
<ImageView
@@ -45,9 +46,9 @@
4546
<LinearLayout
4647
android:layout_width="match_parent"
4748
android:layout_height="wrap_content"
48-
android:orientation="vertical"
4949
android:layout_alignTop="@id/icon"
50-
android:layout_toEndOf="@id/icon">
50+
android:layout_toEndOf="@id/icon"
51+
android:orientation="vertical">
5152

5253
<LinearLayout
5354
android:layout_width="match_parent"
@@ -59,49 +60,50 @@
5960
android:layout_width="0dp"
6061
android:layout_height="wrap_content"
6162
android:layout_weight="1"
62-
android:textSize="@dimen/txt_size_16sp"
6363
android:ellipsize="end"
64-
android:textColor="@color/text_color"
6564
android:textAppearance="?android:attr/textAppearanceListItem"
65+
android:textColor="@color/text_color"
66+
android:textSize="@dimen/txt_size_16sp"
67+
android:paddingBottom="@dimen/standard_half_padding"
6668
tools:text="@string/placeholder_filename" />
6769

6870
<ImageView
6971
android:id="@+id/dismiss"
7072
android:layout_width="wrap_content"
7173
android:layout_height="wrap_content"
72-
app:tint="@color/secondary_text_color"
73-
android:src="@drawable/ic_close"
74-
android:contentDescription="@string/dismiss_notification_description" />
74+
android:contentDescription="@string/dismiss_notification_description"
75+
android:src="@drawable/ic_close" />
7576
</LinearLayout>
7677

7778
<TextView
7879
android:id="@+id/message"
7980
android:layout_width="match_parent"
8081
android:layout_height="wrap_content"
8182
android:ellipsize="end"
83+
android:textAppearance="?android:attr/textAppearanceListItem"
8284
android:textColor="@color/secondary_text_color"
8385
android:textSize="@dimen/txt_size_14sp"
84-
tools:text="@string/placeholder_sentence"
85-
android:textAppearance="?android:attr/textAppearanceListItem"/>
86+
tools:text="@string/placeholder_sentence" />
8687

8788
<LinearLayout
8889
android:id="@+id/buttons"
8990
android:layout_width="match_parent"
9091
android:layout_height="wrap_content"
92+
android:gravity="end"
93+
android:layout_marginEnd="@dimen/notification_list_item_grid_layout_left_start_margin"
9194
android:layout_marginTop="@dimen/alternate_half_margin"
92-
android:layout_marginStart="@dimen/notification_list_item_grid_layout_left_start_margin"
9395
android:columnCount="3"
94-
android:orientation="horizontal"/>
96+
android:orientation="horizontal" />
9597

9698
<TextView
9799
android:id="@+id/datetime"
98100
android:layout_width="wrap_content"
99101
android:layout_height="wrap_content"
100102
android:layout_gravity="end"
101103
android:ellipsize="end"
104+
android:textColor="@color/secondary_text_color"
102105
android:textSize="@dimen/text_size_13sp"
103-
tools:text="@string/placeholder_sentence"
104-
android:textColor="@color/secondary_text_color"/>
106+
tools:text="@string/placeholder_sentence" />
105107

106108
</LinearLayout>
107109

app/src/main/res/values/colors.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
<color name="grey_200">#EEEEEE</color>
4141
<color name="grey_400">#BDBDBD</color>
4242
<color name="grey_600">#666666</color>
43-
<color name="grey_30">#B2B2B2</color>
4443

4544
<!-- standard material color definitions -->
4645

app/src/main/res/values/dims.xml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,8 @@
100100
<dimen name="activity_row_layout_height">48dp</dimen>
101101
<dimen name="notification_icon_width">24dp</dimen>
102102
<dimen name="notification_icon_height">24dp</dimen>
103-
<dimen name="notification_icon_layout_right_end_margin">24dp</dimen>
104-
<dimen name="notification_list_item_grid_layout_left_start_margin">-3dp</dimen>
103+
<dimen name="notification_icon_layout_right_end_margin">22dp</dimen>
104+
<dimen name="notification_list_item_grid_layout_left_start_margin">-8dp</dimen>
105105
<dimen name="uploader_list_separator_height">1dp</dimen>
106106
<dimen name="contactlist_item_icon_layout_width">40dp</dimen>
107107
<dimen name="contactlist_item_icon_layout_height">40dp</dimen>
@@ -148,7 +148,6 @@
148148
<dimen name="dialog_padding">24dp</dimen>
149149
<integer name="small_margin">5</integer>
150150
<integer name="zero">0</integer>
151-
<dimen name="notification_row_item_height">145dp</dimen>
152151
<dimen name="txt_size_16sp">16sp</dimen>
153152
<dimen name="txt_size_14sp">14sp</dimen>
154153
<!--Adaptive Icon size specified here: https://developer.android.com/develop/ui/views/launch/icon_design_adaptive -->

0 commit comments

Comments
 (0)