// --- control (click) for popups ---------------------------------------------- // disable control modifier in contentAreaClick() avoiding handleLinkClick() eval('contentAreaClick =' + contentAreaClick.toString().replace('!event.ctrlKey &&', '')); // make shift open a new tab, adjusting for the loss of control eval('handleLinkClick =' + handleLinkClick.toString().replace('openNewWindowWith', 'openNewTabWith')); window.addEventListener('keydown', function(event) { if (event.keyCode == KeyEvent.DOM_VK_CONTROL) try { gPrefService.clearUserPref('dom.popup_allowed_events'); } catch (e) { } }, false); window.addEventListener('keyup', function(event) { if (event.keyCode == KeyEvent.DOM_VK_CONTROL) gPrefService.setCharPref('dom.popup_allowed_events', ''); }, false); /* function handleLinkClick(event, href, linkNode) { var docURL = event.target.ownerDocument.location.href; switch (event.button) { case 0: if (event.shiftKey) { openNewTabWith(href, docURL, null, false); event.stopPropagation(); } else { var referrer = Components.classes["@mozilla.org/network/io-service;1"] .getService(Components.interfaces.nsIIOService) .newURI(docURL, null, null); loadURI(href, referrer, null, false); } return true; case 1: var tab; try { tab = gPrefService.getBoolPref('browser.tabs.opentabfor.middleclick'); } catch(e) { tab = true; } if (tab) openNewTabWith(href, docURL, null, event, false); else openNewWindowWith(href, docURL, null, false); event.stopPropagation(); return true; default: break; } return false; } */