navigateToStartConversation method
void
navigateToStartConversation({
Implementation
void navigateToStartConversation({BuildContext? context}) {
UsersConfiguration defaultUsersConfiguration = UsersConfiguration(
usersRequestBuilder:
RequestBuilderConstants.getDefaultUsersRequestBuilder()
..hideBlockedUsers = true);
GroupsConfiguration defaultGroupsConfiguration = GroupsConfiguration(
groupsRequestBuilder:
RequestBuilderConstants.getDefaultGroupsRequestBuilder()
..joinedOnly = true);
Navigator.push(
context ?? this.context,
MaterialPageRoute(
builder: (context) => CometChatContacts(
onItemTap: startConversationConfiguration?.onItemTap ??
(BuildContext context, user, group) {
if (user != null || group != null) {
navigateToMessagesScreen(
user: user, group: group, pushReplacement: true);
}
},
onClose: startConversationConfiguration?.onClose ??
() {
Navigator.of(context).pop();
},
closeIcon: startConversationConfiguration?.closeIcon,
title: startConversationConfiguration?.title,
usersConfiguration: startConversationConfiguration?.usersConfiguration
?.merge(defaultUsersConfiguration) ??
defaultUsersConfiguration,
theme: startConversationConfiguration?.theme ?? theme,
groupsConfiguration: startConversationConfiguration
?.groupsConfiguration
?.merge(defaultGroupsConfiguration) ??
defaultGroupsConfiguration,
groupsTabTitle: startConversationConfiguration?.groupsTabTitle ??
Translations.of(context).groups,
contactsStyle: startConversationConfiguration?.contactsStyle ??
const ContactsStyle(),
usersTabTitle: startConversationConfiguration?.usersTabTitle ??
Translations.of(context).users,
hideSubmitIcon:
startConversationConfiguration?.hideSubmitIcon ?? true,
onSubmitIconTap: startConversationConfiguration?.onSubmitIconTap,
selectionLimit: startConversationConfiguration?.selectionLimit,
selectionMode: startConversationConfiguration?.selectionMode ??
SelectionMode.none,
submitIcon: startConversationConfiguration?.submitIcon,
tabVisibility: startConversationConfiguration?.tabVisibility ??
TabVisibility.usersAndGroups,
),
),
);
}