diff --git a/app/src/main/java/org/thoughtcrime/securesms/ApplicationPreferencesActivity.java b/app/src/main/java/org/thoughtcrime/securesms/ApplicationPreferencesActivity.java index 61372cdcee..ca252ff426 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/ApplicationPreferencesActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/ApplicationPreferencesActivity.java @@ -47,6 +47,7 @@ import org.thoughtcrime.securesms.preferences.widgets.UsernamePreference; import org.thoughtcrime.securesms.profiles.edit.EditProfileActivity; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.service.KeyCachingService; +import org.thoughtcrime.securesms.util.CommunicationActions; import org.thoughtcrime.securesms.util.DynamicLanguage; import org.thoughtcrime.securesms.util.DynamicTheme; import org.thoughtcrime.securesms.util.FeatureFlags; @@ -77,6 +78,7 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActivity private static final String PREFERENCE_CATEGORY_DEVICES = "preference_category_devices"; private static final String PREFERENCE_CATEGORY_HELP = "preference_category_help"; private static final String PREFERENCE_CATEGORY_ADVANCED = "preference_category_advanced"; + private static final String PREFERENCE_CATEGORY_DONATE = "preference_category_donate"; private final DynamicTheme dynamicTheme = new DynamicTheme(); private final DynamicLanguage dynamicLanguage = new DynamicLanguage(); @@ -177,7 +179,9 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActivity this.findPreference(PREFERENCE_CATEGORY_HELP) .setOnPreferenceClickListener(new CategoryClickListener(PREFERENCE_CATEGORY_HELP)); this.findPreference(PREFERENCE_CATEGORY_ADVANCED) - .setOnPreferenceClickListener(new CategoryClickListener(PREFERENCE_CATEGORY_ADVANCED)); + .setOnPreferenceClickListener(new CategoryClickListener(PREFERENCE_CATEGORY_ADVANCED)); + this.findPreference(PREFERENCE_CATEGORY_DONATE) + .setOnPreferenceClickListener(new CategoryClickListener(PREFERENCE_CATEGORY_DONATE)); tintIcons(); } @@ -292,6 +296,9 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActivity case PREFERENCE_CATEGORY_HELP: fragment = new HelpFragment(); break; + case PREFERENCE_CATEGORY_DONATE: + CommunicationActions.openBrowserLink(requireContext(), getString(R.string.donate_url)); + break; default: throw new AssertionError(); } diff --git a/app/src/main/res/drawable/ic_heart_outline_24.xml b/app/src/main/res/drawable/ic_heart_outline_24.xml new file mode 100644 index 0000000000..0654b6e60d --- /dev/null +++ b/app/src/main/res/drawable/ic_heart_outline_24.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_heart_solid_24.xml b/app/src/main/res/drawable/ic_heart_solid_24.xml new file mode 100644 index 0000000000..8b0e33a84b --- /dev/null +++ b/app/src/main/res/drawable/ic_heart_solid_24.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_open_20.xml b/app/src/main/res/drawable/ic_open_20.xml new file mode 100644 index 0000000000..ef2c78bbf8 --- /dev/null +++ b/app/src/main/res/drawable/ic_open_20.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/layout/donate_preference_widget.xml b/app/src/main/res/layout/donate_preference_widget.xml new file mode 100644 index 0000000000..70ed9737f6 --- /dev/null +++ b/app/src/main/res/layout/donate_preference_widget.xml @@ -0,0 +1,7 @@ + + \ No newline at end of file diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index 105cc958a2..f15d180037 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -240,6 +240,7 @@ + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c3291deb78..b90f4c83a8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -3,6 +3,7 @@ Signal https://signal.org/install + https://signal.org/donate Yes No @@ -2049,6 +2050,7 @@ Slow Help Advanced + Donate to Signal Privacy MMS User Agent Manual MMS settings diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 5f3e55dd37..726a938c22 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -400,6 +400,7 @@ @drawable/ic_advanced_24 @drawable/ic_safety_number_outline_24 @drawable/ic_help_outline_24 + @drawable/ic_heart_outline_24 @drawable/message_request_button_background_light @color/core_grey_90 @color/core_grey_60 @@ -731,6 +732,7 @@ @drawable/ic_advanced_24 @drawable/ic_safety_number_solid_24 @drawable/ic_help_solid_24 + @drawable/ic_heart_solid_24 @drawable/message_request_button_background_dark @color/core_grey_05 @color/core_grey_25 diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index 052e35cfed..66f4e0983b 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -46,4 +46,9 @@ android:title="@string/preferences__advanced" android:icon="?attr/advanced_icon"/> + +