diff --git a/app/src/main/java/org/thoughtcrime/securesms/MainNavigator.java b/app/src/main/java/org/thoughtcrime/securesms/MainNavigator.java index 0306b27240..8742d30e63 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/MainNavigator.java +++ b/app/src/main/java/org/thoughtcrime/securesms/MainNavigator.java @@ -78,7 +78,7 @@ public class MainNavigator { } public void goToGroupCreation() { - activity.startActivity(CreateGroupActivity.newIntent(activity, true)); + activity.startActivity(CreateGroupActivity.newIntent(activity)); } public void goToInvite() { diff --git a/app/src/main/java/org/thoughtcrime/securesms/NewConversationActivity.java b/app/src/main/java/org/thoughtcrime/securesms/NewConversationActivity.java index 5124a2b8b9..5c5ca4f40a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/NewConversationActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/NewConversationActivity.java @@ -19,9 +19,7 @@ package org.thoughtcrime.securesms; import android.content.Intent; import android.os.Bundle; import android.view.Menu; -import android.view.MenuInflater; import android.view.MenuItem; -import android.view.View; import org.thoughtcrime.securesms.conversation.ConversationActivity; import org.thoughtcrime.securesms.database.DatabaseFactory; @@ -83,10 +81,10 @@ public class NewConversationActivity extends ContactSelectionActivity super.onOptionsItemSelected(item); switch (item.getItemId()) { - case android.R.id.home: super.onBackPressed(); return true; - case R.id.menu_refresh: handleManualRefresh(); return true; - case R.id.menu_new_group: handleCreateGroup(true); return true; - case R.id.menu_invite: handleInvite(); return true; + case android.R.id.home: super.onBackPressed(); return true; + case R.id.menu_refresh: handleManualRefresh(); return true; + case R.id.menu_new_group: handleCreateGroup(); return true; + case R.id.menu_invite: handleInvite(); return true; } return false; @@ -97,8 +95,8 @@ public class NewConversationActivity extends ContactSelectionActivity onRefresh(); } - private void handleCreateGroup(boolean forceV1) { - startActivity(CreateGroupActivity.newIntent(this, forceV1)); + private void handleCreateGroup() { + startActivity(CreateGroupActivity.newIntent(this)); } private void handleInvite() { @@ -122,7 +120,7 @@ public class NewConversationActivity extends ContactSelectionActivity @Override public void onNewGroup(boolean forceV1) { - handleCreateGroup(forceV1); + handleCreateGroup(); finish(); } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationActivity.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationActivity.java index 812b8d26e7..3093136e49 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationActivity.java @@ -738,7 +738,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity } else { menu.findItem(R.id.menu_distribution_conversation).setChecked(true); } - } else if (isActiveV2Group()) { + } else if (isActiveV2Group() || isActiveGroup() && FeatureFlags.newGroupUI()) { inflater.inflate(R.menu.conversation_push_group_v2_options, menu); } else if (isActiveGroup()) { inflater.inflate(R.menu.conversation_push_group_options, menu); @@ -753,8 +753,10 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity inflater.inflate(R.menu.conversation_insecure, menu); } - if (recipient != null && recipient.get().isMuted()) inflater.inflate(R.menu.conversation_muted, menu); - else inflater.inflate(R.menu.conversation_unmuted, menu); + if (!FeatureFlags.newGroupUI()) { + if (recipient != null && recipient.get().isMuted()) inflater.inflate(R.menu.conversation_muted, menu); + else inflater.inflate(R.menu.conversation_unmuted, menu); + } if (isSingleConversation() && getRecipient().getContactUri() == null) { inflater.inflate(R.menu.conversation_add_to_contacts, menu); diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/ui/creategroup/CreateGroupActivity.java b/app/src/main/java/org/thoughtcrime/securesms/groups/ui/creategroup/CreateGroupActivity.java index 14d0f8c805..4b9ca31283 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/ui/creategroup/CreateGroupActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/ui/creategroup/CreateGroupActivity.java @@ -29,8 +29,8 @@ public class CreateGroupActivity extends ContactSelectionActivity { private View next; - public static Intent newIntent(@NonNull Context context, boolean forceV1) { - if (forceV1 || !FeatureFlags.newGroupUI() || !FeatureFlags.groupsV2create()) { + public static Intent newIntent(@NonNull Context context) { + if (!FeatureFlags.newGroupUI()) { return new Intent(context, GroupCreateActivity.class); } @@ -44,7 +44,8 @@ public class CreateGroupActivity extends ContactSelectionActivity { : ContactsCursorLoader.DisplayMode.FLAG_PUSH; intent.putExtra(ContactSelectionListFragment.DISPLAY_MODE, displayMode); - intent.putExtra(ContactSelectionListFragment.TOTAL_CAPACITY, FeatureFlags.gv2GroupCapacity() - 1); + intent.putExtra(ContactSelectionListFragment.TOTAL_CAPACITY, FeatureFlags.groupsV2create() ? FeatureFlags.gv2GroupCapacity() - 1 + : ContactSelectionListFragment.NO_LIMIT); return intent; } diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/FeatureFlags.java b/app/src/main/java/org/thoughtcrime/securesms/util/FeatureFlags.java index a77a768752..a49a15593b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/FeatureFlags.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/FeatureFlags.java @@ -61,7 +61,7 @@ public final class FeatureFlags { private static final String REMOTE_DELETE = "android.remoteDelete"; private static final String PROFILE_FOR_CALLING = "android.profileForCalling"; private static final String CALLING_PIP = "android.callingPip"; - private static final String NEW_GROUP_UI = "android.newGroupUI"; + private static final String NEW_GROUP_UI_KILL_SWITCH = "android.newGroupUI.KillSwitch"; private static final String VERSIONED_PROFILES = "android.versionedProfiles"; private static final String GROUPS_V2 = "android.groupsv2"; private static final String GROUPS_V2_CREATE = "android.groupsv2.create"; @@ -84,12 +84,11 @@ public final class FeatureFlags { REMOTE_DELETE, PROFILE_FOR_CALLING, CALLING_PIP, - NEW_GROUP_UI, + NEW_GROUP_UI_KILL_SWITCH, VERSIONED_PROFILES, GROUPS_V2, GROUPS_V2_CREATE, GROUPS_V2_CAPACITY, - NEW_GROUP_UI, GROUPS_V2_INTERNAL_TEST ); @@ -264,7 +263,7 @@ public final class FeatureFlags { /** New group UI elements. */ public static boolean newGroupUI() { - return getBoolean(NEW_GROUP_UI, false); + return !getBoolean(NEW_GROUP_UI_KILL_SWITCH, false); } /** Read and write versioned profile information. */