Skip to content

Allow mousetrap to work in inputs #516

@Serraniel

Description

@Serraniel

Hi! 👋

Firstly, thanks for your work on this project! 🙂

Today I used patch-package to patch [email protected] for the project I'm working on.

Here is the diff that solved my problem:

diff --git a/node_modules/mousetrap/mousetrap.js b/node_modules/mousetrap/mousetrap.js
index ab71d58..97c3464 100644
--- a/node_modules/mousetrap/mousetrap.js
+++ b/node_modules/mousetrap/mousetrap.js
@@ -432,9 +432,13 @@
         return _belongsTo(element.parentNode, ancestor);
     }
 
-    function Mousetrap(targetElement) {
+    function Mousetrap(targetElement, options) {
         var self = this;
 
+        // Standardoptionen
+        self.options = options || {};
+        self.options.allowInInputs = self.options.allowInInputs || false;
+
         targetElement = targetElement || document;
 
         if (!(self instanceof Mousetrap)) {
@@ -996,8 +1000,12 @@
             }
         }
 
-        // stop for input, select, and textarea
-        return element.tagName == 'INPUT' || element.tagName == 'SELECT' || element.tagName == 'TEXTAREA' || element.isContentEditable;
+        // Stop for input, select, and textarea if allowInInputs is not set
+        if (!self.options.allowInInputs) {
+            return element.tagName == 'INPUT' || element.tagName == 'SELECT' || element.tagName == 'TEXTAREA' || element.isContentEditable;
+        }
+
+        return false;
     };
 
     /**

This issue body was partially generated by patch-package.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions