Skip to content

Commit f5bedb9

Browse files
committed
Close context menu when message is deleted
1 parent a913b67 commit f5bedb9

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

src/components/chat/contextMenu.ts

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,33 @@ export default class ChatContextMenu {
270270
callback: this.onContextMenu,
271271
listenerSetter: this.attachListenerSetter
272272
});
273+
274+
// * handle message deletion
275+
this.attachListenerSetter.add(rootScope)('history_delete', ({peerId, msgs}) => {
276+
if(peerId !== this.chat.peerId) {
277+
return;
278+
}
279+
280+
if(this.mid && msgs.has(this.mid)) {
281+
contextMenuController.close();
282+
return;
283+
}
284+
285+
if(this.chat.selection.isSelecting && this.selectedMessages) {
286+
const hasDeletedSelectedMessage = this.selectedMessages.some((message) => msgs.has(message.mid));
287+
if(hasDeletedSelectedMessage) {
288+
contextMenuController.close();
289+
return;
290+
}
291+
}
292+
293+
if(this.groupedMessages) {
294+
const hasDeletedGroupedMessage = this.groupedMessages.some((message) => msgs.has(message.mid));
295+
if(hasDeletedGroupedMessage) {
296+
contextMenuController.close();
297+
}
298+
}
299+
});
273300
}
274301

275302
public onContextMenu = (e: MouseEvent | Touch | TouchEvent) => {

0 commit comments

Comments
 (0)