add option to disable imposters, bump version
This commit is contained in:
parent
b3487370db
commit
f3fe0994f5
@ -37,6 +37,7 @@ function getFormData() {
|
|||||||
|
|
||||||
optionsNew.scanning.requireShift = $('#hold-shift-to-scan').prop('checked');
|
optionsNew.scanning.requireShift = $('#hold-shift-to-scan').prop('checked');
|
||||||
optionsNew.scanning.selectText = $('#select-matched-text').prop('checked');
|
optionsNew.scanning.selectText = $('#select-matched-text').prop('checked');
|
||||||
|
optionsNew.scanning.imposter = $('#search-form-text-fields').prop('checked');
|
||||||
optionsNew.scanning.delay = parseInt($('#scan-delay').val(), 10);
|
optionsNew.scanning.delay = parseInt($('#scan-delay').val(), 10);
|
||||||
optionsNew.scanning.length = parseInt($('#scan-length').val(), 10);
|
optionsNew.scanning.length = parseInt($('#scan-length').val(), 10);
|
||||||
|
|
||||||
@ -95,6 +96,7 @@ $(document).ready(() => {
|
|||||||
|
|
||||||
$('#hold-shift-to-scan').prop('checked', options.scanning.requireShift);
|
$('#hold-shift-to-scan').prop('checked', options.scanning.requireShift);
|
||||||
$('#select-matched-text').prop('checked', options.scanning.selectText);
|
$('#select-matched-text').prop('checked', options.scanning.selectText);
|
||||||
|
$('#search-form-text-fields').prop('checked', options.scanning.imposter);
|
||||||
$('#scan-delay').val(options.scanning.delay);
|
$('#scan-delay').val(options.scanning.delay);
|
||||||
$('#scan-length').val(options.scanning.length);
|
$('#scan-length').val(options.scanning.length);
|
||||||
|
|
||||||
|
@ -31,6 +31,7 @@ function optionsSetDefaults(options) {
|
|||||||
scanning: {
|
scanning: {
|
||||||
requireShift: true,
|
requireShift: true,
|
||||||
selectText: true,
|
selectText: true,
|
||||||
|
imposter: true,
|
||||||
delay: 15,
|
delay: 15,
|
||||||
length: 10
|
length: 10
|
||||||
},
|
},
|
||||||
|
@ -62,6 +62,10 @@
|
|||||||
<label><input type="checkbox" id="select-matched-text"> Select matched text</label>
|
<label><input type="checkbox" id="select-matched-text"> Select matched text</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="checkbox">
|
||||||
|
<label><input type="checkbox" id="search-form-text-fields"> Search form text fields</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="form-group options-advanced">
|
<div class="form-group options-advanced">
|
||||||
<label for="scan-delay">Scan delay</label>
|
<label for="scan-delay">Scan delay</label>
|
||||||
<input type="number" min="1" id="scan-delay" class="form-control">
|
<input type="number" min="1" id="scan-delay" class="form-control">
|
||||||
|
@ -103,7 +103,7 @@ class Driver {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const textSource = textSourceFromPoint(point);
|
const textSource = textSourceFromPoint(point, this.options.scanning.imposter);
|
||||||
if (textSource === null || !textSource.containsPoint(point)) {
|
if (textSource === null || !textSource.containsPoint(point)) {
|
||||||
if (hideNotFound) {
|
if (hideNotFound) {
|
||||||
this.searchClear();
|
this.searchClear();
|
||||||
|
@ -93,12 +93,12 @@ function destroyImposters() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function textSourceFromPoint(point) {
|
function textSourceFromPoint(point, imposter) {
|
||||||
const element = document.elementFromPoint(point.x, point.y);
|
const element = document.elementFromPoint(point.x, point.y);
|
||||||
if (element !== null) {
|
if (element !== null) {
|
||||||
if (element.nodeName === 'IMG' || element.nodeName === 'BUTTON') {
|
if (element.nodeName === 'IMG' || element.nodeName === 'BUTTON') {
|
||||||
return new TextSourceElement(element);
|
return new TextSourceElement(element);
|
||||||
} else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {
|
} else if (imposter && (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA')) {
|
||||||
createImposter(element);
|
createImposter(element);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"manifest_version": 2,
|
"manifest_version": 2,
|
||||||
"name": "Yomichan",
|
"name": "Yomichan",
|
||||||
"version": "1.0.10",
|
"version": "1.0.11",
|
||||||
|
|
||||||
"description": "Japanese dictionary with Anki integration",
|
"description": "Japanese dictionary with Anki integration",
|
||||||
"icons": {"16": "img/icon16.png", "48": "img/icon48.png", "128": "img/icon128.png"},
|
"icons": {"16": "img/icon16.png", "48": "img/icon48.png", "128": "img/icon128.png"},
|
||||||
|
Loading…
Reference in New Issue
Block a user