tinymce.PluginManager.add("contextmenu", function(a){var b, c = a.settings.contextmenu_never_use_native, d = function(a){return a.ctrlKey && !c}, e = function(){return tinymce.Env.mac && tinymce.Env.webkit}; a.on("mousedown", function(b){e() && 2 === b.button && !d(b) && a.selection.isCollapsed() && a.once("contextmenu", function(b){a.selection.placeCaretAt(b.clientX, b.clientY)})}), a.on("contextmenu", function(c){var e; if (!d(c)){if (c.preventDefault(), e = a.settings.contextmenu || "link image inserttable | cell row column deletetable", b)b.show(); else{var f = []; tinymce.each(e.split(/[ ,]/), function(b){var c = a.menuItems[b]; "|" == b && (c = {text:b}), c && (c.shortcut = "", f.push(c))}); for (var g = 0; g < f.length; g++)"|" == f[g].text && (0 !== g && g != f.length - 1 || f.splice(g, 1)); b = new tinymce.ui.Menu({items:f, context:"contextmenu", classes:"contextmenu"}).renderTo(), a.on("remove", function(){b.remove(), b = null})}var h = {x:c.pageX, y:c.pageY}; a.inline || (h = tinymce.DOM.getPos(a.getContentAreaContainer()), h.x += c.clientX, h.y += c.clientY), b.moveTo(h.x, h.y)}})});
|