Add feature flag for sharing the app via offline hotspot

This commit is contained in:
Sebastian Kürten
2021-05-28 13:52:24 +02:00
committed by Torsten Grote
parent f9749fda80
commit 344fff4a7a
6 changed files with 24 additions and 0 deletions

View File

@@ -14,4 +14,6 @@ public interface FeatureFlags {
boolean shouldEnableConnectViaBluetooth();
boolean shouldEnableTransferData();
boolean shouldEnableShareAppViaOfflineHotspot();
}

View File

@@ -34,6 +34,11 @@ public class TestFeatureFlagModule {
public boolean shouldEnableTransferData() {
return true;
}
@Override
public boolean shouldEnableShareAppViaOfflineHotspot() {
return true;
}
};
}
}

View File

@@ -320,6 +320,11 @@ public class AppModule {
public boolean shouldEnableTransferData() {
return IS_DEBUG_BUILD;
}
@Override
public boolean shouldEnableShareAppViaOfflineHotspot() {
return IS_DEBUG_BUILD;
}
};
}
}

View File

@@ -36,6 +36,7 @@ public class SettingsFragment extends PreferenceFragmentCompat {
private static final String PREF_KEY_FEEDBACK = "pref_key_send_feedback";
private static final String PREF_KEY_DEV = "pref_key_dev";
private static final String PREF_KEY_EXPLODE = "pref_key_explode";
private static final String PREF_KEY_SHARE_APP = "pref_key_share_app";
@Inject
ViewModelProvider.Factory viewModelFactory;
@@ -85,6 +86,12 @@ public class SettingsFragment extends PreferenceFragmentCompat {
PreferenceGroup dev = requireNonNull(findPreference(PREF_KEY_DEV));
dev.setVisible(false);
}
if (!viewModel.shouldEnableShareAppViaOfflineHotspot()) {
Preference shareApp =
requireNonNull(findPreference(PREF_KEY_SHARE_APP));
shareApp.setVisible(false);
}
}
@Override

View File

@@ -262,4 +262,8 @@ class SettingsViewModel extends DbViewModel implements EventListener {
return screenLockTimeout;
}
boolean shouldEnableShareAppViaOfflineHotspot() {
return featureFlags.shouldEnableShareAppViaOfflineHotspot();
}
}

View File

@@ -97,5 +97,6 @@ internal class HeadlessModule(private val appDir: File) {
override fun shouldEnableDisappearingMessages() = false
override fun shouldEnableConnectViaBluetooth() = false
override fun shouldEnableTransferData() = false
override fun shouldEnableShareAppViaOfflineHotspot() = false
}
}