From 688bac77a8ecbcaea9faa047c6a71e6d5c771b80 Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Mon, 19 Apr 2021 11:36:35 -0300 Subject: [PATCH] Use a feature flag to hide connect via Bluetooth option --- .../main/java/org/briarproject/bramble/api/FeatureFlags.java | 2 ++ .../bramble/test/BrambleCoreIntegrationTestModule.java | 5 +++++ .../main/java/org/briarproject/briar/android/AppModule.java | 5 +++++ .../briar/android/conversation/ConversationActivity.java | 3 +++ .../java/org/briarproject/briar/headless/HeadlessModule.kt | 1 + .../org/briarproject/briar/headless/HeadlessTestModule.kt | 1 + 6 files changed, 17 insertions(+) diff --git a/bramble-api/src/main/java/org/briarproject/bramble/api/FeatureFlags.java b/bramble-api/src/main/java/org/briarproject/bramble/api/FeatureFlags.java index f0acbd8e1..e15074dd6 100644 --- a/bramble-api/src/main/java/org/briarproject/bramble/api/FeatureFlags.java +++ b/bramble-api/src/main/java/org/briarproject/bramble/api/FeatureFlags.java @@ -10,4 +10,6 @@ public interface FeatureFlags { boolean shouldEnableProfilePictures(); boolean shouldEnableDisappearingMessages(); + + boolean shouldEnableConnectViewBluetooth(); } diff --git a/bramble-core/src/test/java/org/briarproject/bramble/test/BrambleCoreIntegrationTestModule.java b/bramble-core/src/test/java/org/briarproject/bramble/test/BrambleCoreIntegrationTestModule.java index 661df400a..bb946a51a 100644 --- a/bramble-core/src/test/java/org/briarproject/bramble/test/BrambleCoreIntegrationTestModule.java +++ b/bramble-core/src/test/java/org/briarproject/bramble/test/BrambleCoreIntegrationTestModule.java @@ -38,6 +38,11 @@ public class BrambleCoreIntegrationTestModule { public boolean shouldEnableDisappearingMessages() { return true; } + + @Override + public boolean shouldEnableConnectViewBluetooth() { + return true; + } }; } } diff --git a/briar-android/src/main/java/org/briarproject/briar/android/AppModule.java b/briar-android/src/main/java/org/briarproject/briar/android/AppModule.java index 9a75f6e2e..045579ec9 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/AppModule.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/AppModule.java @@ -298,6 +298,11 @@ public class AppModule { public boolean shouldEnableDisappearingMessages() { return IS_DEBUG_BUILD; } + + @Override + public boolean shouldEnableConnectViewBluetooth() { + return IS_DEBUG_BUILD; + } }; } } diff --git a/briar-android/src/main/java/org/briarproject/briar/android/conversation/ConversationActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/conversation/ConversationActivity.java index 77088fd63..a2ef7ffc8 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/conversation/ConversationActivity.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/conversation/ConversationActivity.java @@ -371,6 +371,9 @@ public class ConversationActivity extends BriarActivity this::showIntroductionOnboarding); } }); + if (!featureFlags.shouldEnableConnectViewBluetooth()) { + menu.findItem(R.id.action_connect_via_bluetooth).setVisible(false); + } // enable alias and bluetooth action once available observeOnce(viewModel.getContactItem(), this, contact -> { menu.findItem(R.id.action_set_alias).setEnabled(true); diff --git a/briar-headless/src/main/java/org/briarproject/briar/headless/HeadlessModule.kt b/briar-headless/src/main/java/org/briarproject/briar/headless/HeadlessModule.kt index e004bdca4..48ed124f8 100644 --- a/briar-headless/src/main/java/org/briarproject/briar/headless/HeadlessModule.kt +++ b/briar-headless/src/main/java/org/briarproject/briar/headless/HeadlessModule.kt @@ -94,5 +94,6 @@ internal class HeadlessModule(private val appDir: File) { override fun shouldEnableImageAttachments() = false override fun shouldEnableProfilePictures() = false override fun shouldEnableDisappearingMessages() = false + override fun shouldEnableConnectViewBluetooth() = false } } diff --git a/briar-headless/src/test/java/org/briarproject/briar/headless/HeadlessTestModule.kt b/briar-headless/src/test/java/org/briarproject/briar/headless/HeadlessTestModule.kt index e299158b7..c16d6a2cf 100644 --- a/briar-headless/src/test/java/org/briarproject/briar/headless/HeadlessTestModule.kt +++ b/briar-headless/src/test/java/org/briarproject/briar/headless/HeadlessTestModule.kt @@ -82,6 +82,7 @@ internal class HeadlessTestModule(private val appDir: File) { override fun shouldEnableImageAttachments() = false override fun shouldEnableProfilePictures() = false override fun shouldEnableDisappearingMessages() = false + override fun shouldEnableConnectViewBluetooth() = false } @Provides