mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-12 18:59:06 +01:00
Refactor keys for Android-specific settings into one place.
This commit is contained in:
@@ -92,7 +92,14 @@ import static org.briarproject.briar.android.navdrawer.NavDrawerActivity.CONTACT
|
||||
import static org.briarproject.briar.android.navdrawer.NavDrawerActivity.CONTACT_URI;
|
||||
import static org.briarproject.briar.android.navdrawer.NavDrawerActivity.FORUM_URI;
|
||||
import static org.briarproject.briar.android.navdrawer.NavDrawerActivity.GROUP_URI;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_BLOG;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_FORUM;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_GROUP;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_PRIVATE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_RINGTONE_URI;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_SOUND;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_VIBRATION;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
|
||||
@ThreadSafe
|
||||
@MethodsNotNullByDefault
|
||||
|
||||
@@ -26,7 +26,8 @@ import javax.inject.Inject;
|
||||
|
||||
import static java.util.logging.Level.WARNING;
|
||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.EMOJI_LRU_PREFERENCE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
|
||||
@MethodsNotNullByDefault
|
||||
@ParametersNotNullByDefault
|
||||
@@ -35,7 +36,6 @@ class RecentEmojiImpl implements RecentEmoji, OpenDatabaseHook {
|
||||
private static final Logger LOG =
|
||||
Logger.getLogger(RecentEmojiImpl.class.getName());
|
||||
|
||||
private static final String EMOJI_LRU_PREFERENCE = "pref_emoji_recent2";
|
||||
private static final int EMOJI_LRU_SIZE = 50;
|
||||
|
||||
// UI thread
|
||||
|
||||
@@ -41,10 +41,10 @@ import static java.util.concurrent.TimeUnit.MINUTES;
|
||||
import static java.util.logging.Level.WARNING;
|
||||
import static org.briarproject.bramble.util.AndroidUtils.getImmutableFlags;
|
||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||
import static org.briarproject.briar.android.settings.SecurityFragment.PREF_SCREEN_LOCK;
|
||||
import static org.briarproject.briar.android.settings.SecurityFragment.PREF_SCREEN_LOCK_TIMEOUT;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.android.util.UiUtils.hasScreenLock;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_SCREEN_LOCK;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_SCREEN_LOCK_TIMEOUT;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
|
||||
@ThreadSafe
|
||||
@MethodsNotNullByDefault
|
||||
|
||||
@@ -30,7 +30,8 @@ import static java.util.logging.Logger.getLogger;
|
||||
import static org.briarproject.android.dontkillmelib.DozeUtils.needsDozeWhitelisting;
|
||||
import static org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleState.STARTING_SERVICES;
|
||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.DOZE_ASK_AGAIN;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
|
||||
@NotNullByDefault
|
||||
public class BriarControllerImpl implements BriarController {
|
||||
@@ -38,8 +39,6 @@ public class BriarControllerImpl implements BriarController {
|
||||
private static final Logger LOG =
|
||||
getLogger(BriarControllerImpl.class.getName());
|
||||
|
||||
public static final String DOZE_ASK_AGAIN = "dozeAskAgain";
|
||||
|
||||
private final BriarServiceConnection serviceConnection;
|
||||
private final AccountManager accountManager;
|
||||
private final LifecycleManager lifecycleManager;
|
||||
|
||||
@@ -68,11 +68,13 @@ import static java.util.logging.Logger.getLogger;
|
||||
import static org.briarproject.bramble.util.LogUtils.logDuration;
|
||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||
import static org.briarproject.bramble.util.LogUtils.now;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.android.util.UiUtils.observeForeverOnce;
|
||||
import static org.briarproject.briar.android.view.TextSendController.SendState.ERROR;
|
||||
import static org.briarproject.briar.android.view.TextSendController.SendState.SENT;
|
||||
import static org.briarproject.briar.android.view.TextSendController.SendState.UNEXPECTED_TIMER;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SHOW_ONBOARDING_IMAGE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SHOW_ONBOARDING_INTRODUCTION;
|
||||
import static org.briarproject.briar.api.autodelete.AutoDeleteConstants.NO_AUTO_DELETE_TIMER;
|
||||
import static org.briarproject.briar.api.autodelete.AutoDeleteManager.DEFAULT_TIMER_DURATION;
|
||||
import static org.briarproject.briar.api.messaging.PrivateMessageFormat.TEXT_IMAGES;
|
||||
@@ -85,11 +87,6 @@ public class ConversationViewModel extends DbViewModel
|
||||
private static final Logger LOG =
|
||||
getLogger(ConversationViewModel.class.getName());
|
||||
|
||||
private static final String SHOW_ONBOARDING_IMAGE =
|
||||
"showOnboardingImage";
|
||||
private static final String SHOW_ONBOARDING_INTRODUCTION =
|
||||
"showOnboardingIntroduction";
|
||||
|
||||
private final TransactionManager db;
|
||||
private final EventBus eventBus;
|
||||
private final MessagingManager messagingManager;
|
||||
|
||||
@@ -28,8 +28,10 @@ import static java.util.logging.Logger.getLogger;
|
||||
import static org.briarproject.android.dontkillmelib.DozeUtils.needsDozeWhitelisting;
|
||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||
import static org.briarproject.briar.android.TestingConstants.EXPIRY_DATE;
|
||||
import static org.briarproject.briar.android.controller.BriarControllerImpl.DOZE_ASK_AGAIN;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.DOZE_ASK_AGAIN;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.EXPIRY_DATE_WARNING;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SHOW_ONBOARDING_TRANSPORTS;
|
||||
|
||||
@NotNullByDefault
|
||||
public class NavDrawerViewModel extends DbViewModel {
|
||||
@@ -37,10 +39,6 @@ public class NavDrawerViewModel extends DbViewModel {
|
||||
private static final Logger LOG =
|
||||
getLogger(NavDrawerViewModel.class.getName());
|
||||
|
||||
private static final String EXPIRY_DATE_WARNING = "expiryDateWarning";
|
||||
private static final String SHOW_TRANSPORTS_ONBOARDING =
|
||||
"showTransportsOnboarding";
|
||||
|
||||
private final SettingsManager settingsManager;
|
||||
|
||||
private final MutableLiveData<Boolean> showExpiryWarning =
|
||||
@@ -153,7 +151,7 @@ public class NavDrawerViewModel extends DbViewModel {
|
||||
Settings settings =
|
||||
settingsManager.getSettings(SETTINGS_NAMESPACE);
|
||||
boolean show =
|
||||
settings.getBoolean(SHOW_TRANSPORTS_ONBOARDING, true);
|
||||
settings.getBoolean(SHOW_ONBOARDING_TRANSPORTS, true);
|
||||
showTransportsOnboarding.postValue(show);
|
||||
} catch (DbException e) {
|
||||
handleException(e);
|
||||
@@ -167,7 +165,7 @@ public class NavDrawerViewModel extends DbViewModel {
|
||||
runOnDbThread(() -> {
|
||||
try {
|
||||
Settings settings = new Settings();
|
||||
settings.putBoolean(SHOW_TRANSPORTS_ONBOARDING, false);
|
||||
settings.putBoolean(SHOW_ONBOARDING_TRANSPORTS, false);
|
||||
settingsManager.mergeSettings(settings, SETTINGS_NAMESPACE);
|
||||
} catch (DbException e) {
|
||||
handleException(e);
|
||||
|
||||
@@ -31,7 +31,8 @@ import javax.inject.Inject;
|
||||
import static java.util.logging.Level.INFO;
|
||||
import static java.util.logging.Level.WARNING;
|
||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SHOW_ONBOARDING_REVEAL_CONTACTS;
|
||||
import static org.briarproject.briar.api.privategroup.Visibility.INVISIBLE;
|
||||
|
||||
@Immutable
|
||||
@@ -41,8 +42,6 @@ class RevealContactsControllerImpl extends DbControllerImpl
|
||||
|
||||
private static final Logger LOG =
|
||||
Logger.getLogger(RevealContactsControllerImpl.class.getName());
|
||||
private static final String SHOW_ONBOARDING_REVEAL_CONTACTS =
|
||||
"showOnboardingRevealContacts";
|
||||
|
||||
private final PrivateGroupManager groupManager;
|
||||
private final GroupInvitationManager groupInvitationManager;
|
||||
|
||||
@@ -47,12 +47,12 @@ import static org.briarproject.briar.api.android.AndroidNotificationManager.BLOG
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.CONTACT_CHANNEL_ID;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.FORUM_CHANNEL_ID;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.GROUP_CHANNEL_ID;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_BLOG;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_FORUM;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_GROUP;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_PRIVATE;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_SOUND;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_VIBRATION;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_BLOG;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_FORUM;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_GROUP;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_PRIVATE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_SOUND;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_VIBRATION;
|
||||
|
||||
@MethodsNotNullByDefault
|
||||
@ParametersNotNullByDefault
|
||||
|
||||
@@ -27,15 +27,15 @@ import static java.util.logging.Logger.getLogger;
|
||||
import static org.briarproject.bramble.util.LogUtils.logDuration;
|
||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||
import static org.briarproject.bramble.util.LogUtils.now;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_BLOG;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_FORUM;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_GROUP;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_PRIVATE;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_RINGTONE_NAME;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_RINGTONE_URI;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_SOUND;
|
||||
import static org.briarproject.briar.api.android.AndroidNotificationManager.PREF_NOTIFY_VIBRATION;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_BLOG;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_FORUM;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_GROUP;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_PRIVATE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_RINGTONE_NAME;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_RINGTONE_URI;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_SOUND;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_NOTIFY_VIBRATION;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
|
||||
@MethodsNotNullByDefault
|
||||
@ParametersNotNullByDefault
|
||||
|
||||
@@ -22,15 +22,13 @@ import static java.util.Objects.requireNonNull;
|
||||
import static org.briarproject.briar.android.AppModule.getAndroidComponent;
|
||||
import static org.briarproject.briar.android.settings.SettingsActivity.enableAndPersist;
|
||||
import static org.briarproject.briar.android.util.UiUtils.hasScreenLock;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_SCREEN_LOCK;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_SCREEN_LOCK_TIMEOUT;
|
||||
|
||||
@MethodsNotNullByDefault
|
||||
@ParametersNotNullByDefault
|
||||
public class SecurityFragment extends PreferenceFragmentCompat {
|
||||
|
||||
public static final String PREF_SCREEN_LOCK = "pref_key_lock";
|
||||
public static final String PREF_SCREEN_LOCK_TIMEOUT =
|
||||
"pref_key_lock_timeout";
|
||||
|
||||
@Inject
|
||||
ViewModelProvider.Factory viewModelFactory;
|
||||
|
||||
|
||||
@@ -37,8 +37,6 @@ import static org.briarproject.briar.android.util.UiUtils.tryToStartActivity;
|
||||
@ParametersNotNullByDefault
|
||||
public class SettingsFragment extends PreferenceFragmentCompat {
|
||||
|
||||
public static final String SETTINGS_NAMESPACE = "android-ui";
|
||||
|
||||
private static final String PREF_KEY_AVATAR = "pref_key_avatar";
|
||||
private static final String PREF_KEY_SHARE_LINK = "pref_key_share_app_link";
|
||||
private static final String PREF_KEY_FEEDBACK = "pref_key_send_feedback";
|
||||
|
||||
@@ -54,9 +54,9 @@ import static org.briarproject.bramble.util.AndroidUtils.getSupportedImageConten
|
||||
import static org.briarproject.bramble.util.LogUtils.logDuration;
|
||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||
import static org.briarproject.bramble.util.LogUtils.now;
|
||||
import static org.briarproject.briar.android.settings.SecurityFragment.PREF_SCREEN_LOCK;
|
||||
import static org.briarproject.briar.android.settings.SecurityFragment.PREF_SCREEN_LOCK_TIMEOUT;
|
||||
import static org.briarproject.briar.android.settings.SettingsFragment.SETTINGS_NAMESPACE;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_SCREEN_LOCK;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.PREF_SCREEN_LOCK_TIMEOUT;
|
||||
import static org.briarproject.briar.api.android.SettingsConstants.SETTINGS_NAMESPACE;
|
||||
|
||||
@MethodsNotNullByDefault
|
||||
@ParametersNotNullByDefault
|
||||
|
||||
@@ -11,17 +11,6 @@ import org.briarproject.bramble.api.sync.GroupId;
|
||||
*/
|
||||
public interface AndroidNotificationManager {
|
||||
|
||||
// Keys for notification preferences
|
||||
String PREF_NOTIFY_PRIVATE = "notifyPrivateMessages";
|
||||
String PREF_NOTIFY_GROUP = "notifyGroupMessages";
|
||||
String PREF_NOTIFY_FORUM = "notifyForumPosts";
|
||||
String PREF_NOTIFY_BLOG = "notifyBlogPosts";
|
||||
|
||||
String PREF_NOTIFY_SOUND = "notifySound";
|
||||
String PREF_NOTIFY_RINGTONE_NAME = "notifyRingtoneName";
|
||||
String PREF_NOTIFY_RINGTONE_URI = "notifyRingtoneUri";
|
||||
String PREF_NOTIFY_VIBRATION = "notifyVibration";
|
||||
|
||||
// Notification IDs
|
||||
int ONGOING_NOTIFICATION_ID = 1;
|
||||
int REMINDER_NOTIFICATION_ID = 3;
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
package org.briarproject.briar.api.android;
|
||||
|
||||
import org.briarproject.nullsafety.NotNullByDefault;
|
||||
|
||||
@NotNullByDefault
|
||||
public interface SettingsConstants {
|
||||
|
||||
// Namespace for Android-specific settings
|
||||
String SETTINGS_NAMESPACE = "android-ui";
|
||||
|
||||
// Key for time when expiry warning was last shown
|
||||
String EXPIRY_DATE_WARNING = "expiryDateWarning";
|
||||
|
||||
// Key for doze mode exemption warning
|
||||
String DOZE_ASK_AGAIN = "dozeAskAgain";
|
||||
|
||||
// Keys for onboarding
|
||||
String SHOW_ONBOARDING_TRANSPORTS = "showTransportsOnboarding";
|
||||
String SHOW_ONBOARDING_IMAGE = "showOnboardingImage";
|
||||
String SHOW_ONBOARDING_INTRODUCTION = "showOnboardingIntroduction";
|
||||
String SHOW_ONBOARDING_REVEAL_CONTACTS = "showOnboardingRevealContacts";
|
||||
|
||||
// Keys for notification preferences
|
||||
String PREF_NOTIFY_PRIVATE = "notifyPrivateMessages";
|
||||
String PREF_NOTIFY_GROUP = "notifyGroupMessages";
|
||||
String PREF_NOTIFY_FORUM = "notifyForumPosts";
|
||||
String PREF_NOTIFY_BLOG = "notifyBlogPosts";
|
||||
String PREF_NOTIFY_SOUND = "notifySound";
|
||||
String PREF_NOTIFY_RINGTONE_NAME = "notifyRingtoneName";
|
||||
String PREF_NOTIFY_RINGTONE_URI = "notifyRingtoneUri";
|
||||
String PREF_NOTIFY_VIBRATION = "notifyVibration";
|
||||
|
||||
// Key for recently used emoji
|
||||
String EMOJI_LRU_PREFERENCE = "pref_emoji_recent2";
|
||||
|
||||
// Keys for screen lock
|
||||
String PREF_SCREEN_LOCK = "pref_key_lock";
|
||||
String PREF_SCREEN_LOCK_TIMEOUT = "pref_key_lock_timeout";
|
||||
}
|
||||
Reference in New Issue
Block a user