Update a bunch of strings to include nonprofit labeling.

This commit is contained in:
Greyson Parrelli
2026-01-23 13:56:33 -05:00
committed by Alex Hart
parent 311793ac33
commit 9bbd9b56e7
7 changed files with 38 additions and 25 deletions

View File

@@ -57,7 +57,6 @@ class ViewBadgeBottomSheetDialogFragment : FixedRoundedCornerBottomSheetDialogFr
binding.action.visible = false
}
@Suppress("CascadeIf")
if (!InAppDonations.hasAtLeastOnePaymentMethodAvailable()) {
binding.noSupport.visible = true
binding.action.icon = ContextCompat.getDrawable(requireContext(), R.drawable.ic_open_20)
@@ -65,12 +64,10 @@ class ViewBadgeBottomSheetDialogFragment : FixedRoundedCornerBottomSheetDialogFr
binding.action.setOnClickListener {
CommunicationActions.openBrowserLink(requireContext(), getString(R.string.donate_url))
}
} else if (Recipient.self().badges.none { it.category == Badge.Category.Donor && !it.isBoost() && !it.isExpired() }) {
} else {
binding.action.setOnClickListener {
startActivity(AppSettingsActivity.subscriptions(requireContext()))
}
} else {
binding.action.visible = false
}
val adapter = MappingAdapter()

View File

@@ -117,6 +117,8 @@ class HelpSettingsFragment : ComposeFragment() {
append(getString(R.string.HelpFragment__copyright_signal_messenger))
append("\n")
append(getString(R.string.HelpFragment__licenced_under_the_agplv3))
append("\n")
append(getString(R.string.HelpSettingsFragment__signal_is_a_501c3))
}.toString()
)
}

View File

