From bb6cda7de58dcdd680a1c14ce315e91edc0bf31e Mon Sep 17 00:00:00 2001 From: Eduard Kuzmenko Date: Sun, 5 Mar 2023 19:39:45 +0400 Subject: [PATCH] Fix autofocus after clicking on checkbox --- src/lib/appManagers/appImManager.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/lib/appManagers/appImManager.ts b/src/lib/appManagers/appImManager.ts index fff99305..1a0ab5fa 100644 --- a/src/lib/appManagers/appImManager.ts +++ b/src/lib/appManagers/appImManager.ts @@ -1073,6 +1073,8 @@ export class AppImManager extends EventListenerBase<{ const target = e.target as HTMLElement; + const isTargetAnInput = (target.tagName === 'INPUT' && !['checkbox', 'radio'].includes((target as HTMLInputElement).type)) || target.isContentEditable; + // if(target.tagName === 'INPUT') return; // this.log('onkeydown', e, document.activeElement); @@ -1081,7 +1083,7 @@ export class AppImManager extends EventListenerBase<{ if((key.startsWith('Arrow') || (e.shiftKey && key === 'Shift')) && !isSelectionCollapsed) { return; - } else if(e.code === 'KeyC' && (e.ctrlKey || e.metaKey) && target.tagName !== 'INPUT') { + } else if(e.code === 'KeyC' && (e.ctrlKey || e.metaKey) && !isTargetAnInput) { return; } else if(e.altKey && (key === 'ArrowUp' || key === 'ArrowDown')) { cancelEvent(e); @@ -1108,8 +1110,7 @@ export class AppImManager extends EventListenerBase<{ if( chat?.input?.messageInput && target !== chat.input.messageInput && - target.tagName !== 'INPUT' && - !target.isContentEditable && + !isTargetAnInput && !IS_TOUCH_SUPPORTED && (!mediaSizes.isMobile || this.tabId === APP_TABS.CHAT) && !chat.selection.isSelecting &&