diff --git a/app/message-pin/client/actionButton.js b/app/message-pin/client/actionButton.js index c0844340fc074..226055d2fccb8 100644 --- a/app/message-pin/client/actionButton.js +++ b/app/message-pin/client/actionButton.js @@ -98,9 +98,10 @@ Meteor.startup(function() { label: 'Get_link', classes: 'clipboard', context: ['pinned'], - async action(event) { + async action() { const { msg: message } = messageArgs(this); - $(event.currentTarget).attr('data-clipboard-text', await MessageAction.getPermaLink(message._id)); + const permalink = await MessageAction.getPermaLink(message._id); + navigator.clipboard.writeText(permalink); toastr.success(TAPi18n.__('Copied')); }, condition({ subscription }) { diff --git a/app/message-star/client/actionButton.js b/app/message-star/client/actionButton.js index 4fbd878c91d7f..aaebbccecf6e8 100644 --- a/app/message-star/client/actionButton.js +++ b/app/message-star/client/actionButton.js @@ -101,9 +101,10 @@ Meteor.startup(function() { label: 'Get_link', classes: 'clipboard', context: ['starred', 'threads'], - async action(event) { + async action() { const { msg: message } = messageArgs(this); - $(event.currentTarget).attr('data-clipboard-text', await MessageAction.getPermaLink(message._id)); + const permalink = await MessageAction.getPermaLink(message._id); + navigator.clipboard.writeText(permalink); toastr.success(TAPi18n.__('Copied')); }, condition({ msg, subscription, u }) { diff --git a/app/ui-utils/client/lib/MessageAction.js b/app/ui-utils/client/lib/MessageAction.js index bdcc981225b60..6c46ab5d2af59 100644 --- a/app/ui-utils/client/lib/MessageAction.js +++ b/app/ui-utils/client/lib/MessageAction.js @@ -216,18 +216,14 @@ Meteor.startup(async function() { label: 'Get_link', classes: 'clipboard', context: ['message', 'message-mobile', 'threads'], - async action(event) { + async action() { const { msg: message } = messageArgs(this); const permalink = await MessageAction.getPermaLink(message._id); - $(event.currentTarget).attr('data-clipboard-text', permalink); + navigator.clipboard.writeText(permalink); toastr.success(TAPi18n.__('Copied')); }, condition({ subscription }) { - if (subscription == null) { - return false; - } - - return true; + return !!subscription; }, order: 4, group: 'menu', @@ -239,9 +235,9 @@ Meteor.startup(async function() { label: 'Copy', classes: 'clipboard', context: ['message', 'message-mobile', 'threads'], - action(event) { + action() { const { msg: { msg } } = messageArgs(this); - $(event.currentTarget).attr('data-clipboard-text', msg); + navigator.clipboard.writeText(msg); toastr.success(TAPi18n.__('Copied')); }, condition({ subscription }) { @@ -256,8 +252,7 @@ Meteor.startup(async function() { icon: 'edit', label: 'Edit', context: ['message', 'message-mobile', 'threads'], - action(event) { - console.log(event); + action() { const { msg } = messageArgs(this); getChatMessagesFrom(msg).edit(document.getElementById(msg.tmid ? `thread-${ msg._id }` : msg._id)); },