From f35dbaa529ff0bfaa6ddbada4198e594f3bde10a Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Wed, 24 Jul 2019 13:49:06 -0500 Subject: [PATCH] Use accent color for light white theme buttons --- .../org/tasks/billing/PurchaseAdapter.java | 2 +- .../org/tasks/billing/PurchaseHolder.java | 19 +++++-------------- .../org/tasks/dialogs/AlertDialogBuilder.java | 3 ++- .../res/color/button_accent_background.xml | 5 +++++ .../main/res/color/button_accent_ripple.xml | 8 ++++++++ .../main/res/color/button_accent_stroke.xml | 5 +++++ app/src/main/res/color/button_accent_text.xml | 7 +++++++ .../res/layout/dialog_name_your_price.xml | 10 +++++----- .../main/res/layout/dialog_purchase_cell.xml | 9 +++++---- app/src/main/res/values-night/theme_white.xml | 6 ++++++ app/src/main/res/values/attrs.xml | 4 ++++ app/src/main/res/values/styles.xml | 13 +++++++++++++ app/src/main/res/values/theme.xml | 6 +++++- app/src/main/res/values/theme_white.xml | 16 +++++++++++++++- 14 files changed, 86 insertions(+), 27 deletions(-) create mode 100644 app/src/main/res/color/button_accent_background.xml create mode 100644 app/src/main/res/color/button_accent_ripple.xml create mode 100644 app/src/main/res/color/button_accent_stroke.xml create mode 100644 app/src/main/res/color/button_accent_text.xml create mode 100644 app/src/main/res/values-night/theme_white.xml diff --git a/app/src/main/java/org/tasks/billing/PurchaseAdapter.java b/app/src/main/java/org/tasks/billing/PurchaseAdapter.java index bea55a71f..2ef944bac 100644 --- a/app/src/main/java/org/tasks/billing/PurchaseAdapter.java +++ b/app/src/main/java/org/tasks/billing/PurchaseAdapter.java @@ -39,7 +39,7 @@ public class PurchaseAdapter extends ListAdapter { @Override public PurchaseHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = activity.getLayoutInflater().inflate(R.layout.dialog_purchase_cell, parent, false); - return new PurchaseHolder(activity, view, onPriceChanged, locale); + return new PurchaseHolder(view, onPriceChanged, locale); } @Override diff --git a/app/src/main/java/org/tasks/billing/PurchaseHolder.java b/app/src/main/java/org/tasks/billing/PurchaseHolder.java index 88d1f95e9..936a5510a 100644 --- a/app/src/main/java/org/tasks/billing/PurchaseHolder.java +++ b/app/src/main/java/org/tasks/billing/PurchaseHolder.java @@ -1,38 +1,32 @@ package org.tasks.billing; -import static org.tasks.preferences.ResourceResolver.getData; - -import android.content.Context; import android.view.View; -import android.widget.TextView; import androidx.annotation.NonNull; -import androidx.core.content.ContextCompat; import androidx.recyclerview.widget.RecyclerView; import butterknife.BindView; import butterknife.ButterKnife; import butterknife.OnClick; +import com.google.android.material.button.MaterialButton; import org.tasks.Callback; import org.tasks.R; import org.tasks.locale.Locale; public class PurchaseHolder extends RecyclerView.ViewHolder { - private final Context context; private final Callback onClick; private final Locale locale; @BindView(R.id.price) - TextView textView; + MaterialButton button; private int price; - PurchaseHolder(Context context, @NonNull View view, Callback onClick, Locale locale) { + PurchaseHolder(@NonNull View view, Callback onClick, Locale locale) { super(view); this.locale = locale; ButterKnife.bind(this, view); - this.context = context; this.onClick = onClick; } @@ -43,10 +37,7 @@ public class PurchaseHolder extends RecyclerView.ViewHolder { public void bind(int price, boolean selected) { this.price = price; - textView.setText(String.format("$%s", locale.formatNumber(price))); - textView.setTextColor( - selected - ? getData(context, R.attr.colorPrimary) - : ContextCompat.getColor(context, R.color.text_primary)); + button.setText(String.format("$%s", locale.formatNumber(price))); + button.setChecked(selected); } } diff --git a/app/src/main/java/org/tasks/dialogs/AlertDialogBuilder.java b/app/src/main/java/org/tasks/dialogs/AlertDialogBuilder.java index 75cec5e11..94e6aaa43 100644 --- a/app/src/main/java/org/tasks/dialogs/AlertDialogBuilder.java +++ b/app/src/main/java/org/tasks/dialogs/AlertDialogBuilder.java @@ -8,6 +8,7 @@ import android.view.ContextThemeWrapper; import android.view.View; import android.widget.ListAdapter; import androidx.appcompat.app.AlertDialog; +import com.google.android.material.dialog.MaterialAlertDialogBuilder; import java.util.List; import org.tasks.locale.Locale; import org.tasks.themes.Theme; @@ -25,7 +26,7 @@ public class AlertDialogBuilder { this.locale = locale; ContextThemeWrapper wrapper = theme.getThemedDialog(context); theme.applyToContext(wrapper); - builder = new AlertDialog.Builder(wrapper); + builder = new MaterialAlertDialogBuilder(wrapper); } public AlertDialogBuilder setMessage(int message, Object... formatArgs) { diff --git a/app/src/main/res/color/button_accent_background.xml b/app/src/main/res/color/button_accent_background.xml new file mode 100644 index 000000000..404d7771b --- /dev/null +++ b/app/src/main/res/color/button_accent_background.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/color/button_accent_ripple.xml b/app/src/main/res/color/button_accent_ripple.xml new file mode 100644 index 000000000..88ef2febb --- /dev/null +++ b/app/src/main/res/color/button_accent_ripple.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/app/src/main/res/color/button_accent_stroke.xml b/app/src/main/res/color/button_accent_stroke.xml new file mode 100644 index 000000000..ef283a50a --- /dev/null +++ b/app/src/main/res/color/button_accent_stroke.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/color/button_accent_text.xml b/app/src/main/res/color/button_accent_text.xml new file mode 100644 index 000000000..08b2a61bb --- /dev/null +++ b/app/src/main/res/color/button_accent_text.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/app/src/main/res/layout/dialog_name_your_price.xml b/app/src/main/res/layout/dialog_name_your_price.xml index 97555190c..d7a8ff030 100644 --- a/app/src/main/res/layout/dialog_name_your_price.xml +++ b/app/src/main/res/layout/dialog_name_your_price.xml @@ -33,14 +33,14 @@ @@ -55,7 +55,7 @@ - diff --git a/app/src/main/res/values-night/theme_white.xml b/app/src/main/res/values-night/theme_white.xml new file mode 100644 index 000000000..444468ced --- /dev/null +++ b/app/src/main/res/values-night/theme_white.xml @@ -0,0 +1,6 @@ + + + + + + + + diff --git a/app/src/main/res/values/theme.xml b/app/src/main/res/values/theme.xml index 0b10b7f1f..6fce8cf0d 100644 --- a/app/src/main/res/values/theme.xml +++ b/app/src/main/res/values/theme.xml @@ -18,7 +18,7 @@ @style/SpinnerNoPadding @style/TasksDialog @style/TasksDialog - @style/TasksDialogAlert + @style/TasksDialogAlert @dimen/alpha_secondary @dimen/alpha_disabled @color/text_primary @@ -31,6 +31,10 @@ ?attr/colorAccent ?attr/colorAccent 2dp + @color/mtrl_text_btn_text_color_selector + @color/mtrl_btn_text_btn_bg_color_selector + @color/mtrl_btn_text_btn_ripple_color + @color/mtrl_btn_stroke_color_selector + + + + \ No newline at end of file