diff --git a/lib/client/listeners.js b/lib/client/listeners.js index 35b56f80..c6168301 100644 --- a/lib/client/listeners.js +++ b/lib/client/listeners.js @@ -13,7 +13,7 @@ var Util, DOM, CloudCmd; OnPathLinks = [], EventsFiles = { 'mousedown' : Util.bind(ifExecNotUL, setCurrentFileByEvent), - 'contextmenu' : Util.bind(ifExecNotUL, onContextMenu), + 'contextmenu' : onContextMenu, 'dragstart' : Util.bind(ifExecNotUL, onDragStart), 'click' : onClick, 'dblclick' : Util.bind(ifExecNotUL, onDblClick), @@ -222,17 +222,19 @@ var Util, DOM, CloudCmd; } function onContextMenu(event) { - var element = getLIElement(event.target), - isFunc = Util.isFunction(CloudCmd.Menu); + var element = event.target, + tag = element.tagName, + isUL = tag === 'UL'; - DOM.setCurrentFile(element); - - if (isFunc) { - CloudCmd.Menu({ - x: event.clientX, - y: event.clientY - }); + if (!isUL) { + element = getLIElement(event.target); + DOM.setCurrentFile(element); } + + Util.exec(CloudCmd.Menu, { + x: event.clientX, + y: event.clientY + }); } /*