From d51975b183885f9abb2f9834c005a31c20214756 Mon Sep 17 00:00:00 2001 From: Simon Huber Date: Fri, 6 Nov 2020 18:32:26 +0100 Subject: [PATCH] KeyboardWidget: don't trap keyboard shortcut if actions and message are empty and invokeActions isn't handled (#4971) * KeyboardWidget: don't trap keyboard shortcut if actions are empty * Update keyboard.js * Update keyboard.js --- core/modules/widgets/keyboard.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/core/modules/widgets/keyboard.js b/core/modules/widgets/keyboard.js index 7611b3d61..471d35e37 100644 --- a/core/modules/widgets/keyboard.js +++ b/core/modules/widgets/keyboard.js @@ -46,13 +46,15 @@ KeyboardWidget.prototype.render = function(parent,nextSibling) { // Add a keyboard event handler domNode.addEventListener("keydown",function (event) { if($tw.keyboardManager.checkKeyDescriptors(event,self.keyInfoArray)) { - self.invokeActions(self,event); + var handled = self.invokeActions(self,event); if(self.actions) { self.invokeActionString(self.actions,self,event); } self.dispatchMessage(event); - event.preventDefault(); - event.stopPropagation(); + if(handled || self.actions || self.message) { + event.preventDefault(); + event.stopPropagation(); + } return true; } return false;