Basic menu item for message replies.

This commit is contained in:
aforge
2021-07-20 18:19:34 +03:00
parent a24ee01b37
commit 1961e76699
3 changed files with 21 additions and 0 deletions
+1
View File
@@ -285,6 +285,7 @@
"menu_item_info": "Info",
"menu_item_member_delete": "Remove",
"menu_item_mute": "Mute",
"menu_item_reply": "Reply",
"menu_item_send_retry": "Retry",
"menu_item_unblock": "Unblock",
"menu_item_unmute": "Unmute",
+4
View File
@@ -60,6 +60,10 @@ export default class ChatMessage extends React.Component {
e.preventDefault();
e.stopPropagation();
const menuItems = this.props.received == Tinode.MESSAGE_STATUS_FAILED ? ['menu_item_send_retry'] : [];
if (this.props.received >= Tinode.MESSAGE_STATUS_FAILED &&
this.props.received < Tinode.MESSAGE_STATUS_DEL_RANGE) {
menuItems.push('menu_item_reply');
}
this.props.showContextMenu({ seq: this.props.seq, content: this.props.content,
y: e.pageY, x: e.pageX }, menuItems);
}
+16
View File
@@ -47,6 +47,11 @@ const messages = defineMessages({
defaultMessage: 'Unmute',
description: 'Turn notifications on'
},
reply: {
id: 'menu_item_reply',
defaultMessage: 'Reply',
description: 'Reply to message'
},
topic_delete: {
id: 'menu_item_delete_topic',
defaultMessage: 'Delete',
@@ -166,6 +171,13 @@ class ContextMenu extends React.Component {
return this.retryMessage(params, errorHandler);
}
},
'menu_item_reply': {
id: 'menu_item_reply',
title: formatMessage(messages.reply),
handler: (params, errorHandler) => {
return this.replyToMessage(params, errorHandler);
}
},
'topic_unmute': {
id: 'topic_unmute',
title: formatMessage(messages.unmute),
@@ -373,6 +385,10 @@ class ContextMenu extends React.Component {
});
}
replyToMessage(params, errorHandler) {
console.log("Reply to message", params);
}
// Function is used by context menu to set permissions.
topicPermissionSetter(mode, params, errorHandler) {
const topic = this.props.tinode.getTopic(params.topicName);