Customize Chat Features
If you are using the default interface from TapTalk.io UI implementation type, you can choose to enable or disable the available chat features that we provided by using the TapUI class.
By default, TapTalk activities will follow your project's app theme to show/hide action bar in activities, but you can show or hide action bar in TapTalk activities using the following methods:
Java
Kotlin
TapUI.getInstance().setAllTapTalkActivityActionBarEnabled(ENABLED);
TapUI.getInstance().setTapTalkChatActivityActionBarEnabled(ENABLED);
TapUI.getInstance().setAllTapTalkActivityActionBarEnabled(ENABLED)
TapUI.getInstance().setTapTalkChatActivityActionBarEnabled(ENABLED)
Note:
• Calling
setAllTapTalkActivityActionBarEnabled
will enable/disable action bar in all TapTalk activities.• Calling
setTapTalkChatActivityActionBarEnabled
will only enable/disable action bar in TapTalk default chat room (TapUIChatActivity).• Setting
setAllTapTalkActivityActionBarEnabled
to true
and setTapTalkChatActivityActionBarEnabled
to false
will disable action bar in TapTalk default chat room, but enable it in other TapTalk activities, and vice versa.You can choose to enable or disable read status of messages in room list and chat room. When disabled, read messages will show as delivered instead. Read status is enabled by default.
Java
Kotlin
TapUI.getInstance().setReadStatusVisible(VISIBLE);
TapUI.getInstance().setReadStatusVisible(VISIBLE)
You can also choose to enable or disable the user from adding another user as TapTalk contact.
Java
Kotlin
TapUI.getInstance().setAddContactEnabled(ENABLED);
TapUI.getInstance().setAddContactEnabled(ENABLED)
Note: Disabling add contact feature will also hide the following:
• Add to Contacts button in chat room
• Add to Contacts button in user profile
• New Contact button in start new chat page
• Scan QR Code button in start new chat page
The following features in TapTalk default room list can be customized:
• Close Room List Button
• Search Chat
• My Account
• Start New Chat
Java
Kotlin
TapUI.getInstance().setCloseButtonInRoomListVisible(VISIBLE);
TapUI.getInstance().setSearchChatBarInRoomListVisible(VISIBLE);
TapUI.getInstance().setMyAccountButtonInRoomListVisible(VISIBLE);
TapUI.getInstance().setNewChatButtonInRoomListVisible(VISIBLE);
TapUI.getInstance().setCloseButtonInRoomListVisible(VISIBLE)
TapUI.getInstance().setSearchChatBarInRoomListVisible(VISIBLE)
TapUI.getInstance().setMyAccountButtonInRoomListVisible(VISIBLE)
TapUI.getInstance().setNewChatButtonInRoomListVisible(VISIBLE)
The following features in TapTalk default chat room can be customized:
• User / Group Profile Button
• Add to Contacts
• Mention Username
• Send Voice Note
• Link Preview in Message Bubble
Java
Kotlin
TapUI.getInstance().setProfileButtonInChatRoomVisible(VISIBLE);
TapUI.getInstance().setAddToContactsButtonInChatRoomVisible(VISIBLE);
TapUI.getInstance().setMentionUsernameEnabled(ENABLED);
TapUI.getInstance().setSendVoiceNoteMenuEnabled(ENABLED);
TapUI.getInstance().setLinkPreviewInMessageEnabled(ENABLED);
TapUI.getInstance().setProfileButtonInChatRoomVisible(VISIBLE)
TapUI.getInstance().setAddToContactsButtonInChatRoomVisible(VISIBLE)
TapUI.getInstance().setMentionUsernameEnabled(ENABLED)
TapUI.getInstance().setSendVoiceNoteMenuEnabled(ENABLED)
TapUI.getInstance().setLinkPreviewInMessageEnabled(ENABLED)
You can choose to enable or disable message attachments in chat room as follows:
• Documents
• Camera
• Gallery
• Location (requires Google Places API Key)
Java
Kotlin
TapUI.getInstance().setDocumentAttachmentEnabled(ENABLED);
TapUI.getInstance().setCameraAttachmentEnabled(ENABLED);
TapUI.getInstance().setGalleryAttachmentEnabled(ENABLED);
TapUI.getInstance().setLocationAttachmentEnabled(ENABLED);
TapUI.getInstance().setDocumentAttachmentEnabled(ENABLED)
TapUI.getInstance().setCameraAttachmentEnabled(ENABLED)
TapUI.getInstance().setGalleryAttachmentEnabled(ENABLED)
TapUI.getInstance().setLocationAttachmentEnabled(ENABLED)
Note: Location attachment will be disabled by default when Google Places API Key is not set from TapTalk class.
You can choose to enable or disable long press action menus in chat room as follows:
• Reply Message
• Forward Message
• Edit Message
• Delete Message
• Message Info
• Save Media to Gallery
• Open Link
• Compose Email
• Dial Number
• Send SMS
• View Profile
• Send Message
• Report Message (disabled by default)
Java
Kotlin
TapUI.getInstance().setReplyMessageMenuEnabled(ENABLED);
TapUI.getInstance().setForwardMessageMenuEnabled(ENABLED);
TapUI.getInstance().setEditMessageMenuEnabled(ENABLED);
TapUI.getInstance().setDeleteMessageMenuEnabled(ENABLED);
TapUI.getInstance().setMessageInfoMenuEnabled(ENABLED);
TapUI.getInstance().setSaveMediaToGalleryMenuEnabled(ENABLED);
TapUI.getInstance().setOpenLinkMenuEnabled(ENABLED);
TapUI.getInstance().setComposeEmailMenuEnabled(ENABLED);
TapUI.getInstance().setDialNumberMenuEnabled(ENABLED);
TapUI.getInstance().setSendSMSMenuEnabled(ENABLED);
TapUI.getInstance().setViewProfileMenuEnabled(ENABLED);
TapUI.getInstance().setSendMessageMenuEnabled(ENABLED);
TapUI.getInstance().setReportMessageMenuEnabled(ENABLED);
TapUI.getInstance().setReplyMessageMenuEnabled(ENABLED)
TapUI.getInstance().setForwardMessageMenuEnabled(ENABLED)
TapUI.getInstance().setEditMessageMenuEnabled(ENABLED)
TapUI.getInstance().setDeleteMessageMenuEnabled(ENABLED)
TapUI.getInstance().setMessageInfoMenuEnabled(ENABLED)
TapUI.getInstance().setSaveMediaToGalleryMenuEnabled(ENABLED)
TapUI.getInstance().setOpenLinkMenuEnabled(ENABLED)
TapUI.getInstance().setComposeEmailMenuEnabled(ENABLED)
TapUI.getInstance().setDialNumberMenuEnabled(ENABLED)
TapUI.getInstance().setSendSMSMenuEnabled(ENABLED)
TapUI.getInstance().setViewProfileMenuEnabled(ENABLED)
TapUI.getInstance().setSendMessageMenuEnabled(ENABLED)
TapUI.getInstance().setReportMessageMenuEnabled(ENABLED)
If
setNewChatButtonInRoomListVisible
is enabled (default), you can also customize the availability of its contents:• Add New Contact (add contact by search)
• Scan QR Code (add contact by scanning QR code)
• Create new group
Java
Kotlin
TapUI.getInstance().setNewContactMenuButtonVisible(VISIBLE);
TapUI.getInstance().setScanQRMenuButtonVisible(VISIBLE);
TapUI.getInstance().setNewGroupMenuButtonVisible(VISIBLE);
TapUI.getInstance().setNewContactMenuButtonVisible(VISIBLE)
TapUI.getInstance().setScanQRMenuButtonVisible(VISIBLE)
TapUI.getInstance().setNewGroupMenuButtonVisible(VISIBLE)
You can choose to show or hide the logout and delete account button in TapTalk My Account page.
Java
Kotlin
TapUI.getInstance().setLogoutButtonVisible(VISIBLE);
TapUI.getInstance().setDeleteAccountButtonVisible(VISIBLE);
TapUI.getInstance().setLogoutButtonVisible(VISIBLE)
TapUI.getInstance().setDeleteAccountButtonVisible(VISIBLE)
Delete account button is hidden and does nothing if pressed by default, its action needs to be handled manually using TapUIMyAccountListener.
You can choose to show or hide the add to contacts & report/block button in TapTalk Chat Profile page.
Java
Kotlin
TapUI.getInstance().setAddToContactsButtonInChatProfileVisible(VISIBLE);
TapUI.getInstance().setReportButtonInChatProfileVisible(VISIBLE);
TapUI.getInstance().setReportButtonInUserProfileVisible(VISIBLE);
TapUI.getInstance().setReportButtonInGroupProfileVisible(VISIBLE);
TapUI.getInstance().setBlockUserMenuEnabled(VISIBLE);
TapUI.getInstance().setGroupInCommonMenuEnabled(VISIBLE);
TapUI.getInstance().setAddToContactsButtonInChatProfileVisible(VISIBLE)
TapUI.getInstance().setReportButtonInChatProfileVisible(VISIBLE)
TapUI.getInstance().setReportButtonInUserProfileVisible(VISIBLE)
TapUI.getInstance().setReportButtonInGroupProfileVisible(VISIBLE)
TapUI.getInstance().setBlockUserMenuEnabled(VISIBLE)
TapUI.getInstance().setGroupInCommonMenuEnabled(VISIBLE)
The report button is hidden by default, and the report button in group profile currently does nothing by default when pressed, its action needs to be handled manually using TapUIChatProfileListener.
To enable or disable star message menu in chat room and chat profile page, you may call
setStarMessageMenuEnabled()
method from TapUI class. This feature is enabled by default.Java
Kotlin
TapUI.getInstance().setStarMessageMenuEnabled(ENABLED);
TapUI.getInstance().setStarMessageMenuEnabled(ENABLED)
User is able to swipe an item in the room list page to quickly complete some actions. To enable/disable this feature, you may call the following methods below.
Java
Kotlin
// Enable/disable mark as read swipe menu action
TapUI.getInstance().setMarkAsReadRoomListSwipeMenuEnabled(ENABLED);
// Enable/disable mark as unread swipe menu action
TapUI.getInstance().setMarkAsUnreadRoomListSwipeMenuEnabled(ENABLED);
// Enable/disable pin and unpin swipe menu action
TapUI.getInstance().setPinRoomListSwipeMenuEnabled(ENABLED);
// Enable/disable mute and unmute swipe menu action
TapUI.getInstance().setMuteRoomListSwipeMenuEnabled(ENABLED);
// Enable/disable delete chat swipe menu action
TapUI.getInstance().setDeleteRoomListSwipeMenuEnabled(ENABLED);
// Enable/disable mark as read swipe menu action
TapUI.getInstance().setMarkAsReadRoomListSwipeMenuEnabled(ENABLED)
// Enable/disable mark as unread swipe menu action
TapUI.getInstance().setMarkAsUnreadRoomListSwipeMenuEnabled(ENABLED)
// Enable/disable pin and unpin swipe menu action
TapUI.getInstance().setPinRoomListSwipeMenuEnabled(ENABLED)
// Enable/disable mute and unmute swipe menu action
TapUI.getInstance().setMuteRoomListSwipeMenuEnabled(ENABLED)
// Enable/disable delete chat swipe menu action
TapUI.getInstance().setDeleteRoomListSwipeMenuEnabled(ENABLED)
To enable or disable Saved Messages feature, call the
setSavedMessagesMenuEnabled()
from TapUI. This feature is enabled by default. Disabling this feature when the user has previously used it will not remove the user's existing messages that has been sent to the Saved Messages chat room.Java
Kotlin
TapUI.getInstance().setSavedMessagesMenuEnabled(ENABLED);
TapUI.getInstance().setEditMessageMenuEnabled(ENABLED)
To enable or disable pin message menu in chat room, you may call
setPinMessageMenuEnabled()
method from TapUI class. This feature is enabled by default.Java
Kotlin
TapUI.getInstance().setPinMessageMenuEnabled(ENABLED);
TapUI.getInstance().setPinMessageMenuEnabled(ENABLED)
Last modified 1mo ago