diff --git a/app/src/main/java/org/thoughtcrime/securesms/badges/self/none/BecomeASustainerFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/badges/self/none/BecomeASustainerFragment.kt index 377d680adc..156fd4135a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/badges/self/none/BecomeASustainerFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/badges/self/none/BecomeASustainerFragment.kt @@ -58,7 +58,7 @@ class BecomeASustainerFragment : DSLSettingsBottomSheetFragment() { space(DimensionUnit.DP.toPixels(32f).toInt()) - tonalButton( + tonalWrappedButton( text = DSLSettingsText.from( R.string.BecomeASustainerMegaphone__become_a_sustainer ), diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/gateway/GatewaySelectorBottomSheet.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/gateway/GatewaySelectorBottomSheet.kt index 33c7ccef95..be00df20b9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/gateway/GatewaySelectorBottomSheet.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/gateway/GatewaySelectorBottomSheet.kt @@ -16,7 +16,6 @@ import org.thoughtcrime.securesms.components.settings.DSLSettingsAdapter import org.thoughtcrime.securesms.components.settings.DSLSettingsBottomSheetFragment import org.thoughtcrime.securesms.components.settings.DSLSettingsIcon import org.thoughtcrime.securesms.components.settings.DSLSettingsText -import org.thoughtcrime.securesms.components.settings.NO_TINT import org.thoughtcrime.securesms.components.settings.app.subscription.DonationPaymentComponent import org.thoughtcrime.securesms.components.settings.app.subscription.donate.DonateToSignalType import org.thoughtcrime.securesms.components.settings.app.subscription.models.GooglePayButton @@ -106,7 +105,7 @@ class GatewaySelectorBottomSheet : DSLSettingsBottomSheetFragment() { primaryButton( text = DSLSettingsText.from(R.string.GatewaySelectorBottomSheet__credit_or_debit_card), - icon = DSLSettingsIcon.from(R.drawable.credit_card, NO_TINT), + icon = DSLSettingsIcon.from(R.drawable.credit_card, R.color.signal_colorOnPrimary), onClick = { findNavController().popBackStack() val response = GatewayResponse(GatewayResponse.Gateway.CREDIT_CARD, args.request) @@ -118,9 +117,9 @@ class GatewaySelectorBottomSheet : DSLSettingsBottomSheetFragment() { if (state.isSEPADebitAvailable) { space(8.dp) - primaryButton( + tonalButton( text = DSLSettingsText.from(R.string.GatewaySelectorBottomSheet__bank_transfer), - icon = DSLSettingsIcon.from(R.drawable.credit_card, NO_TINT), // TODO [sepa] -- Final icon + icon = DSLSettingsIcon.from(R.drawable.bank_transfer), onClick = { findNavController().popBackStack() val response = GatewayResponse(GatewayResponse.Gateway.SEPA_DEBIT, args.request) diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/dsl.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/dsl.kt index 1644fafef5..f8e85a2f86 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/dsl.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/dsl.kt @@ -177,10 +177,21 @@ class DSLConfiguration { fun tonalButton( text: DSLSettingsText, + icon: DSLSettingsIcon? = null, isEnabled: Boolean = true, onClick: () -> Unit ) { - val preference = Button.Model.Tonal(text, null, isEnabled, onClick) + val preference = Button.Model.Tonal(text, icon, isEnabled, onClick) + children.add(preference) + } + + fun tonalWrappedButton( + text: DSLSettingsText, + icon: DSLSettingsIcon? = null, + isEnabled: Boolean = true, + onClick: () -> Unit + ) { + val preference = Button.Model.TonalWrapped(text, icon, isEnabled, onClick) children.add(preference) } diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/models/Button.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/models/Button.kt index 86ec8fd73b..da5b54fc7c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/models/Button.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/models/Button.kt @@ -16,6 +16,7 @@ object Button { mappingAdapter.registerFactory(Model.Primary::class.java, LayoutFactory({ ViewHolder(it) }, R.layout.dsl_button_primary)) mappingAdapter.registerFactory(Model.PrimaryWrapped::class.java, LayoutFactory({ ViewHolder(it) }, R.layout.dsl_button_primary_wrapped)) mappingAdapter.registerFactory(Model.Tonal::class.java, LayoutFactory({ ViewHolder(it) }, R.layout.dsl_button_tonal)) + mappingAdapter.registerFactory(Model.TonalWrapped::class.java, LayoutFactory({ ViewHolder(it) }, R.layout.dsl_button_tonal_wrapped)) mappingAdapter.registerFactory(Model.SecondaryNoOutline::class.java, LayoutFactory({ ViewHolder(it) }, R.layout.dsl_button_secondary)) } @@ -56,6 +57,13 @@ object Button { onClick: () -> Unit ) : Model(title, icon, isEnabled, onClick) + class TonalWrapped( + title: DSLSettingsText?, + icon: DSLSettingsIcon?, + isEnabled: Boolean, + onClick: () -> Unit + ) : Model(title, icon, isEnabled, onClick) + class SecondaryNoOutline( title: DSLSettingsText?, icon: DSLSettingsIcon?, diff --git a/app/src/main/res/drawable-night/credit_card.xml b/app/src/main/res/drawable-night/credit_card.xml deleted file mode 100644 index 1167a5af1d..0000000000 --- a/app/src/main/res/drawable-night/credit_card.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - diff --git a/app/src/main/res/drawable/bank_transfer.xml b/app/src/main/res/drawable/bank_transfer.xml new file mode 100644 index 0000000000..762618701c --- /dev/null +++ b/app/src/main/res/drawable/bank_transfer.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/credit_card.xml b/app/src/main/res/drawable/credit_card.xml index 468be2f196..8272cb6758 100644 --- a/app/src/main/res/drawable/credit_card.xml +++ b/app/src/main/res/drawable/credit_card.xml @@ -1,30 +1,9 @@ - - - - - - - + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24"> + diff --git a/app/src/main/res/layout/dsl_button_tonal.xml b/app/src/main/res/layout/dsl_button_tonal.xml index 85ef11b623..a269c6ea93 100644 --- a/app/src/main/res/layout/dsl_button_tonal.xml +++ b/app/src/main/res/layout/dsl_button_tonal.xml @@ -1,15 +1,18 @@ - - - - + android:layout_height="wrap_content" + android:layout_marginStart="@dimen/dsl_settings_gutter" + android:layout_marginEnd="@dimen/dsl_settings_gutter" + android:insetTop="2dp" + android:insetBottom="2dp" + app:iconGravity="textStart" + app:iconSize="32dp" + app:iconTint="@null" + tools:icon="@drawable/bank_transfer" + tools:text="Tonal button" + tools:viewBindingIgnore="true" /> \ No newline at end of file diff --git a/app/src/main/res/layout/dsl_button_tonal_wrapped.xml b/app/src/main/res/layout/dsl_button_tonal_wrapped.xml new file mode 100644 index 0000000000..85ef11b623 --- /dev/null +++ b/app/src/main/res/layout/dsl_button_tonal_wrapped.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/app/src/main/res/navigation/gift_flow.xml b/app/src/main/res/navigation/gift_flow.xml index 652e2ed04f..3751c1e7d2 100644 --- a/app/src/main/res/navigation/gift_flow.xml +++ b/app/src/main/res/navigation/gift_flow.xml @@ -65,6 +65,9 @@ + + + + + + \ No newline at end of file