Skip to content

Commit

Permalink
🐞fix: Fix a bug of double tap
Browse files Browse the repository at this point in the history
  • Loading branch information
utubo committed Mar 25, 2024
1 parent c361426 commit 487317d
Show file tree
Hide file tree
Showing 7 changed files with 12 additions and 29 deletions.
3 changes: 0 additions & 3 deletions src/_locales/de/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,6 @@
"delaySingleTapNote": {
"message": "Wenn das einfache Antippen nicht funktioniert, versuchen Sie es mit dem dreifachen Antippen."
},
"delaySingleTapOnShadowDOM": {
"message": "Einfaches Antippen verzögern, um auf doppeltes Antippen zu warten des schatten-DOMs"
},
"displayCommand": {
"message": "Befehl anzeigen"
},
Expand Down
3 changes: 0 additions & 3 deletions src/_locales/en/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,6 @@
"delaySingleTapNote": {
"message": "If single tap does not work, try triple tap."
},
"delaySingleTapOnShadowDOM": {
"message": "Delay single tap to wait for double tap on shadow DOMs"
},
"displayCommand": {
"message": "Display Command"
},
Expand Down
3 changes: 0 additions & 3 deletions src/_locales/ja/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,6 @@
"delaySingleTapNote": {
"message": "通常のタップが効かないときは、トリプルタップを試してください"
},
"delaySingleTapOnShadowDOM": {
"message": "Shadow DOM上でもダブルタップを検知するために通常のタップを遅延させる"
},
"displayCommand": {
"message": "コマンドを表示する"
},
Expand Down
3 changes: 0 additions & 3 deletions src/_locales/zh_CN/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,6 @@
"delaySingleTapNote": {
"message": "如果单击不起作用,请尝试三击"
},
"delaySingleTapOnShadowDOM": {
"message": "在Shadow DOM上延迟单击以等待双击"
},
"displayCommand": {
"message": "显示命令"
},
Expand Down
20 changes: 11 additions & 9 deletions src/content.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ var SimpleGesture = {};
timeout: 1500,
doubleTapMsec: 200,
delaySingleTap: false,
delaySingleTapOnShadowDOM: false,
toast: true,
blacklist: [],
disableWhileZoomedIn: false
Expand Down Expand Up @@ -288,16 +287,19 @@ var SimpleGesture = {};
const waitForDoubleTap = e => {
if (!isGestureEnabled) return;
if (doubleTap.count === ACCEPT_SINGLE_TAP) return;
var tg = e.target;
if ('composed' in e) {
if (!SimpleGesture.ini.delaySingleTapOnShadowDOM) return;
tg = e.composedPath()[0];
}
if (!tg) return;
const onlyLinkTag = !SimpleGesture.ini.delaySingleTap
const paths = e.composedPath();
var tg = paths[0];
const onlyLinkTag = !SimpleGesture.ini.delaySingleTap // not allways
if (onlyLinkTag) {
tg = getLinkTag(tg);
if (!tg) return;
} else if (!paths.some(p => (
p.tagName === 'A' ||
p.tagName === 'LABEL' ||
p.tagName === 'BUTTON' ||
p.tagName === 'INPUT' && p.type.match(/button|submit|cancel|clear|checkbox|radio/i)
))) {
return;
}
e.stopPropagation();
e.preventDefault();
Expand All @@ -311,7 +313,7 @@ var SimpleGesture = {};
doubleTap.timer = setTimeout(() => {
doubleTap.timer = null;
doubleTap.count = ACCEPT_SINGLE_TAP;
if (onlyLinkTag ) {
if (onlyLinkTag) {
tg.dispatchEvent(ev);
} else {
clickTarget(tg, ev);
Expand Down
2 changes: 1 addition & 1 deletion src/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"manifest_version": 2,
"name": "__MSG_extensionName__",
"description": "__MSG_extensionDescription__",
"version": "3.13",
"version": "3.13.1",
"default_locale": "en",
"icons": {
"64": "icon64.png"
Expand Down
7 changes: 0 additions & 7 deletions src/options.html
Original file line number Diff line number Diff line change
Expand Up @@ -127,13 +127,6 @@
</label>
<span class="with-checkbox note note-info i18n">delaySingleTapNote</span>
</div>
<div class="sub-item experimental">
<label for="delaySingleTapOnShadowDOM" class="checkbox-label">
<span class="with-checkbox sub-caption icon-flask i18n">delaySingleTapOnShadowDOM</span>
<input id="delaySingleTapOnShadowDOM" class="checkbox js-binding" type="checkbox" value="true">
<label for="delaySingleTapOnShadowDOM" class="checkbox-image"></label>
</label>
</div>
</div>
<div class="item">
<label for="toast" class="checkbox-label">
Expand Down

0 comments on commit 487317d

Please sign in to comment.