diff --git a/build.gradle b/build.gradle index 478c2808f4c..b4c9bd1dc65 100644 --- a/build.gradle +++ b/build.gradle @@ -174,7 +174,6 @@ android { buildConfigField "String", "REDPHONE_RELAY_HOST", "\"relay.whispersystems.org\"" buildConfigField "String", "REDPHONE_PREFIX_NAME", "\".whispersystems.org\"" buildConfigField "boolean", "DEV_BUILD", "false" - buildConfigField "boolean", "FORCE_WEBSOCKETS", "false" } compileOptions { @@ -224,10 +223,6 @@ android { applicationIdSuffix ".dev" versionNameSuffix "-dev" } - websockets.initWith(buildTypes.dev) - websockets { - buildConfigField "boolean", "FORCE_WEBSOCKETS", "true" - } } productFlavors { diff --git a/res/values/strings.xml b/res/values/strings.xml index 3f0d81eebe9..2a5b9466693 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -840,6 +840,8 @@ Input Settings Enable Enter key Replace the smiley key with an Enter key + Force WebSocket + Always use WebSocket instead of GCM Enter key sends Pressing the Enter key will send text messages Display settings diff --git a/res/xml/preferences_advanced.xml b/res/xml/preferences_advanced.xml index 1c7702a3851..52c13e84edd 100644 --- a/res/xml/preferences_advanced.xml +++ b/res/xml/preferences_advanced.xml @@ -7,6 +7,12 @@ android:title="@string/preferences__signal" android:summary="@string/preferences__use_the_data_channel_for_communication_with_other_signal_users"/> + + allOf(withKey("pref_toggle_push_messaging"))).perform(click()); } + public static void clickForceWebsocket() throws Exception { + onData(Matchers.allOf(withKey("pref_force_websocket"))).perform(click()); + } + public static void clickEnterKeySends() throws Exception { onData(Matchers.allOf(withKey("pref_enter_sends"))).perform(click()); } diff --git a/test/androidTestEspresso/java/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragmentTest.java b/test/androidTestEspresso/java/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragmentTest.java index 3eb987c4ad4..f34be844cb2 100644 --- a/test/androidTestEspresso/java/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragmentTest.java +++ b/test/androidTestEspresso/java/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragmentTest.java @@ -51,6 +51,8 @@ public AdvancedPreferenceFragmentTest() { private void checkAllPreferencesDisplayed() throws Exception { onData(Matchers.allOf(withKey("pref_toggle_push_messaging"))) .check(matches(isDisplayed())); + onData(Matchers.allOf(withKey("pref_force_websocket"))) + .check(matches(isDisplayed())); onData(Matchers.allOf(withKey("pref_enter_sends"))) .check(matches(isDisplayed())); onData(Matchers.allOf(withKey("pref_submit_debug_logs"))) @@ -70,6 +72,12 @@ private void checkViewsMatchPreferences() throws Exception { isNotChecked().matches(onData(Matchers.allOf(withKey("pref_toggle_push_messaging")))); } + if (TextSecurePreferences.isForceWebsocketEnabled(getContext())) { + isChecked().matches(onData(Matchers.allOf(withKey("pref_force_websocket")))); + } else { + isNotChecked().matches(onData(Matchers.allOf(withKey("pref_force_websocket")))); + } + if (TextSecurePreferences.isEnterSendsEnabled(getContext())) { isChecked().matches(onData(Matchers.allOf(withKey("pref_enter_sends")))); } else {