@@ -98,7 +98,7 @@ class DonateToSignalFragment :
private val supportTechSummary: CharSequence by lazy {
SpannableStringBuilder(SpanUtil.color(ContextCompat.getColor(requireContext(), R.color.signal_colorOnSurfaceVariant), requireContext().getString(R.string.DonateToSignalFragment__private_messaging)))
.append(" ")
.append("\n")
.append(
SpanUtil.readMore(requireContext(), ContextCompat.getColor(requireContext(), R.color.signal_colorPrimary)) {
findNavController().safeNavigate(DonateToSignalFragmentDirections.actionDonateToSignalFragmentToSubscribeLearnMoreBottomSheetDialog())

View File

@@ -68,7 +68,7 @@ class ManageDonationsFragment :
private val supportTechSummary: CharSequence by lazy {
SpannableStringBuilder(SpanUtil.color(ContextCompat.getColor(requireContext(), R.color.signal_colorOnSurfaceVariant), requireContext().getString(R.string.DonateToSignalFragment__private_messaging)))
.append(" ")
.append("\n")
.append(
SpanUtil.readMore(requireContext(), ContextCompat.getColor(requireContext(), R.color.signal_colorPrimary)) {
findNavController().safeNavigate(ManageDonationsFragmentDirections.actionManageDonationsFragmentToSubscribeLearnMoreBottomSheetDialog())

View File

@@ -44,52 +44,60 @@
android:layout_marginStart="@dimen/dsl_settings_gutter"
android:layout_marginTop="28dp"
android:layout_marginEnd="@dimen/dsl_settings_gutter"
android:gravity="center"
android:text="@string/SubscribeLearnMoreBottomSheetDialogFragment__signal_is_different"
android:textAppearance="@style/Signal.Text.HeadlineMedium"
android:textAppearance="@style/Signal.Text.BodyLarge"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/subscribe_bottom_sheet_heart" />
<TextView
android:id="@+id/subscribe_bottom_sheet_subhead"
android:id="@+id/subscribe_bottom_sheet_donate_badge"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dsl_settings_gutter"
android:layout_marginTop="16dp"
android:layout_marginEnd="@dimen/dsl_settings_gutter"
android:text="@string/SubscribeLearnMoreBottomSheetDialogFragment__private_messaging"
android:drawableStart="@drawable/symbol_badge_multi_24"
android:drawablePadding="16dp"
android:gravity="center_vertical"
android:text="@string/SubscribeLearnMoreBottomSheetDialogFragment__donate_and_get_badge"
android:textAppearance="@style/Signal.Text.BodyLarge"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/subscribe_bottom_sheet_headline" />
<TextView
android:id="@+id/subscribe_bottom_sheet_the_team"
android:id="@+id/subscribe_bottom_sheet_privacy_mission"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dsl_settings_gutter"
android:layout_marginTop="16dp"
android:layout_marginEnd="@dimen/dsl_settings_gutter"
android:text="@string/SubscribeLearnMoreBottomSheetDialogFragment__signal_is_supported_by"
android:drawableStart="@drawable/symbol_lock_24"
android:drawablePadding="16dp"
android:gravity="center_vertical"
android:text="@string/SubscribeLearnMoreBottomSheetDialogFragment__your_privacy_is_our_mission"
android:textAppearance="@style/Signal.Text.BodyLarge"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/subscribe_bottom_sheet_subhead" />
app:layout_constraintTop_toBottomOf="@id/subscribe_bottom_sheet_donate_badge" />
<TextView
android:id="@+id/subscribe_bottom_sheet_your_contribution"
android:id="@+id/subscribe_bottom_sheet_nonprofit"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dsl_settings_gutter"
android:layout_marginTop="24dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="@dimen/dsl_settings_gutter"
android:drawableStart="@drawable/symbol_heart_24"
android:drawablePadding="16dp"
android:gravity="center_vertical"
android:paddingBottom="36dp"
android:text="@string/SubscribeLearnMoreBottomSheetDialogFragment__if_you_can"
android:text="@string/SubscribeLearnMoreBottomSheetDialogFragment__signal_is_a_501c3"
android:textAppearance="@style/Signal.Text.BodyLarge"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/subscribe_bottom_sheet_the_team" />
app:layout_constraintTop_toBottomOf="@id/subscribe_bottom_sheet_privacy_mission" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.core.widget.NestedScrollView>

View File

@@ -61,6 +61,7 @@
android:layout_marginEnd="48dp"
android:layout_marginBottom="32dp"
android:minHeight="48dp"
android:minWidth="220dp"
android:text="@string/ViewBadgeBottomSheetDialogFragment__donate_now"
app:iconGravity="textEnd"
app:iconTint="@color/signal_colorOnSurfaceVariant"

View File

@@ -2756,7 +2756,8 @@
<string name="RegistrationActivity_i_understand">I understand</string>
<string name="RegistrationActivity_play_services_error">Play Services Error</string>
<string name="RegistrationActivity_google_play_services_is_updating_or_unavailable">Google Play Services is updating or temporarily unavailable. Please try again.</string>
<string name="RegistrationActivity_terms_and_privacy">Terms &amp; Privacy Policy</string>
<!-- Non-English translations should use "Signal is a nonprofit" instead, dropping the 501c3 reference. -->
<string name="RegistrationActivity_terms_and_privacy">Signal is a 501c3 nonprofit\nTerms &amp; Privacy Policy</string>
<string name="RegistrationActivity_signal_needs_access_to_your_contacts_and_media_in_order_to_connect_with_friends">Signal needs the contacts and media permissions to help you connect with friends and send messages. Your contacts are uploaded using Signal\'s private contact discovery, which means they are end-to-end encrypted and never visible to the Signal service.</string>
<string name="RegistrationActivity_signal_needs_access_to_your_contacts_in_order_to_connect_with_friends">Signal needs the contacts permission to help you connect with friends. Your contacts are uploaded using Signal\'s private contact discovery, which means they are end-to-end encrypted and never visible to the Signal service.</string>
<string name="RegistrationActivity_rate_limited_to_service">You\'ve made too many attempts to register this number. Please try again later.</string>
@@ -5798,6 +5799,8 @@
<string name="HelpSettingsFragment__terms_amp_privacy_policy">Terms &amp; Privacy Policy</string>
<string name="HelpFragment__copyright_signal_messenger">Copyright Signal Messenger</string>
<string name="HelpFragment__licenced_under_the_agplv3">Licensed under the GNU AGPLv3</string>
<!-- Non-English translations should use "Signal is a nonprofit." instead, dropping the 501c3 reference. -->
<string name="HelpSettingsFragment__signal_is_a_501c3">Signal is a 501c3 nonprofit</string>
<!-- DataAndStorageSettingsFragment -->
<string name="DataAndStorageSettingsFragment__media_quality">Media quality</string>
@@ -6185,7 +6188,7 @@
<string name="SelectFeaturedBadgeFragment__failed_to_update_profile">Failed to update profile</string>
<!-- Displayed on primary button in the bottom sheet as a call-to-action to launch into the donation flow -->
<string name="ViewBadgeBottomSheetDialogFragment__donate_now">Donate now</string>
<string name="ViewBadgeBottomSheetDialogFragment__donate_now">Donate</string>
<!-- Title of a page in the bottom sheet. Placeholder is a user\'s short-name -->
<string name="ViewBadgeBottomSheetDialogFragment__s_supports_signal">%1$s supports Signal</string>
<!-- Description of a page in the bottom sheet of a monthly badge. Placeholder is a user\'s short-name -->
@@ -6213,13 +6216,15 @@
<string name="Subscription__expires_s">Expires %1$s</string>
<!-- Title of learn more sheet -->
<string name="SubscribeLearnMoreBottomSheetDialogFragment__signal_is_different">Signal is different.</string>
<string name="SubscribeLearnMoreBottomSheetDialogFragment__signal_is_different">As an independent nonprofit, Signal is committed to private messaging and calls. No ads, no trackers, no surveillance. Donate today to support Signal.</string>
<!-- First small text blurb on learn more sheet -->
<string name="SubscribeLearnMoreBottomSheetDialogFragment__private_messaging">Private messaging. No ads, no trackers, no surveillance.</string>
<string name="SubscribeLearnMoreBottomSheetDialogFragment__private_messaging">No ads, no trackers, no surveillance. Donate today to support Signal.</string>
<!-- Second small text blurb on learn more sheet -->
<string name="SubscribeLearnMoreBottomSheetDialogFragment__signal_is_supported_by">Signal is supported by donations, meaning that your privacy is at the center of everything we do. Signal is built for you; not your data and not for profit.</string>
<string name="SubscribeLearnMoreBottomSheetDialogFragment__donate_and_get_badge">Get an optional badge on your profile when you donate</string>
<!-- Third small text blurb on learn more sheet -->
<string name="SubscribeLearnMoreBottomSheetDialogFragment__if_you_can">If you can, please donate today to keep Signal fun, dependable, and available for everyone.</string>
<string name="SubscribeLearnMoreBottomSheetDialogFragment__your_privacy_is_our_mission">Your privacy is our mission</string>
<!-- Fourth small text blurb on learn more sheet. Non-English translations should use "Signal is a nonprofit." instead, dropping the 501c3 reference. -->
<string name="SubscribeLearnMoreBottomSheetDialogFragment__signal_is_a_501c3">Signal is a 501c3 nonprofit. US donations are tax deductible.</string>
<string name="SubscribeThanksForYourSupportBottomSheetDialogFragment__thanks_for_your_support">Thanks for your Support!</string>
<!-- Subtext underneath the dialog title on the thanks sheet -->
@@ -7249,11 +7254,11 @@
<!-- DonateToSignalFragment -->
<!-- Title below avatar -->
<string name="DonateToSignalFragment__privacy_over_profit">Privacy over profit</string>
<string name="DonateToSignalFragment__privacy_over_profit">Proudly Nonprofit</string>
<!-- Continue button label -->
<string name="DonateToSignalFragment__continue">Continue</string>
<!-- Description below title -->
<string name="DonateToSignalFragment__private_messaging">Private messaging, funded by you. No ads, no tracking, no compromise. Donate now to support Signal.</string>
<string name="DonateToSignalFragment__private_messaging">Donate to support private messaging. Keep Signal independent and ad-free.</string>
<!-- Dialog title when a user tries to donate while they already have a pending donation. -->
<string name="DonateToSignalFragment__you_have_a_donation_pending">You have a donation pending</string>
<!-- Dialog body when a user tries to donate while they already have a pending monthly donation. -->