diff --git a/mailbox-android/src/main/java/org/briarproject/mailbox/android/settings/SettingsFragment.java b/mailbox-android/src/main/java/org/briarproject/mailbox/android/settings/SettingsFragment.java index ea03b41cc0adf4a11a9242a229b7a623df868c83..6222c7b2ebed550bfbf6c206e676575ce3e6a7aa 100644 --- a/mailbox-android/src/main/java/org/briarproject/mailbox/android/settings/SettingsFragment.java +++ b/mailbox-android/src/main/java/org/briarproject/mailbox/android/settings/SettingsFragment.java @@ -5,9 +5,6 @@ import android.app.AlertDialog; import android.content.Context; import android.content.Intent; import android.graphics.drawable.ColorDrawable; -import android.media.Ringtone; -import android.media.RingtoneManager; -import android.net.Uri; import android.os.Bundle; import android.support.annotation.StringRes; import android.support.v14.preference.SwitchPreference; @@ -21,7 +18,6 @@ import android.support.v7.preference.PreferenceGroup; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import android.widget.Toast; import org.briarproject.bramble.api.db.DbException; import org.briarproject.bramble.api.event.Event; @@ -37,7 +33,6 @@ import org.briarproject.bramble.api.settings.event.SettingsUpdatedEvent; import org.briarproject.bramble.api.system.AndroidExecutor; import org.briarproject.bramble.api.system.LocationUtils; import org.briarproject.bramble.plugin.tor.CircumventionProvider; -import org.briarproject.bramble.util.StringUtils; import org.briarproject.mailbox.R; import org.briarproject.mailbox.android.Localizer; import org.briarproject.mailbox.android.navdrawer.NavDrawerActivity; @@ -50,24 +45,13 @@ import java.util.logging.Logger; import javax.inject.Inject; -import static android.app.Activity.RESULT_OK; import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TASK; import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK; -import static android.media.RingtoneManager.ACTION_RINGTONE_PICKER; -import static android.media.RingtoneManager.EXTRA_RINGTONE_DEFAULT_URI; -import static android.media.RingtoneManager.EXTRA_RINGTONE_EXISTING_URI; -import static android.media.RingtoneManager.EXTRA_RINGTONE_PICKED_URI; -import static android.media.RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT; -import static android.media.RingtoneManager.EXTRA_RINGTONE_TITLE; -import static android.media.RingtoneManager.EXTRA_RINGTONE_TYPE; -import static android.media.RingtoneManager.TYPE_NOTIFICATION; import static android.os.Build.VERSION.SDK_INT; import static android.provider.Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS; import static android.provider.Settings.EXTRA_APP_PACKAGE; import static android.provider.Settings.EXTRA_CHANNEL_ID; -import static android.provider.Settings.System.DEFAULT_NOTIFICATION_URI; import static android.support.v4.view.ViewCompat.LAYOUT_DIRECTION_LTR; -import static android.widget.Toast.LENGTH_SHORT; import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; import static org.briarproject.bramble.api.plugin.BluetoothConstants.PREF_BT_ENABLE; @@ -81,14 +65,10 @@ import static org.briarproject.mailbox.android.TestingConstants.FEATURE_FLAG_DAR import static org.briarproject.mailbox.android.TestingConstants.FEATURE_FLAG_PIN_LOCK; import static org.briarproject.mailbox.android.TestingConstants.FEATURE_FLAG_SIGN_IN_REMINDER; import static org.briarproject.mailbox.android.TestingConstants.IS_DEBUG_BUILD; -import static org.briarproject.mailbox.android.activity.RequestCodes.REQUEST_RINGTONE; import static org.briarproject.mailbox.android.navdrawer.NavDrawerActivity.INTENT_SIGN_OUT; import static org.briarproject.mailbox.android.util.UiUtils.hasScreenLock; import static org.briarproject.mailbox.android.util.UiUtils.triggerFeedback; import static org.briarproject.mailbox.api.android.AndroidNotificationManager.PREF_NOTIFY_LOCK_SCREEN; -import static org.briarproject.mailbox.api.android.AndroidNotificationManager.PREF_NOTIFY_RINGTONE_NAME; -import static org.briarproject.mailbox.api.android.AndroidNotificationManager.PREF_NOTIFY_RINGTONE_URI; -import static org.briarproject.mailbox.api.android.AndroidNotificationManager.PREF_NOTIFY_SOUND; @MethodsNotNullByDefault @ParametersNotNullByDefault @@ -116,11 +96,6 @@ public class SettingsFragment extends PreferenceFragmentCompat private SwitchPreference torMobile; private SwitchPreference screenLock; private ListPreference screenLockTimeout; - private SwitchPreference notifyPrivateMessages; - private SwitchPreference notifyGroupMessages; - private SwitchPreference notifyForumPosts; - private SwitchPreference notifyBlogPosts; - private SwitchPreference notifyVibration; private SwitchPreference notifyLockscreen; private Preference notifySound; @@ -164,19 +139,8 @@ public class SettingsFragment extends PreferenceFragmentCompat screenLock = (SwitchPreference) findPreference(PREF_SCREEN_LOCK); screenLockTimeout = (ListPreference) findPreference(PREF_SCREEN_LOCK_TIMEOUT); - notifyPrivateMessages = (SwitchPreference) findPreference( - "pref_key_notify_private_messages"); - notifyGroupMessages = (SwitchPreference) findPreference( - "pref_key_notify_group_messages"); - notifyForumPosts = (SwitchPreference) findPreference( - "pref_key_notify_forum_posts"); - notifyBlogPosts = (SwitchPreference) findPreference( - "pref_key_notify_blog_posts"); - notifyVibration = (SwitchPreference) findPreference( - "pref_key_notify_vibration"); notifyLockscreen = (SwitchPreference) findPreference( "pref_key_notify_lock_screen"); - notifySound = findPreference("pref_key_notify_sound"); language.setOnPreferenceChangeListener(this); theme.setOnPreferenceChangeListener((preference, newValue) -> { @@ -386,13 +350,7 @@ public class SettingsFragment extends PreferenceFragmentCompat torNetwork.setEnabled(enabled); torMobile.setEnabled(enabled); if (!enabled) screenLock.setEnabled(false); - notifyPrivateMessages.setEnabled(enabled); - notifyGroupMessages.setEnabled(enabled); - notifyForumPosts.setEnabled(enabled); - notifyBlogPosts.setEnabled(enabled); - notifyVibration.setEnabled(enabled); notifyLockscreen.setEnabled(enabled); - notifySound.setEnabled(enabled); } private void displayScreenLockSetting() { @@ -445,27 +403,6 @@ public class SettingsFragment extends PreferenceFragmentCompat }); } - private boolean onNotificationSoundClicked() { - String title = getString(R.string.choose_ringtone_title); - Intent i = new Intent(ACTION_RINGTONE_PICKER); - i.putExtra(EXTRA_RINGTONE_TYPE, TYPE_NOTIFICATION); - i.putExtra(EXTRA_RINGTONE_TITLE, title); - i.putExtra(EXTRA_RINGTONE_DEFAULT_URI, - DEFAULT_NOTIFICATION_URI); - i.putExtra(EXTRA_RINGTONE_SHOW_SILENT, true); - if (settings.getBoolean(PREF_NOTIFY_SOUND, true)) { - Uri uri; - String ringtoneUri = - settings.get(PREF_NOTIFY_RINGTONE_URI); - if (StringUtils.isNullOrEmpty(ringtoneUri)) - uri = DEFAULT_NOTIFICATION_URI; - else uri = Uri.parse(ringtoneUri); - i.putExtra(EXTRA_RINGTONE_EXISTING_URI, uri); - } - startActivityForResult(i, REQUEST_RINGTONE); - return true; - } - @Override public boolean onPreferenceChange(Preference preference, Object newValue) { if (preference == language) { @@ -554,39 +491,6 @@ public class SettingsFragment extends PreferenceFragmentCompat }); } - @Override - public void onActivityResult(int request, int result, Intent data) { - super.onActivityResult(request, result, data); - if (request == REQUEST_RINGTONE && result == RESULT_OK) { - Settings s = new Settings(); - Uri uri = data.getParcelableExtra(EXTRA_RINGTONE_PICKED_URI); - if (uri == null) { - // The user chose silence - s.putBoolean(PREF_NOTIFY_SOUND, false); - s.put(PREF_NOTIFY_RINGTONE_NAME, ""); - s.put(PREF_NOTIFY_RINGTONE_URI, ""); - } else if (RingtoneManager.isDefault(uri)) { - // The user chose the default - s.putBoolean(PREF_NOTIFY_SOUND, true); - s.put(PREF_NOTIFY_RINGTONE_NAME, ""); - s.put(PREF_NOTIFY_RINGTONE_URI, ""); - } else { - // The user chose a ringtone other than the default - Ringtone r = RingtoneManager.getRingtone(getContext(), uri); - if (r == null) { - Toast.makeText(getContext(), R.string.cannot_load_ringtone, - LENGTH_SHORT).show(); - } else { - String name = r.getTitle(getContext()); - s.putBoolean(PREF_NOTIFY_SOUND, true); - s.put(PREF_NOTIFY_RINGTONE_NAME, name); - s.put(PREF_NOTIFY_RINGTONE_URI, uri.toString()); - } - } - storeSettings(s); - } - } - @Override public void eventOccurred(Event e) { if (e instanceof SettingsUpdatedEvent) { diff --git a/mailbox-android/src/main/res/xml/settings.xml b/mailbox-android/src/main/res/xml/settings.xml index f325934e97334374e649d108a1cbabbd76f3580b..38418e58d271068b41a9ebc5a7c34819be454fca 100644 --- a/mailbox-android/src/main/res/xml/settings.xml +++ b/mailbox-android/src/main/res/xml/settings.xml @@ -113,38 +113,6 @@ android:title="@string/notify_sign_in_title" android:widgetLayout="@layout/preference_switch_compat"/> - <SwitchPreference - android:defaultValue="true" - android:key="pref_key_notify_private_messages" - android:persistent="false" - android:summary="@string/notify_private_messages_setting_summary" - android:title="@string/notify_private_messages_setting_title" - android:widgetLayout="@layout/preference_switch_compat"/> - - <SwitchPreference - android:defaultValue="true" - android:key="pref_key_notify_group_messages" - android:persistent="false" - android:summary="@string/notify_group_messages_setting_summary" - android:title="@string/notify_group_messages_setting_title" - android:widgetLayout="@layout/preference_switch_compat"/> - - <SwitchPreference - android:defaultValue="true" - android:key="pref_key_notify_forum_posts" - android:persistent="false" - android:summary="@string/notify_forum_posts_setting_summary" - android:title="@string/notify_forum_posts_setting_title" - android:widgetLayout="@layout/preference_switch_compat"/> - - <SwitchPreference - android:defaultValue="true" - android:key="pref_key_notify_blog_posts" - android:persistent="false" - android:summary="@string/notify_blog_posts_setting_summary" - android:title="@string/notify_blog_posts_setting_title" - android:widgetLayout="@layout/preference_switch_compat"/> - <SwitchPreference android:defaultValue="false" android:key="pref_key_notify_lock_screen" @@ -154,17 +122,6 @@ android:visibility="gone" android:widgetLayout="@layout/preference_switch_compat"/> - <SwitchPreference - android:defaultValue="true" - android:key="pref_key_notify_vibration" - android:persistent="false" - android:title="@string/notify_vibration_setting" - android:widgetLayout="@layout/preference_switch_compat"/> - - <Preference - android:key="pref_key_notify_sound" - android:title="@string/notify_sound_setting"/> - </PreferenceCategory> <PreferenceCategory