diff --git a/content.js b/content.js index fd5f51b..59d613a 100644 --- a/content.js +++ b/content.js @@ -90,16 +90,19 @@ function onMouseDown(e) { flags.canceled = false; resetFlags(); - var delay = isLeft(e) ? prefs.longLeftClickTimeout : prefs.showContextMenuTimeout; - if(delay <= 0) - return; - var trg = e.originalTarget || e.target; var it = getItem(trg); _log("onMouseDown() -> getItem(): " + it); if(!it) return; + if(isRight(e)) // For Linux with "contextmenu" event right after "mousedown" + flags.stopContextMenu = true; + + var delay = isLeft(e) ? prefs.longLeftClickTimeout : prefs.showContextMenuTimeout; + if(delay <= 0) + return; + moveHandlers(e); clearTimeout(delayedTimer); @@ -155,10 +158,11 @@ function onClick(e) { var trg = e.originalTarget || e.target; var it = getItem(trg); _log("onClick() -> getItem(): " + it); - if(!it) + if(!it) { + flags.stopContextMenu = false; return; + } flags.executed = true; - flags.stopContextMenu = true; openURIItem(e, trg, it, prefs.loadInBackgroundRight, prefs.loadInRight); } function onContextMenu(e) {