use of com.waz.zclient.controllers.tracking.events.group.LeaveGroupConversationEvent in project wire-android by wireapp.
the class ParticipantFragment method showLeaveConfirmation.
//////////////////////////////////////////////////////////////////////////////////////////
//
// Confirmation overlays
//
//////////////////////////////////////////////////////////////////////////////////////////
private void showLeaveConfirmation(final IConversation conversation) {
ConfirmationCallback callback = new TwoButtonConfirmationCallback() {
@Override
public void positiveButtonClicked(boolean checkboxIsSelected) {
((BaseScalaActivity) getActivity()).injectJava(GlobalTrackingController.class).tagEvent(new LeaveGroupConversationEvent(true, getStoreFactory().getConversationStore().getCurrentConversation().getUsers().size()));
getStoreFactory().getConversationStore().leave(conversation);
getStoreFactory().getConversationStore().setCurrentConversationToNext(ConversationChangeRequester.LEAVE_CONVERSATION);
if (LayoutSpec.isTablet(getActivity())) {
getControllerFactory().getConversationScreenController().hideParticipants(false, true);
}
}
@Override
public void negativeButtonClicked() {
((BaseScalaActivity) getActivity()).injectJava(GlobalTrackingController.class).tagEvent(new LeaveGroupConversationEvent(false, getStoreFactory().getConversationStore().getCurrentConversation().getUsers().size()));
}
@Override
public void onHideAnimationEnd(boolean confirmed, boolean canceled, boolean checkboxIsSelected) {
}
};
String header = getString(R.string.confirmation_menu__meta_remove);
String text = getString(R.string.confirmation_menu__meta_remove_text);
String confirm = getString(R.string.confirmation_menu__confirm_leave);
String cancel = getString(R.string.confirmation_menu__cancel);
ConfirmationRequest request = new ConfirmationRequest.Builder().withHeader(header).withMessage(text).withPositiveButton(confirm).withNegativeButton(cancel).withConfirmationCallback(callback).withWireTheme(getControllerFactory().getThemeController().getThemeDependentOptionsTheme()).build();
getControllerFactory().getConfirmationController().requestConfirmation(request, IConfirmationController.PARTICIPANTS);
SoundController ctrl = inject(SoundController.class);
if (ctrl != null) {
ctrl.playAlert();
}
}
use of com.waz.zclient.controllers.tracking.events.group.LeaveGroupConversationEvent in project wire-android by wireapp.
the class ParticipantBodyFragment method showLeaveConfirmation.
private void showLeaveConfirmation(final IConversation conversation) {
ConfirmationCallback callback = new TwoButtonConfirmationCallback() {
@Override
public void positiveButtonClicked(boolean checkboxIsSelected) {
if (getStoreFactory() == null || getControllerFactory() == null || getStoreFactory().isTornDown() || getControllerFactory().isTornDown()) {
return;
}
((BaseScalaActivity) getActivity()).injectJava(GlobalTrackingController.class).tagEvent(new LeaveGroupConversationEvent(true, getStoreFactory().getConversationStore().getCurrentConversation().getUsers().size()));
getStoreFactory().getConversationStore().leave(conversation);
getStoreFactory().getConversationStore().setCurrentConversationToNext(ConversationChangeRequester.LEAVE_CONVERSATION);
if (LayoutSpec.isTablet(getActivity())) {
getControllerFactory().getConversationScreenController().hideParticipants(false, true);
}
}
@Override
public void negativeButtonClicked() {
if (getControllerFactory() == null || getControllerFactory().isTornDown()) {
return;
}
((BaseScalaActivity) getActivity()).injectJava(GlobalTrackingController.class).tagEvent(new LeaveGroupConversationEvent(false, getStoreFactory().getConversationStore().getCurrentConversation().getUsers().size()));
}
@Override
public void onHideAnimationEnd(boolean confirmed, boolean canceled, boolean checkboxIsSelected) {
}
};
String header = getString(R.string.confirmation_menu__meta_remove);
String text = getString(R.string.confirmation_menu__meta_remove_text);
String confirm = getString(R.string.confirmation_menu__confirm_leave);
String cancel = getString(R.string.confirmation_menu__cancel);
String checkboxLabel = getString(R.string.confirmation_menu__delete_conversation__checkbox__label);
ConfirmationRequest request = new ConfirmationRequest.Builder().withHeader(header).withMessage(text).withPositiveButton(confirm).withNegativeButton(cancel).withConfirmationCallback(callback).withCheckboxLabel(checkboxLabel).withWireTheme(getControllerFactory().getThemeController().getThemeDependentOptionsTheme()).withCheckboxSelectedByDefault().build();
getControllerFactory().getConfirmationController().requestConfirmation(request, IConfirmationController.PARTICIPANTS);
SoundController ctrl = inject(SoundController.class);
if (ctrl != null) {
ctrl.playAlert();
}
}
use of com.waz.zclient.controllers.tracking.events.group.LeaveGroupConversationEvent in project wire-android by wireapp.
the class ConversationListManagerFragment method leaveConversation.
//////////////////////////////////////////////////////////////////////////////////////////
//
// ConversationListFragment.Container
//
//////////////////////////////////////////////////////////////////////////////////////////
public void leaveConversation(final IConversation conversation) {
closeMenu();
ConfirmationCallback callback = new TwoButtonConfirmationCallback() {
@Override
public void positiveButtonClicked(boolean checkboxIsSelected) {
if (getStoreFactory() == null || getControllerFactory() == null || getStoreFactory().isTornDown() || getControllerFactory().isTornDown()) {
return;
}
((BaseScalaActivity) getActivity()).injectJava(GlobalTrackingController.class).tagEvent(new LeaveGroupConversationEvent(true, getStoreFactory().getConversationStore().getCurrentConversation().getUsers().size()));
getStoreFactory().getConversationStore().leave(conversation);
getStoreFactory().getConversationStore().setCurrentConversationToNext(ConversationChangeRequester.LEAVE_CONVERSATION);
}
@Override
public void negativeButtonClicked() {
if (getControllerFactory() == null || getControllerFactory().isTornDown()) {
return;
}
((BaseScalaActivity) getActivity()).injectJava(GlobalTrackingController.class).tagEvent(new LeaveGroupConversationEvent(false, getStoreFactory().getConversationStore().getCurrentConversation().getUsers().size()));
}
@Override
public void onHideAnimationEnd(boolean confirmed, boolean canceled, boolean checkboxIsSelected) {
}
};
String header = getString(R.string.confirmation_menu__meta_remove);
String text = getString(R.string.confirmation_menu__meta_remove_text);
String confirm = getString(R.string.confirmation_menu__confirm_leave);
String cancel = getString(R.string.confirmation_menu__cancel);
ConfirmationRequest request = new ConfirmationRequest.Builder().withHeader(header).withMessage(text).withPositiveButton(confirm).withNegativeButton(cancel).withConfirmationCallback(callback).withWireTheme(getControllerFactory().getThemeController().getOptionsDarkTheme()).build();
getControllerFactory().getConfirmationController().requestConfirmation(request, IConfirmationController.CONVERSATION_LIST);
SoundController ctrl = inject(SoundController.class);
if (ctrl != null) {
ctrl.playAlert();
}
}
Aggregations