Your IP : 216.73.217.68


Current Path : /home/wuectly/www/03cbe/
Upload File :
Current File : /home/wuectly/www/03cbe/contextmenu.tar

plugin.min.js000060400000002153152456221020007156 0ustar00tinymce.PluginManager.add("contextmenu",function(e){var t,n,r=e.settings.contextmenu_never_use_native,i=function(e){return e.ctrlKey&&!r},o=function(){return tinymce.Env.mac&&tinymce.Env.webkit},a=function(){return n===!0};return e.on("mousedown",function(t){o()&&2===t.button&&!i(t)&&e.selection.isCollapsed()&&e.once("contextmenu",function(t){e.selection.placeCaretAt(t.clientX,t.clientY)})}),e.on("contextmenu",function(r){var o;if(!i(r)){if(r.preventDefault(),o=e.settings.contextmenu||"link openlink image inserttable | cell row column deletetable",t)t.show();else{var a=[];tinymce.each(o.split(/[ ,]/),function(t){var n=e.menuItems[t];"|"==t&&(n={text:t}),n&&(n.shortcut="",a.push(n))});for(var s=0;s<a.length;s++)"|"==a[s].text&&(0!==s&&s!=a.length-1||a.splice(s,1));t=new tinymce.ui.Menu({items:a,context:"contextmenu",classes:"contextmenu"}).renderTo(),t.on("hide",function(e){e.control===this&&(n=!1)}),e.on("remove",function(){t.remove(),t=null})}var l={x:r.pageX,y:r.pageY};e.inline||(l=tinymce.DOM.getPos(e.getContentAreaContainer()),l.x+=r.clientX,l.y+=r.clientY),t.moveTo(l.x,l.y),n=!0}}),{isContextMenuVisible:a}});plugin.js000060400000007035152463421220006402 0ustar00/* jce - 2.9.99.2 | 2026-04-22 | https://www.joomlacontenteditor.net | Source: https://github.com/widgetfactory/jce | Copyright (C) 2006 - 2026 Ryan Demmer. All rights reserved | GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html */
!function() {
    var Event = tinymce.dom.Event, DOM = tinymce.DOM;
    tinymce.PluginManager.add("contextmenu", function(ed) {
        var showMenu, hideMenu, self = this;
        function isContentEditable(elm) {
            return "false" !== ed.dom.getContentEditableParent(elm);
        }
        function isNativeOverrideKeyEvent(e) {
            return e.ctrlKey && !contextmenuNeverUseNative;
        }
        function isImage(elm) {
            return elm && "IMG" === elm.nodeName && isContentEditable(elm);
        }
        var contextmenuNeverUseNative = ed.settings.contextmenu_never_use_native;
        if (self.onContextMenu = new tinymce.util.Dispatcher(this), tinymce.isAndroid || tinymce.isIOS) return !1;
        function hide(ed, e) {
            e && 2 == e.button || self._menu && (self._menu.removeAll(), self._menu.destroy(), 
            Event.remove(ed.getDoc(), "click", hideMenu), self._menu = null);
        }
        hideMenu = function(e) {
            hide(ed, e);
        }, showMenu = ed.onContextMenu.add(function(ed, e) {
            var elm;
            isNativeOverrideKeyEvent(e) || (Event.cancel(e), tinymce.isMac && tinymce.isWebKit && 2 === e.button && !isNativeOverrideKeyEvent(e) && ed.selection.isCollapsed() && (isImage(e.target) || ed.selection.placeCaretAt(e.clientX, e.clientY)), 
            (isImage(e.target) || (elm = e.target) && "A" === elm.nodeName && isContentEditable(elm)) && ed.selection.select(e.target), 
            function(ed, e) {
                var m = self._menu, se = ed.selection, col = se.isCollapsed(), e = e.target;
                e && "BODY" !== e.nodeName || (e = se.getNode() || ed.getBody());
                m && (m.removeAll(), m.destroy());
                return se = DOM.getPos(ed.getContentAreaContainer()), m = ed.controlManager.createDropMenu("contextmenu", {
                    offset_x: se.x + ed.getParam("contextmenu_offset_x", 0),
                    offset_y: se.y + ed.getParam("contextmenu_offset_y", 0),
                    constrain: !0,
                    keyboard_focus: !0
                }), self._menu = m, (se = m.addMenu({
                    title: "contextmenu.align"
                })).add({
                    title: "contextmenu.left",
                    icon: "justifyleft",
                    cmd: "JustifyLeft"
                }), se.add({
                    title: "contextmenu.center",
                    icon: "justifycenter",
                    cmd: "JustifyCenter"
                }), se.add({
                    title: "contextmenu.right",
                    icon: "justifyright",
                    cmd: "JustifyRight"
                }), se.add({
                    title: "contextmenu.full",
                    icon: "justifyfull",
                    cmd: "JustifyFull"
                }), self.onContextMenu.dispatch(self, m, e, col), m;
            }(ed, e).showMenu(e.clientX || e.pageX, e.clientY || e.pageY), Event.add(ed.getDoc(), "click", hideMenu), 
            ed.nodeChanged());
        }), ed.onRemove.add(function() {
            self._menu && self._menu.removeAll();
        }), ed.onMouseDown.add(hide), ed.onKeyDown.add(hide), ed.onKeyDown.add(function(ed, e) {
            !e.shiftKey || e.ctrlKey || e.altKey || 121 !== e.keyCode || (Event.cancel(e), 
            showMenu(ed, e));
        });
    });
}();index.html000060400000000054152463514040006540 0ustar00<html><body bgcolor="#FFFFFF"></body></html>contextmenu.xml000060400000001146152463514040007641 0ustar00<?xml version="1.0" encoding="UTF-8"?>
<extension version="3.4" type="plugin" group="jce" method="upgrade">
  <name>WF_CONTEXTMENU_TITLE</name>
  <version>2.9.99.2</version>
  <creationDate>22-04-2026</creationDate>
  <author>Ryan Demmer</author>
  <authorEmail>info@joomlacontenteditor.net</authorEmail>
  <authorUrl>https://www.joomlacontenteditor.net/</authorUrl>
  <copyright>Ryan Demmer</copyright>
  <license>GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html</license>
  <description>WF_CONTEXTMENU_DESC</description>
  <icon></icon>
  <help></help>
  <languages></languages>
</extension>