From ab8a2dfcabfefe37eb9ca81dc53e9aa437cb9a65 Mon Sep 17 00:00:00 2001 From: Eduard Kuzmenko Date: Sat, 12 Dec 2020 17:06:19 +0200 Subject: [PATCH] Drag and drop handle sending rights --- src/lib/appManagers/appImManager.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/lib/appManagers/appImManager.ts b/src/lib/appManagers/appImManager.ts index 91c1b1d8..39de4528 100644 --- a/src/lib/appManagers/appImManager.ts +++ b/src/lib/appManagers/appImManager.ts @@ -222,7 +222,7 @@ export class AppImManager { // @ts-ignore const isFiles = _types.contains ? _types.contains('Files') : _types.indexOf('Files') >= 0; - if(!isFiles) { // * skip dragging text case + if(!isFiles || !this.canDrag()) { // * skip dragging text case counter = 0; return; } @@ -318,11 +318,13 @@ export class AppImManager { dropsContainer.classList.add('drops-container'); } - private onDocumentPaste = (e: ClipboardEvent | DragEvent, attachType?: 'media' | 'document') => { + private canDrag() { const peerId = this.chat?.peerId; - if(!peerId || rootScope.overlayIsActive || (peerId < 0 && !appChatsManager.hasRights(peerId, 'send', 'send_media'))) { - return; - } + return !(!peerId || rootScope.overlayIsActive || (peerId < 0 && !appChatsManager.hasRights(peerId, 'send', 'send_media'))); + } + + private onDocumentPaste = (e: ClipboardEvent | DragEvent, attachType?: 'media' | 'document') => { + if(!this.canDrag()) return; //console.log('document paste'); //console.log('item', event.clipboardData.getData());