From ceaf757680b47df272f23c39c130ad1485ede673 Mon Sep 17 00:00:00 2001 From: yflory Date: Mon, 13 Mar 2017 18:49:30 +0100 Subject: [PATCH] Allow right click on the CryptPad logo/link in the top left corner --- www/common/toolbar.js | 7 +++++-- www/drive/main.js | 16 +++++++++------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/www/common/toolbar.js b/www/common/toolbar.js index 4eaaf8ba6..297a4d857 100644 --- a/www/common/toolbar.js +++ b/www/common/toolbar.js @@ -407,8 +407,11 @@ define([ window.location = "/"; }; - $aTagBig.click(onClick); - $aTagSmall.click(onClick); + var onContext = function (e) { e.stopPropagation(); }; + + $aTagBig.click(onClick).contextmenu(onContext); + $aTagSmall.click(onClick).contextmenu(onContext); + $linkContainer.append($aTagSmall).append($aTagBig); }; diff --git a/www/drive/main.js b/www/drive/main.js index 02ba2238d..d1b381cd7 100644 --- a/www/drive/main.js +++ b/www/drive/main.js @@ -181,6 +181,7 @@ define([ var $tree = $iframe.find("#tree"); var $content = $iframe.find("#content"); + var $appContainer = $iframe.find(".app-container"); var $driveToolbar = $iframe.find("#driveToolbar"); var $contextMenu = $iframe.find("#treeContextMenu"); var $contentContextMenu = $iframe.find("#contentContextMenu"); @@ -1737,7 +1738,8 @@ define([ // Disable middle click in the context menu to avoid opening /drive/inner.html# in new tabs $(ifrw).click(function (e) { - if (e.which !== 3) { + if (!e.target || !$(e.target).parents('.cryptpad-dropdown').length) { return; } + if (e.which !== 1) { e.stopPropagation(); return false; } @@ -1900,21 +1902,21 @@ define([ module.hideMenu(); }); - $(ifrw).on('click', function (e) { + $appContainer.on('click', function (e) { if (e.which !== 1) { return ; } removeSelected(e); removeInput(); module.hideMenu(e); hideNewButton(); }); - $(ifrw).on('drag drop', function (e) { + $appContainer.on('drag drop', function (e) { removeInput(); module.hideMenu(e); }); - $(ifrw).on('mouseup drop', function (e) { + $appContainer.on('mouseup drop', function (e) { $iframe.find('.droppable').removeClass('droppable'); }); - $(ifrw).on('keydown', function (e) { + $appContainer.on('keydown', function (e) { // "Del" if (e.which === 46) { if (filesOp.isPathInFilesData(currentPath)) { return; } // We can't remove elements directly from filesData @@ -1948,7 +1950,7 @@ define([ moveElements(paths, [TRASH], false, refresh); } }); - $(ifrw).contextmenu(function () { + $appContainer.contextmenu(function () { module.hideMenu(); return false; }); @@ -2005,7 +2007,7 @@ define([ updatePathSize(); }, 100); }); - $(ifrw).mouseup(function (e) { + $appContainer.mouseup(function (e) { window.clearInterval(APP.resizeTree); APP.resizeTree = undefined; });