mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-20 14:49:53 +01:00
[android] hide feature to add contacts remotely behind feature flag
This commit is contained in:
@@ -36,4 +36,9 @@ public interface TestingConstants {
|
|||||||
*/
|
*/
|
||||||
boolean FEATURE_FLAG_IMAGE_ATTACHMENTS = IS_DEBUG_BUILD;
|
boolean FEATURE_FLAG_IMAGE_ATTACHMENTS = IS_DEBUG_BUILD;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Feature flag for enabling adding contacts at a distance.
|
||||||
|
*/
|
||||||
|
boolean FEATURE_FLAG_REMOTE_CONTACTS = IS_DEBUG_BUILD;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.briarproject.bramble.api.contact.Contact;
|
|||||||
import org.briarproject.bramble.api.contact.ContactId;
|
import org.briarproject.bramble.api.contact.ContactId;
|
||||||
import org.briarproject.bramble.api.contact.ContactManager;
|
import org.briarproject.bramble.api.contact.ContactManager;
|
||||||
import org.briarproject.bramble.api.contact.event.ContactAddedEvent;
|
import org.briarproject.bramble.api.contact.event.ContactAddedEvent;
|
||||||
|
import org.briarproject.bramble.api.contact.event.ContactAddedRemotelyEvent;
|
||||||
import org.briarproject.bramble.api.contact.event.ContactRemovedEvent;
|
import org.briarproject.bramble.api.contact.event.ContactRemovedEvent;
|
||||||
import org.briarproject.bramble.api.contact.event.PendingContactStateChangedEvent;
|
import org.briarproject.bramble.api.contact.event.PendingContactStateChangedEvent;
|
||||||
import org.briarproject.bramble.api.db.DbException;
|
import org.briarproject.bramble.api.db.DbException;
|
||||||
@@ -55,6 +56,7 @@ import javax.inject.Inject;
|
|||||||
|
|
||||||
import io.github.kobakei.materialfabspeeddial.FabSpeedDial;
|
import io.github.kobakei.materialfabspeeddial.FabSpeedDial;
|
||||||
import io.github.kobakei.materialfabspeeddial.FabSpeedDial.OnMenuItemClickListener;
|
import io.github.kobakei.materialfabspeeddial.FabSpeedDial.OnMenuItemClickListener;
|
||||||
|
import io.github.kobakei.materialfabspeeddial.FabSpeedDialMenu;
|
||||||
|
|
||||||
import static android.os.Build.VERSION.SDK_INT;
|
import static android.os.Build.VERSION.SDK_INT;
|
||||||
import static android.support.design.widget.Snackbar.LENGTH_INDEFINITE;
|
import static android.support.design.widget.Snackbar.LENGTH_INDEFINITE;
|
||||||
@@ -66,6 +68,7 @@ import static org.briarproject.bramble.api.contact.PendingContactState.WAITING_F
|
|||||||
import static org.briarproject.bramble.util.LogUtils.logDuration;
|
import static org.briarproject.bramble.util.LogUtils.logDuration;
|
||||||
import static org.briarproject.bramble.util.LogUtils.logException;
|
import static org.briarproject.bramble.util.LogUtils.logException;
|
||||||
import static org.briarproject.bramble.util.LogUtils.now;
|
import static org.briarproject.bramble.util.LogUtils.now;
|
||||||
|
import static org.briarproject.briar.android.TestingConstants.FEATURE_FLAG_REMOTE_CONTACTS;
|
||||||
import static org.briarproject.briar.android.conversation.ConversationActivity.CONTACT_ID;
|
import static org.briarproject.briar.android.conversation.ConversationActivity.CONTACT_ID;
|
||||||
import static org.briarproject.briar.android.util.UiUtils.isSamsung7;
|
import static org.briarproject.briar.android.util.UiUtils.isSamsung7;
|
||||||
|
|
||||||
@@ -118,12 +121,23 @@ public class ContactListFragment extends BaseFragment implements EventListener,
|
|||||||
@Nullable Bundle savedInstanceState) {
|
@Nullable Bundle savedInstanceState) {
|
||||||
requireNonNull(getActivity()).setTitle(R.string.contact_list_button);
|
requireNonNull(getActivity()).setTitle(R.string.contact_list_button);
|
||||||
|
|
||||||
View contentView =
|
View contentView = inflater.inflate(R.layout.fragment_contact_list,
|
||||||
inflater.inflate(R.layout.fragment_contact_list, container,
|
container, false);
|
||||||
false);
|
|
||||||
|
|
||||||
FabSpeedDial speedDialView = contentView.findViewById(R.id.speedDial);
|
FabSpeedDial speedDial = contentView.findViewById(R.id.speedDial);
|
||||||
speedDialView.addOnMenuItemClickListener(this);
|
if (FEATURE_FLAG_REMOTE_CONTACTS) {
|
||||||
|
speedDial.addOnMenuItemClickListener(this);
|
||||||
|
} else {
|
||||||
|
speedDial.setMenu(new FabSpeedDialMenu(contentView.getContext()));
|
||||||
|
speedDial.addOnStateChangeListener(open -> {
|
||||||
|
if (open) {
|
||||||
|
Intent intent = new Intent(getContext(),
|
||||||
|
ContactExchangeActivity.class);
|
||||||
|
startActivity(intent);
|
||||||
|
speedDial.closeMenu();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
OnContactClickListener<ContactListItem> onContactClickListener =
|
OnContactClickListener<ContactListItem> onContactClickListener =
|
||||||
(view, item) -> {
|
(view, item) -> {
|
||||||
@@ -265,7 +279,6 @@ public class ContactListFragment extends BaseFragment implements EventListener,
|
|||||||
if (e instanceof ContactAddedEvent) {
|
if (e instanceof ContactAddedEvent) {
|
||||||
LOG.info("Contact added, reloading");
|
LOG.info("Contact added, reloading");
|
||||||
loadContacts();
|
loadContacts();
|
||||||
checkForPendingContacts();
|
|
||||||
} else if (e instanceof ContactConnectedEvent) {
|
} else if (e instanceof ContactConnectedEvent) {
|
||||||
setConnected(((ContactConnectedEvent) e).getContactId(), true);
|
setConnected(((ContactConnectedEvent) e).getContactId(), true);
|
||||||
} else if (e instanceof ContactDisconnectedEvent) {
|
} else if (e instanceof ContactDisconnectedEvent) {
|
||||||
@@ -286,6 +299,8 @@ public class ContactListFragment extends BaseFragment implements EventListener,
|
|||||||
if (pe.getPendingContactState() == WAITING_FOR_CONNECTION) {
|
if (pe.getPendingContactState() == WAITING_FOR_CONNECTION) {
|
||||||
checkForPendingContacts();
|
checkForPendingContacts();
|
||||||
}
|
}
|
||||||
|
} else if (e instanceof ContactAddedRemotelyEvent) {
|
||||||
|
checkForPendingContacts();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user