diff options
author | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2020-09-26 19:24:21 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-26 19:24:21 -0400 |
commit | 73dd578821d1373d4504778318e2e2f26b79a80e (patch) | |
tree | 7b96fd5bfef81de55175fc5a97ddee11cbb2ed1b /ext/bg | |
parent | 9c7b9d666087add0f72900c045ee43ed05c5b467 (diff) |
Add middle mouse prevention option (#868)
* Add preventMiddleMouse option to TextScanner
* Add preventMiddleMouse options
* Add options
* Apply preventMiddleMouse options
Diffstat (limited to 'ext/bg')
-rw-r--r-- | ext/bg/data/options-schema.json | 28 | ||||
-rw-r--r-- | ext/bg/js/options.js | 7 | ||||
-rw-r--r-- | ext/bg/settings.html | 10 |
3 files changed, 45 insertions, 0 deletions
diff --git a/ext/bg/data/options-schema.json b/ext/bg/data/options-schema.json index 2e324984..80f8d782 100644 --- a/ext/bg/data/options-schema.json +++ b/ext/bg/data/options-schema.json @@ -320,6 +320,7 @@ "type": "object", "required": [ "inputs", + "preventMiddleMouse", "touchInputEnabled", "pointerEventsEnabled", "selectText", @@ -454,6 +455,33 @@ } } }, + "preventMiddleMouse": { + "type": "object", + "required": [ + "onWebPages", + "onPopupPages", + "onSearchPages", + "onSearchQuery" + ], + "properties": { + "onWebPages": { + "type": "boolean", + "default": false + }, + "onPopupPages": { + "type": "boolean", + "default": false + }, + "onSearchPages": { + "type": "boolean", + "default": false + }, + "onSearchQuery": { + "type": "boolean", + "default": false + } + } + }, "touchInputEnabled": { "type": "boolean", "default": true diff --git a/ext/bg/js/options.js b/ext/bg/js/options.js index f9571ec2..cf24645a 100644 --- a/ext/bg/js/options.js +++ b/ext/bg/js/options.js @@ -507,6 +507,7 @@ class OptionsUtil { // Added hideDelay. // Added inputs to profileOptions.scanning. // Added pointerEventsEnabled to profileOptions.scanning. + // Added preventMiddleMouse to profileOptions.scanning. for (const {conditionGroups} of options.profiles) { for (const {conditions} of conditionGroups) { for (const condition of conditions) { @@ -531,6 +532,12 @@ class OptionsUtil { profileOptions.general.usePopupWindow = false; profileOptions.scanning.hideDelay = 0; profileOptions.scanning.pointerEventsEnabled = false; + profileOptions.scanning.preventMiddleMouse = { + onWebPages: false, + onPopupPages: false, + onSearchPages: false, + onSearchQuery: false + }; const {modifier, middleMouse} = profileOptions.scanning; delete profileOptions.scanning.modifier; diff --git a/ext/bg/settings.html b/ext/bg/settings.html index 9c8621f7..8dea0245 100644 --- a/ext/bg/settings.html +++ b/ext/bg/settings.html @@ -414,6 +414,16 @@ <label><input type="checkbox" id="deep-dom-scan" data-setting="scanning.deepDomScan"> Deep content scan</label> </div> + <div class="checkbox options-advanced"> + <strong>Prevent middle mouse button actions on:</strong> + <div style="margin-left: 1em;"> + <label><input type="checkbox" id="deep-dom-scan" data-setting="scanning.preventMiddleMouse.onWebPages"> Webpages</label><br> + <label><input type="checkbox" id="deep-dom-scan" data-setting="scanning.preventMiddleMouse.onPopupPages"> Popups</label><br> + <label><input type="checkbox" id="deep-dom-scan" data-setting="scanning.preventMiddleMouse.onSearchPages"> Search page</label><br> + <label><input type="checkbox" id="deep-dom-scan" data-setting="scanning.preventMiddleMouse.onSearchQuery"> Search query</label><br> + </div> + </div> + <div class="form-group options-advanced"> <div class="row"> <div class="col-xs-6"> |