fix: text for note to self delete from all my devices

pull/2871/head
Audric Ackermann 2 years ago
parent 154766786d
commit 53fca2a4e9

@ -99,6 +99,7 @@
"delete": "Delete", "delete": "Delete",
"messageDeletionForbidden": "You dont have permission to delete others messages", "messageDeletionForbidden": "You dont have permission to delete others messages",
"deleteJustForMe": "Delete just for me", "deleteJustForMe": "Delete just for me",
"deleteFromAllMyDevices": "Delete from all my devices",
"deleteForEveryone": "Delete for everyone", "deleteForEveryone": "Delete for everyone",
"deleteMessagesQuestion": "Delete $count$ messages?", "deleteMessagesQuestion": "Delete $count$ messages?",
"deleteMessageQuestion": "Delete this message?", "deleteMessageQuestion": "Delete this message?",

@ -65,6 +65,7 @@ const SelectionOverlay = () => {
const selectedConversationKey = useSelectedConversationKey(); const selectedConversationKey = useSelectedConversationKey();
const isPublic = useSelectedIsPublic(); const isPublic = useSelectedIsPublic();
const dispatch = useDispatch(); const dispatch = useDispatch();
const isMe = useSelectedisNoteToSelf();
const { i18n } = window; const { i18n } = window;
@ -85,7 +86,9 @@ const SelectionOverlay = () => {
const isOnlyServerDeletable = isPublic; const isOnlyServerDeletable = isPublic;
const deleteMessageButtonText = i18n('delete'); const deleteMessageButtonText = i18n('delete');
const deleteForEveryoneMessageButtonText = i18n('deleteForEveryone'); const deleteForEveryoneMessageButtonText = isMe
? i18n('deleteFromAllMyDevices')
: i18n('deleteForEveryone');
return ( return (
<div className="message-selection-overlay"> <div className="message-selection-overlay">

@ -27,6 +27,7 @@ import {
import { import {
useSelectedConversationKey, useSelectedConversationKey,
useSelectedIsBlocked, useSelectedIsBlocked,
useSelectedisNoteToSelf,
useSelectedIsPublic, useSelectedIsPublic,
useSelectedWeAreAdmin, useSelectedWeAreAdmin,
useSelectedWeAreModerator, useSelectedWeAreModerator,
@ -89,6 +90,7 @@ const StyledEmojiPanelContainer = styled.div<{ x: number; y: number }>`
const DeleteForEveryone = ({ messageId }: { messageId: string }) => { const DeleteForEveryone = ({ messageId }: { messageId: string }) => {
const convoId = useSelectedConversationKey(); const convoId = useSelectedConversationKey();
const isMe = useSelectedisNoteToSelf();
const isDeletableForEveryone = useMessageIsDeletableForEveryone(messageId); const isDeletableForEveryone = useMessageIsDeletableForEveryone(messageId);
if (!convoId || !isDeletableForEveryone) { if (!convoId || !isDeletableForEveryone) {
return null; return null;
@ -97,7 +99,9 @@ const DeleteForEveryone = ({ messageId }: { messageId: string }) => {
void deleteMessagesByIdForEveryone([messageId], convoId); void deleteMessagesByIdForEveryone([messageId], convoId);
}; };
const unsendMessageText = window.i18n('deleteForEveryone'); const unsendMessageText = isMe
? window.i18n('deleteFromAllMyDevices')
: window.i18n('deleteForEveryone');
return <Item onClick={onDeleteForEveryone}>{unsendMessageText}</Item>; return <Item onClick={onDeleteForEveryone}>{unsendMessageText}</Item>;
}; };

@ -340,6 +340,7 @@ export async function deleteMessagesByIdForEveryone(
conversationId: string conversationId: string
) { ) {
const conversation = getConversationController().getOrThrow(conversationId); const conversation = getConversationController().getOrThrow(conversationId);
const isMe = conversation.isMe();
const selectedMessages = compact( const selectedMessages = compact(
await Promise.all(messageIds.map(m => Data.getMessageById(m, false))) await Promise.all(messageIds.map(m => Data.getMessageById(m, false)))
); );
@ -349,11 +350,11 @@ export async function deleteMessagesByIdForEveryone(
window.inboxStore?.dispatch( window.inboxStore?.dispatch(
updateConfirmModal({ updateConfirmModal({
title: window.i18n('deleteForEveryone'), title: isMe ? window.i18n('deleteFromAllMyDevices') : window.i18n('deleteForEveryone'),
message: moreThanOne message: moreThanOne
? window.i18n('deleteMessagesQuestion', [messageCount.toString()]) ? window.i18n('deleteMessagesQuestion', [messageCount.toString()])
: window.i18n('deleteMessageQuestion'), : window.i18n('deleteMessageQuestion'),
okText: window.i18n('deleteForEveryone'), okText: isMe ? window.i18n('deleteFromAllMyDevices') : window.i18n('deleteForEveryone'),
okTheme: SessionButtonColor.Danger, okTheme: SessionButtonColor.Danger,
onClickOk: async () => { onClickOk: async () => {
await doDeleteSelectedMessages({ selectedMessages, conversation, deleteForEveryone: true }); await doDeleteSelectedMessages({ selectedMessages, conversation, deleteForEveryone: true });

@ -99,6 +99,7 @@ export type LocalizerKeys =
| 'delete' | 'delete'
| 'messageDeletionForbidden' | 'messageDeletionForbidden'
| 'deleteJustForMe' | 'deleteJustForMe'
| 'deleteFromAllMyDevices'
| 'deleteForEveryone' | 'deleteForEveryone'
| 'deleteMessagesQuestion' | 'deleteMessagesQuestion'
| 'deleteMessageQuestion' | 'deleteMessageQuestion'

Loading…
Cancel
Save