update tinymce to 3.5.0.1
This commit is contained in:
parent
205c09e4f0
commit
e39014a3a7
26 changed files with 5794 additions and 4903 deletions
File diff suppressed because it is too large
Load diff
|
@ -1 +1 @@
|
||||||
(function(){tinymce.create("tinymce.plugins.AutolinkPlugin",{init:function(a,b){var c=this;if(tinyMCE.isIE){return}a.onKeyDown.add(function(d,f){if(f.keyCode==13){return c.handleEnter(d)}});a.onKeyPress.add(function(d,f){if(f.which==41){return c.handleEclipse(d)}});a.onKeyUp.add(function(d,f){if(f.keyCode==32){return c.handleSpacebar(d)}})},handleEclipse:function(a){this.parseCurrentLine(a,-1,"(",true)},handleSpacebar:function(a){this.parseCurrentLine(a,0,"",true)},handleEnter:function(a){this.parseCurrentLine(a,-1,"",false)},parseCurrentLine:function(i,d,b,g){var a,f,c,n,k,m,h,e,j;a=i.selection.getRng().cloneRange();if(a.startOffset<5){e=a.endContainer.previousSibling;if(e==null){if(a.endContainer.firstChild==null||a.endContainer.firstChild.nextSibling==null){return}e=a.endContainer.firstChild.nextSibling}j=e.length;a.setStart(e,j);a.setEnd(e,j);if(a.endOffset<5){return}f=a.endOffset;n=e}else{n=a.endContainer;if(n.nodeType!=3&&n.firstChild){while(n.nodeType!=3&&n.firstChild){n=n.firstChild}a.setStart(n,0);a.setEnd(n,n.nodeValue.length)}if(a.endOffset==1){f=2}else{f=a.endOffset-1-d}}c=f;do{a.setStart(n,f-2);a.setEnd(n,f-1);f-=1}while(a.toString()!=" "&&a.toString()!=""&&a.toString().charCodeAt(0)!=160&&(f-2)>=0&&a.toString()!=b);if(a.toString()==b||a.toString().charCodeAt(0)==160){a.setStart(n,f);a.setEnd(n,c);f+=1}else{if(a.startOffset==0){a.setStart(n,0);a.setEnd(n,c)}else{a.setStart(n,f);a.setEnd(n,c)}}m=a.toString();h=m.match(/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|[A-Z0-9._%+-]+@)(.+)$/i);if(h){if(h[1]=="www."){h[1]="http://www."}else{if(/@$/.test(h[1])){h[1]="mailto:"+h[1]}}k=i.selection.getBookmark();i.selection.setRng(a);tinyMCE.execCommand("createlink",false,h[1]+h[2]);i.selection.moveToBookmark(k);if(tinyMCE.isWebKit){i.selection.collapse(false);var l=Math.min(n.length,c+1);a.setStart(n,l);a.setEnd(n,l);i.selection.setRng(a)}}},getInfo:function(){return{longname:"Autolink",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autolink",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("autolink",tinymce.plugins.AutolinkPlugin)})();
|
(function(){tinymce.create("tinymce.plugins.AutolinkPlugin",{init:function(a,b){var c=this;a.onKeyDown.addToTop(function(d,f){if(f.keyCode==13){return c.handleEnter(d)}});if(tinyMCE.isIE){return}a.onKeyPress.add(function(d,f){if(f.which==41){return c.handleEclipse(d)}});a.onKeyUp.add(function(d,f){if(f.keyCode==32){return c.handleSpacebar(d)}})},handleEclipse:function(a){this.parseCurrentLine(a,-1,"(",true)},handleSpacebar:function(a){this.parseCurrentLine(a,0,"",true)},handleEnter:function(a){this.parseCurrentLine(a,-1,"",false)},parseCurrentLine:function(i,d,b,g){var a,f,c,n,k,m,h,e,j;a=i.selection.getRng(true).cloneRange();if(a.startOffset<5){e=a.endContainer.previousSibling;if(e==null){if(a.endContainer.firstChild==null||a.endContainer.firstChild.nextSibling==null){return}e=a.endContainer.firstChild.nextSibling}j=e.length;a.setStart(e,j);a.setEnd(e,j);if(a.endOffset<5){return}f=a.endOffset;n=e}else{n=a.endContainer;if(n.nodeType!=3&&n.firstChild){while(n.nodeType!=3&&n.firstChild){n=n.firstChild}a.setStart(n,0);a.setEnd(n,n.nodeValue.length)}if(a.endOffset==1){f=2}else{f=a.endOffset-1-d}}c=f;do{a.setStart(n,f-2);a.setEnd(n,f-1);f-=1}while(a.toString()!=" "&&a.toString()!=""&&a.toString().charCodeAt(0)!=160&&(f-2)>=0&&a.toString()!=b);if(a.toString()==b||a.toString().charCodeAt(0)==160){a.setStart(n,f);a.setEnd(n,c);f+=1}else{if(a.startOffset==0){a.setStart(n,0);a.setEnd(n,c)}else{a.setStart(n,f);a.setEnd(n,c)}}var m=a.toString();if(m.charAt(m.length-1)=="."){a.setEnd(n,c-1)}m=a.toString();h=m.match(/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|[A-Z0-9._%+-]+@)(.+)$/i);if(h){if(h[1]=="www."){h[1]="http://www."}else{if(/@$/.test(h[1])){h[1]="mailto:"+h[1]}}k=i.selection.getBookmark();i.selection.setRng(a);tinyMCE.execCommand("createlink",false,h[1]+h[2]);i.selection.moveToBookmark(k);if(tinyMCE.isWebKit){i.selection.collapse(false);var l=Math.min(n.length,c+1);a.setStart(n,l);a.setEnd(n,l);i.selection.setRng(a)}}},getInfo:function(){return{longname:"Autolink",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autolink",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("autolink",tinymce.plugins.AutolinkPlugin)})();
|
|
@ -1,174 +1,180 @@
|
||||||
/**
|
/**
|
||||||
* editor_plugin_src.js
|
* editor_plugin_src.js
|
||||||
*
|
*
|
||||||
* Copyright 2011, Moxiecode Systems AB
|
* Copyright 2011, Moxiecode Systems AB
|
||||||
* Released under LGPL License.
|
* Released under LGPL License.
|
||||||
*
|
*
|
||||||
* License: http://tinymce.moxiecode.com/license
|
* License: http://tinymce.moxiecode.com/license
|
||||||
* Contributing: http://tinymce.moxiecode.com/contributing
|
* Contributing: http://tinymce.moxiecode.com/contributing
|
||||||
*/
|
*/
|
||||||
|
|
||||||
(function() {
|
(function() {
|
||||||
tinymce.create('tinymce.plugins.AutolinkPlugin', {
|
tinymce.create('tinymce.plugins.AutolinkPlugin', {
|
||||||
/**
|
/**
|
||||||
* Initializes the plugin, this will be executed after the plugin has been created.
|
* Initializes the plugin, this will be executed after the plugin has been created.
|
||||||
* This call is done before the editor instance has finished it's initialization so use the onInit event
|
* This call is done before the editor instance has finished it's initialization so use the onInit event
|
||||||
* of the editor instance to intercept that event.
|
* of the editor instance to intercept that event.
|
||||||
*
|
*
|
||||||
* @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.
|
* @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.
|
||||||
* @param {string} url Absolute URL to where the plugin is located.
|
* @param {string} url Absolute URL to where the plugin is located.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
init : function(ed, url) {
|
init : function(ed, url) {
|
||||||
var t = this;
|
var t = this;
|
||||||
|
|
||||||
// Internet Explorer has built-in automatic linking
|
// Add a key down handler
|
||||||
if (tinyMCE.isIE)
|
ed.onKeyDown.addToTop(function(ed, e) {
|
||||||
return;
|
if (e.keyCode == 13)
|
||||||
|
return t.handleEnter(ed);
|
||||||
// Add a key down handler
|
});
|
||||||
ed.onKeyDown.add(function(ed, e) {
|
|
||||||
if (e.keyCode == 13)
|
// Internet Explorer has built-in automatic linking for most cases
|
||||||
return t.handleEnter(ed);
|
if (tinyMCE.isIE)
|
||||||
});
|
return;
|
||||||
|
|
||||||
ed.onKeyPress.add(function(ed, e) {
|
ed.onKeyPress.add(function(ed, e) {
|
||||||
if (e.which == 41)
|
if (e.which == 41)
|
||||||
return t.handleEclipse(ed);
|
return t.handleEclipse(ed);
|
||||||
});
|
});
|
||||||
|
|
||||||
// Add a key up handler
|
// Add a key up handler
|
||||||
ed.onKeyUp.add(function(ed, e) {
|
ed.onKeyUp.add(function(ed, e) {
|
||||||
if (e.keyCode == 32)
|
if (e.keyCode == 32)
|
||||||
return t.handleSpacebar(ed);
|
return t.handleSpacebar(ed);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
handleEclipse : function(ed) {
|
handleEclipse : function(ed) {
|
||||||
this.parseCurrentLine(ed, -1, '(', true);
|
this.parseCurrentLine(ed, -1, '(', true);
|
||||||
},
|
},
|
||||||
|
|
||||||
handleSpacebar : function(ed) {
|
handleSpacebar : function(ed) {
|
||||||
this.parseCurrentLine(ed, 0, '', true);
|
this.parseCurrentLine(ed, 0, '', true);
|
||||||
},
|
},
|
||||||
|
|
||||||
handleEnter : function(ed) {
|
handleEnter : function(ed) {
|
||||||
this.parseCurrentLine(ed, -1, '', false);
|
this.parseCurrentLine(ed, -1, '', false);
|
||||||
},
|
},
|
||||||
|
|
||||||
parseCurrentLine : function(ed, end_offset, delimiter, goback) {
|
parseCurrentLine : function(ed, end_offset, delimiter, goback) {
|
||||||
var r, end, start, endContainer, bookmark, text, matches, prev, len;
|
var r, end, start, endContainer, bookmark, text, matches, prev, len;
|
||||||
|
|
||||||
// We need at least five characters to form a URL,
|
// We need at least five characters to form a URL,
|
||||||
// hence, at minimum, five characters from the beginning of the line.
|
// hence, at minimum, five characters from the beginning of the line.
|
||||||
r = ed.selection.getRng().cloneRange();
|
r = ed.selection.getRng(true).cloneRange();
|
||||||
if (r.startOffset < 5) {
|
if (r.startOffset < 5) {
|
||||||
// During testing, the caret is placed inbetween two text nodes.
|
// During testing, the caret is placed inbetween two text nodes.
|
||||||
// The previous text node contains the URL.
|
// The previous text node contains the URL.
|
||||||
prev = r.endContainer.previousSibling;
|
prev = r.endContainer.previousSibling;
|
||||||
if (prev == null) {
|
if (prev == null) {
|
||||||
if (r.endContainer.firstChild == null || r.endContainer.firstChild.nextSibling == null)
|
if (r.endContainer.firstChild == null || r.endContainer.firstChild.nextSibling == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
prev = r.endContainer.firstChild.nextSibling;
|
prev = r.endContainer.firstChild.nextSibling;
|
||||||
}
|
}
|
||||||
len = prev.length;
|
len = prev.length;
|
||||||
r.setStart(prev, len);
|
r.setStart(prev, len);
|
||||||
r.setEnd(prev, len);
|
r.setEnd(prev, len);
|
||||||
|
|
||||||
if (r.endOffset < 5)
|
if (r.endOffset < 5)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
end = r.endOffset;
|
end = r.endOffset;
|
||||||
endContainer = prev;
|
endContainer = prev;
|
||||||
} else {
|
} else {
|
||||||
endContainer = r.endContainer;
|
endContainer = r.endContainer;
|
||||||
|
|
||||||
// Get a text node
|
// Get a text node
|
||||||
if (endContainer.nodeType != 3 && endContainer.firstChild) {
|
if (endContainer.nodeType != 3 && endContainer.firstChild) {
|
||||||
while (endContainer.nodeType != 3 && endContainer.firstChild)
|
while (endContainer.nodeType != 3 && endContainer.firstChild)
|
||||||
endContainer = endContainer.firstChild;
|
endContainer = endContainer.firstChild;
|
||||||
|
|
||||||
r.setStart(endContainer, 0);
|
r.setStart(endContainer, 0);
|
||||||
r.setEnd(endContainer, endContainer.nodeValue.length);
|
r.setEnd(endContainer, endContainer.nodeValue.length);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (r.endOffset == 1)
|
if (r.endOffset == 1)
|
||||||
end = 2;
|
end = 2;
|
||||||
else
|
else
|
||||||
end = r.endOffset - 1 - end_offset;
|
end = r.endOffset - 1 - end_offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
start = end;
|
start = end;
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
// Move the selection one character backwards.
|
// Move the selection one character backwards.
|
||||||
r.setStart(endContainer, end - 2);
|
r.setStart(endContainer, end - 2);
|
||||||
r.setEnd(endContainer, end - 1);
|
r.setEnd(endContainer, end - 1);
|
||||||
end -= 1;
|
end -= 1;
|
||||||
|
|
||||||
// Loop until one of the following is found: a blank space, , delimeter, (end-2) >= 0
|
// Loop until one of the following is found: a blank space, , delimeter, (end-2) >= 0
|
||||||
} while (r.toString() != ' ' && r.toString() != '' && r.toString().charCodeAt(0) != 160 && (end -2) >= 0 && r.toString() != delimiter);
|
} while (r.toString() != ' ' && r.toString() != '' && r.toString().charCodeAt(0) != 160 && (end -2) >= 0 && r.toString() != delimiter);
|
||||||
|
|
||||||
if (r.toString() == delimiter || r.toString().charCodeAt(0) == 160) {
|
if (r.toString() == delimiter || r.toString().charCodeAt(0) == 160) {
|
||||||
r.setStart(endContainer, end);
|
r.setStart(endContainer, end);
|
||||||
r.setEnd(endContainer, start);
|
r.setEnd(endContainer, start);
|
||||||
end += 1;
|
end += 1;
|
||||||
} else if (r.startOffset == 0) {
|
} else if (r.startOffset == 0) {
|
||||||
r.setStart(endContainer, 0);
|
r.setStart(endContainer, 0);
|
||||||
r.setEnd(endContainer, start);
|
r.setEnd(endContainer, start);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
r.setStart(endContainer, end);
|
r.setStart(endContainer, end);
|
||||||
r.setEnd(endContainer, start);
|
r.setEnd(endContainer, start);
|
||||||
}
|
}
|
||||||
|
|
||||||
text = r.toString();
|
// Exclude last . from word like "www.site.com."
|
||||||
matches = text.match(/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|[A-Z0-9._%+-]+@)(.+)$/i);
|
var text = r.toString();
|
||||||
|
if (text.charAt(text.length - 1) == '.') {
|
||||||
if (matches) {
|
r.setEnd(endContainer, start - 1);
|
||||||
if (matches[1] == 'www.') {
|
}
|
||||||
matches[1] = 'http://www.';
|
|
||||||
} else if (/@$/.test(matches[1])) {
|
text = r.toString();
|
||||||
matches[1] = 'mailto:' + matches[1];
|
matches = text.match(/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|[A-Z0-9._%+-]+@)(.+)$/i);
|
||||||
}
|
|
||||||
|
if (matches) {
|
||||||
bookmark = ed.selection.getBookmark();
|
if (matches[1] == 'www.') {
|
||||||
|
matches[1] = 'http://www.';
|
||||||
ed.selection.setRng(r);
|
} else if (/@$/.test(matches[1])) {
|
||||||
tinyMCE.execCommand('createlink',false, matches[1] + matches[2]);
|
matches[1] = 'mailto:' + matches[1];
|
||||||
ed.selection.moveToBookmark(bookmark);
|
}
|
||||||
|
|
||||||
// TODO: Determine if this is still needed.
|
bookmark = ed.selection.getBookmark();
|
||||||
if (tinyMCE.isWebKit) {
|
|
||||||
// move the caret to its original position
|
ed.selection.setRng(r);
|
||||||
ed.selection.collapse(false);
|
tinyMCE.execCommand('createlink',false, matches[1] + matches[2]);
|
||||||
var max = Math.min(endContainer.length, start + 1);
|
ed.selection.moveToBookmark(bookmark);
|
||||||
r.setStart(endContainer, max);
|
|
||||||
r.setEnd(endContainer, max);
|
// TODO: Determine if this is still needed.
|
||||||
ed.selection.setRng(r);
|
if (tinyMCE.isWebKit) {
|
||||||
}
|
// move the caret to its original position
|
||||||
}
|
ed.selection.collapse(false);
|
||||||
},
|
var max = Math.min(endContainer.length, start + 1);
|
||||||
|
r.setStart(endContainer, max);
|
||||||
/**
|
r.setEnd(endContainer, max);
|
||||||
* Returns information about the plugin as a name/value array.
|
ed.selection.setRng(r);
|
||||||
* The current keys are longname, author, authorurl, infourl and version.
|
}
|
||||||
*
|
}
|
||||||
* @return {Object} Name/value array containing information about the plugin.
|
},
|
||||||
*/
|
|
||||||
getInfo : function() {
|
/**
|
||||||
return {
|
* Returns information about the plugin as a name/value array.
|
||||||
longname : 'Autolink',
|
* The current keys are longname, author, authorurl, infourl and version.
|
||||||
author : 'Moxiecode Systems AB',
|
*
|
||||||
authorurl : 'http://tinymce.moxiecode.com',
|
* @return {Object} Name/value array containing information about the plugin.
|
||||||
infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autolink',
|
*/
|
||||||
version : tinymce.majorVersion + "." + tinymce.minorVersion
|
getInfo : function() {
|
||||||
};
|
return {
|
||||||
}
|
longname : 'Autolink',
|
||||||
});
|
author : 'Moxiecode Systems AB',
|
||||||
|
authorurl : 'http://tinymce.moxiecode.com',
|
||||||
// Register plugin
|
infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autolink',
|
||||||
tinymce.PluginManager.add('autolink', tinymce.plugins.AutolinkPlugin);
|
version : tinymce.majorVersion + "." + tinymce.minorVersion
|
||||||
})();
|
};
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Register plugin
|
||||||
|
tinymce.PluginManager.add('autolink', tinymce.plugins.AutolinkPlugin);
|
||||||
|
})();
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.FullScreenPlugin",{init:function(d,e){var f=this,g={},c,b;f.editor=d;d.addCommand("mceFullScreen",function(){var i,j=a.doc.documentElement;if(d.getParam("fullscreen_is_enabled")){if(d.getParam("fullscreen_new_window")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,"resize",f.resizeFunc);tinyMCE.get(d.getParam("fullscreen_editor_id")).setContent(d.getContent());tinyMCE.remove(d);a.remove("mce_fullscreen_container");j.style.overflow=d.getParam("fullscreen_html_overflow");a.setStyle(a.doc.body,"overflow",d.getParam("fullscreen_overflow"));a.win.scrollTo(d.getParam("fullscreen_scrollx"),d.getParam("fullscreen_scrolly"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(d.getParam("fullscreen_new_window")){i=a.win.open(e+"/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{i.resizeTo(screen.availWidth,screen.availHeight)}catch(h){}}else{tinyMCE.oldSettings=tinyMCE.settings;g.fullscreen_overflow=a.getStyle(a.doc.body,"overflow",1)||"auto";g.fullscreen_html_overflow=a.getStyle(j,"overflow",1);c=a.getViewPort();g.fullscreen_scrollx=c.x;g.fullscreen_scrolly=c.y;if(tinymce.isOpera&&g.fullscreen_overflow=="visible"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&g.fullscreen_overflow=="scroll"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&(g.fullscreen_html_overflow=="visible"||g.fullscreen_html_overflow=="scroll")){g.fullscreen_html_overflow="auto"}if(g.fullscreen_overflow=="0px"){g.fullscreen_overflow=""}a.setStyle(a.doc.body,"overflow","hidden");j.style.overflow="hidden";c=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){c.h-=1}if(tinymce.isIE6){b="absolute;top:"+c.y}else{b="fixed;top:0"}n=a.add(a.doc.body,"div",{id:"mce_fullscreen_container",style:"position:"+b+";left:0;width:"+c.w+"px;height:"+c.h+"px;z-index:200000;"});a.add(n,"div",{id:"mce_fullscreen"});tinymce.each(d.settings,function(k,l){g[l]=k});g.id="mce_fullscreen";g.width=n.clientWidth;g.height=n.clientHeight-15;g.fullscreen_is_enabled=true;g.fullscreen_editor_id=d.id;g.theme_advanced_resizing=false;g.save_onsavecallback=function(){d.setContent(tinyMCE.get(g.id).getContent());d.execCommand("mceSave")};tinymce.each(d.getParam("fullscreen_settings"),function(m,l){g[l]=m});if(g.theme_advanced_toolbar_location==="external"){g.theme_advanced_toolbar_location="top"}f.fullscreenEditor=new tinymce.Editor("mce_fullscreen",g);f.fullscreenEditor.onInit.add(function(){f.fullscreenEditor.setContent(d.getContent());f.fullscreenEditor.focus()});f.fullscreenEditor.render();f.fullscreenElement=new tinymce.dom.Element("mce_fullscreen_container");f.fullscreenElement.update();f.resizeFunc=tinymce.dom.Event.add(a.win,"resize",function(){var o=tinymce.DOM.getViewPort(),l=f.fullscreenEditor,k,m;k=l.dom.getSize(l.getContainer().firstChild);m=l.dom.getSize(l.getContainer().getElementsByTagName("iframe")[0]);l.theme.resizeTo(o.w-k.w+m.w,o.h-k.h+m.h)})}});d.addButton("fullscreen",{title:"fullscreen.desc",cmd:"mceFullScreen"});d.onNodeChange.add(function(i,h){h.setActive("fullscreen",i.getParam("fullscreen_is_enabled"))})},getInfo:function(){return{longname:"Fullscreen",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("fullscreen",tinymce.plugins.FullScreenPlugin)})();
|
(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.FullScreenPlugin",{init:function(d,e){var f=this,g={},c,b;f.editor=d;d.addCommand("mceFullScreen",function(){var i,j=a.doc.documentElement;if(d.getParam("fullscreen_is_enabled")){if(d.getParam("fullscreen_new_window")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,"resize",f.resizeFunc);tinyMCE.get(d.getParam("fullscreen_editor_id")).setContent(d.getContent());tinyMCE.remove(d);a.remove("mce_fullscreen_container");j.style.overflow=d.getParam("fullscreen_html_overflow");a.setStyle(a.doc.body,"overflow",d.getParam("fullscreen_overflow"));a.win.scrollTo(d.getParam("fullscreen_scrollx"),d.getParam("fullscreen_scrolly"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(d.getParam("fullscreen_new_window")){i=a.win.open(e+"/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{i.resizeTo(screen.availWidth,screen.availHeight)}catch(h){}}else{tinyMCE.oldSettings=tinyMCE.settings;g.fullscreen_overflow=a.getStyle(a.doc.body,"overflow",1)||"auto";g.fullscreen_html_overflow=a.getStyle(j,"overflow",1);c=a.getViewPort();g.fullscreen_scrollx=c.x;g.fullscreen_scrolly=c.y;if(tinymce.isOpera&&g.fullscreen_overflow=="visible"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&g.fullscreen_overflow=="scroll"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&(g.fullscreen_html_overflow=="visible"||g.fullscreen_html_overflow=="scroll")){g.fullscreen_html_overflow="auto"}if(g.fullscreen_overflow=="0px"){g.fullscreen_overflow=""}a.setStyle(a.doc.body,"overflow","hidden");j.style.overflow="hidden";c=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){c.h-=1}if(tinymce.isIE6||document.compatMode=="BackCompat"){b="absolute;top:"+c.y}else{b="fixed;top:0"}n=a.add(a.doc.body,"div",{id:"mce_fullscreen_container",style:"position:"+b+";left:0;width:"+c.w+"px;height:"+c.h+"px;z-index:200000;"});a.add(n,"div",{id:"mce_fullscreen"});tinymce.each(d.settings,function(k,l){g[l]=k});g.id="mce_fullscreen";g.width=n.clientWidth;g.height=n.clientHeight-15;g.fullscreen_is_enabled=true;g.fullscreen_editor_id=d.id;g.theme_advanced_resizing=false;g.save_onsavecallback=function(){d.setContent(tinyMCE.get(g.id).getContent());d.execCommand("mceSave")};tinymce.each(d.getParam("fullscreen_settings"),function(m,l){g[l]=m});if(g.theme_advanced_toolbar_location==="external"){g.theme_advanced_toolbar_location="top"}f.fullscreenEditor=new tinymce.Editor("mce_fullscreen",g);f.fullscreenEditor.onInit.add(function(){f.fullscreenEditor.setContent(d.getContent());f.fullscreenEditor.focus()});f.fullscreenEditor.render();f.fullscreenElement=new tinymce.dom.Element("mce_fullscreen_container");f.fullscreenElement.update();f.resizeFunc=tinymce.dom.Event.add(a.win,"resize",function(){var o=tinymce.DOM.getViewPort(),l=f.fullscreenEditor,k,m;k=l.dom.getSize(l.getContainer().firstChild);m=l.dom.getSize(l.getContainer().getElementsByTagName("iframe")[0]);l.theme.resizeTo(o.w-k.w+m.w,o.h-k.h+m.h)})}});d.addButton("fullscreen",{title:"fullscreen.desc",cmd:"mceFullScreen"});d.onNodeChange.add(function(i,h){h.setActive("fullscreen",i.getParam("fullscreen_is_enabled"))})},getInfo:function(){return{longname:"Fullscreen",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("fullscreen",tinymce.plugins.FullScreenPlugin)})();
|
|
@ -79,7 +79,7 @@
|
||||||
vp.h -= 1;
|
vp.h -= 1;
|
||||||
|
|
||||||
// Use fixed position if it exists
|
// Use fixed position if it exists
|
||||||
if (tinymce.isIE6)
|
if (tinymce.isIE6 || document.compatMode == 'BackCompat')
|
||||||
posCss = 'absolute;top:' + vp.y;
|
posCss = 'absolute;top:' + vp.y;
|
||||||
else
|
else
|
||||||
posCss = 'fixed;top:0';
|
posCss = 'fixed;top:0';
|
||||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
|
@ -261,12 +261,96 @@
|
||||||
selection.collapse(start);
|
selection.collapse(start);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function canDelete(backspace) {
|
||||||
|
var rng, container, offset, nonEditableParent;
|
||||||
|
|
||||||
|
function removeNodeIfNotParent(node) {
|
||||||
|
var parent = container;
|
||||||
|
|
||||||
|
while (parent) {
|
||||||
|
if (parent === node) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
parent = parent.parentNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
dom.remove(node);
|
||||||
|
moveSelection();
|
||||||
|
}
|
||||||
|
|
||||||
|
function isNextPrevTreeNodeNonEditable() {
|
||||||
|
var node, walker, nonEmptyElements = ed.schema.getNonEmptyElements();
|
||||||
|
|
||||||
|
walker = new tinymce.dom.TreeWalker(container, ed.getBody());
|
||||||
|
while (node = (backspace ? walker.prev() : walker.next())) {
|
||||||
|
// Found IMG/INPUT etc
|
||||||
|
if (nonEmptyElements[node.nodeName.toLowerCase()]) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Found text node with contents
|
||||||
|
if (node.nodeType === 3 && tinymce.trim(node.nodeValue).length > 0) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Found non editable node
|
||||||
|
if (getContentEditable(node) === "false") {
|
||||||
|
removeNodeIfNotParent(node);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if the content node is within a non editable parent
|
||||||
|
if (getNonEditableParent(node)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (selection.isCollapsed()) {
|
||||||
|
rng = selection.getRng(true);
|
||||||
|
container = rng.startContainer;
|
||||||
|
offset = rng.startOffset;
|
||||||
|
container = getParentCaretContainer(container) || container;
|
||||||
|
|
||||||
|
// Is in noneditable parent
|
||||||
|
if (nonEditableParent = getNonEditableParent(container)) {
|
||||||
|
removeNodeIfNotParent(nonEditableParent);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if the caret is in the middle of a text node
|
||||||
|
if (container.nodeType == 3 && (backspace ? offset > 0 : offset < container.nodeValue.length)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Resolve container index
|
||||||
|
if (container.nodeType == 1) {
|
||||||
|
container = container.childNodes[offset] || container;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if previous or next tree node is non editable then block the event
|
||||||
|
if (isNextPrevTreeNodeNonEditable()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
startElement = selection.getStart()
|
startElement = selection.getStart()
|
||||||
endElement = selection.getEnd();
|
endElement = selection.getEnd();
|
||||||
|
|
||||||
// Disable all key presses in contentEditable=false except delete or backspace
|
// Disable all key presses in contentEditable=false except delete or backspace
|
||||||
nonEditableParent = getNonEditableParent(startElement) || getNonEditableParent(endElement);
|
nonEditableParent = getNonEditableParent(startElement) || getNonEditableParent(endElement);
|
||||||
if (nonEditableParent && (keyCode < 112 || keyCode > 124) && keyCode != VK.DELETE && keyCode != VK.BACKSPACE) {
|
if (nonEditableParent && (keyCode < 112 || keyCode > 124) && keyCode != VK.DELETE && keyCode != VK.BACKSPACE) {
|
||||||
|
// Is Ctrl+c, Ctrl+v or Ctrl+x then use default browser behavior
|
||||||
|
if ((tinymce.isMac ? e.metaKey : e.ctrlKey) && (keyCode == 67 || keyCode == 88 || keyCode == 86)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
|
||||||
// Arrow left/right select the element and collapse left/right
|
// Arrow left/right select the element and collapse left/right
|
||||||
|
@ -298,6 +382,7 @@
|
||||||
positionCaretOnElement(nonEditableParent, true);
|
positionCaretOnElement(nonEditableParent, true);
|
||||||
} else {
|
} else {
|
||||||
dom.remove(nonEditableParent);
|
dom.remove(nonEditableParent);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
removeCaretContainer(caretContainer);
|
removeCaretContainer(caretContainer);
|
||||||
|
@ -315,23 +400,31 @@
|
||||||
positionCaretOnElement(nonEditableParent, false);
|
positionCaretOnElement(nonEditableParent, false);
|
||||||
} else {
|
} else {
|
||||||
dom.remove(nonEditableParent);
|
dom.remove(nonEditableParent);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
removeCaretContainer(caretContainer);
|
removeCaretContainer(caretContainer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((keyCode == VK.BACKSPACE || keyCode == VK.DELETE) && !canDelete(keyCode == VK.BACKSPACE)) {
|
||||||
|
e.preventDefault();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
ed.onMouseDown.addToTop(function(ed, e){
|
ed.onMouseDown.addToTop(function(ed, e) {
|
||||||
// prevent collapsing selection to caret when clicking in a non-editable section
|
|
||||||
var node = ed.selection.getNode();
|
var node = ed.selection.getNode();
|
||||||
|
|
||||||
if (getContentEditable(node) === "false" && node == e.target) {
|
if (getContentEditable(node) === "false" && node == e.target) {
|
||||||
e.preventDefault();
|
// Expand selection on mouse down we can't block the default event since it's used for drag/drop
|
||||||
|
moveSelection();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
ed.onMouseUp.addToTop(moveSelection);
|
ed.onMouseUp.addToTop(moveSelection);
|
||||||
ed.onKeyDown.addToTop(handleKey);
|
ed.onKeyDown.addToTop(handleKey);
|
||||||
ed.onKeyUp.addToTop(moveSelection);
|
ed.onKeyUp.addToTop(moveSelection);
|
||||||
|
@ -341,6 +434,31 @@
|
||||||
init : function(ed, url) {
|
init : function(ed, url) {
|
||||||
var editClass, nonEditClass, nonEditableRegExps;
|
var editClass, nonEditClass, nonEditableRegExps;
|
||||||
|
|
||||||
|
// Converts configured regexps to noneditable span items
|
||||||
|
function convertRegExpsToNonEditable(ed, args) {
|
||||||
|
var i = nonEditableRegExps.length, content = args.content, cls = tinymce.trim(nonEditClass);
|
||||||
|
|
||||||
|
// Don't replace the variables when raw is used for example on undo/redo
|
||||||
|
if (args.format == "raw") {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (i--) {
|
||||||
|
content = content.replace(nonEditableRegExps[i], function(match) {
|
||||||
|
var args = arguments, index = args[args.length - 2];
|
||||||
|
|
||||||
|
// Is value inside an attribute then don't replace
|
||||||
|
if (index > 0 && content.charAt(index - 1) == '"') {
|
||||||
|
return match;
|
||||||
|
}
|
||||||
|
|
||||||
|
return '<span class="' + cls + '" data-mce-content="' + ed.dom.encode(args[0]) + '">' + ed.dom.encode(typeof(args[1]) === "string" ? args[1] : args[0]) + '</span>';
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
args.content = content;
|
||||||
|
};
|
||||||
|
|
||||||
editClass = " " + tinymce.trim(ed.getParam("noneditable_editable_class", "mceEditable")) + " ";
|
editClass = " " + tinymce.trim(ed.getParam("noneditable_editable_class", "mceEditable")) + " ";
|
||||||
nonEditClass = " " + tinymce.trim(ed.getParam("noneditable_noneditable_class", "mceNonEditable")) + " ";
|
nonEditClass = " " + tinymce.trim(ed.getParam("noneditable_noneditable_class", "mceNonEditable")) + " ";
|
||||||
|
|
||||||
|
@ -354,26 +472,10 @@
|
||||||
handleContentEditableSelection(ed);
|
handleContentEditableSelection(ed);
|
||||||
|
|
||||||
if (nonEditableRegExps) {
|
if (nonEditableRegExps) {
|
||||||
ed.onBeforeSetContent.add(function(ed, args) {
|
ed.selection.onBeforeSetContent.add(convertRegExpsToNonEditable);
|
||||||
var i = nonEditableRegExps.length, content = args.content, cls = tinymce.trim(nonEditClass);
|
ed.onBeforeSetContent.add(convertRegExpsToNonEditable);
|
||||||
|
|
||||||
// Don't replace the variables when raw is used for example on undo/redo
|
|
||||||
if (args.format == "raw") {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
while (i--) {
|
|
||||||
content = content.replace(nonEditableRegExps[i], function() {
|
|
||||||
var args = arguments;
|
|
||||||
|
|
||||||
return '<span class="' + cls + '" data-mce-content="' + ed.dom.encode(args[0]) + '">' + ed.dom.encode(typeof(args[1]) === "string" ? args[1] : args[0]) + '</span>';
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
args.content = content;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Apply contentEditable true/false on elements with the noneditable/editable classes
|
// Apply contentEditable true/false on elements with the noneditable/editable classes
|
||||||
ed.parser.addAttributeFilter('class', function(nodes) {
|
ed.parser.addAttributeFilter('class', function(nodes) {
|
||||||
var i = nodes.length, className, node;
|
var i = nodes.length, className, node;
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -359,7 +359,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
// IE9 adds BRs before/after block elements when contents is pasted from word or for example another browser
|
// IE9 adds BRs before/after block elements when contents is pasted from word or for example another browser
|
||||||
if (tinymce.isIE && document.documentMode >= 9) {
|
if (tinymce.isIE && document.documentMode >= 9 && /<(h[1-6r]|p|div|address|pre|form|table|tbody|thead|tfoot|th|tr|td|li|ol|ul|caption|blockquote|center|dl|dt|dd|dir|fieldset)/.test(o.content)) {
|
||||||
// IE9 adds BRs before/after block elements when contents is pasted from word or for example another browser
|
// IE9 adds BRs before/after block elements when contents is pasted from word or for example another browser
|
||||||
process([[/(?:<br> [\s\r\n]+|<br>)*(<\/?(h[1-6r]|p|div|address|pre|form|table|tbody|thead|tfoot|th|tr|td|li|ol|ul|caption|blockquote|center|dl|dt|dd|dir|fieldset)[^>]*>)(?:<br> [\s\r\n]+|<br>)*/g, '$1']]);
|
process([[/(?:<br> [\s\r\n]+|<br>)*(<\/?(h[1-6r]|p|div|address|pre|form|table|tbody|thead|tfoot|th|tr|td|li|ol|ul|caption|blockquote|center|dl|dt|dd|dir|fieldset)[^>]*>)(?:<br> [\s\r\n]+|<br>)*/g, '$1']]);
|
||||||
|
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
(function(){var c=tinymce.DOM,a=tinymce.dom.Event,d=tinymce.each,b=tinymce.explode;tinymce.create("tinymce.plugins.TabFocusPlugin",{init:function(f,g){function e(i,j){if(j.keyCode===9){return a.cancel(j)}}function h(l,p){var j,m,o,n,k;function q(t){n=c.select(":input:enabled,*[tabindex]");function s(v){return v.nodeName==="BODY"||(v.type!="hidden"&&!(v.style.display=="none")&&!(v.style.visibility=="hidden")&&s(v.parentNode))}function i(v){return v.attributes.tabIndex.specified||v.nodeName=="INPUT"||v.nodeName=="TEXTAREA"}function u(){return tinymce.isIE6||tinymce.isIE7}function r(v){return((!u()||i(v)))&&v.getAttribute("tabindex")!="-1"&&s(v)}d(n,function(w,v){if(w.id==l.id){j=v;return false}});if(t>0){for(m=j+1;m<n.length;m++){if(r(n[m])){return n[m]}}}else{for(m=j-1;m>=0;m--){if(r(n[m])){return n[m]}}}return null}if(p.keyCode===9){k=b(l.getParam("tab_focus",l.getParam("tabfocus_elements",":prev,:next")));if(k.length==1){k[1]=k[0];k[0]=":prev"}if(p.shiftKey){if(k[0]==":prev"){n=q(-1)}else{n=c.get(k[0])}}else{if(k[1]==":next"){n=q(1)}else{n=c.get(k[1])}}if(n){if(n.id&&(l=tinymce.get(n.id||n.name))){l.focus()}else{window.setTimeout(function(){if(!tinymce.isWebKit){window.focus()}n.focus()},10)}return a.cancel(p)}}}f.onKeyUp.add(e);if(tinymce.isGecko){f.onKeyPress.add(h);f.onKeyDown.add(e)}else{f.onKeyDown.add(h)}},getInfo:function(){return{longname:"Tabfocus",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("tabfocus",tinymce.plugins.TabFocusPlugin)})();
|
(function(){var c=tinymce.DOM,a=tinymce.dom.Event,d=tinymce.each,b=tinymce.explode;tinymce.create("tinymce.plugins.TabFocusPlugin",{init:function(f,g){function e(i,j){if(j.keyCode===9){return a.cancel(j)}}function h(l,p){var j,m,o,n,k;function q(t){n=c.select(":input:enabled,*[tabindex]:not(iframe)");function s(v){return v.nodeName==="BODY"||(v.type!="hidden"&&!(v.style.display=="none")&&!(v.style.visibility=="hidden")&&s(v.parentNode))}function i(v){return v.attributes.tabIndex.specified||v.nodeName=="INPUT"||v.nodeName=="TEXTAREA"}function u(){return tinymce.isIE6||tinymce.isIE7}function r(v){return((!u()||i(v)))&&v.getAttribute("tabindex")!="-1"&&s(v)}d(n,function(w,v){if(w.id==l.id){j=v;return false}});if(t>0){for(m=j+1;m<n.length;m++){if(r(n[m])){return n[m]}}}else{for(m=j-1;m>=0;m--){if(r(n[m])){return n[m]}}}return null}if(p.keyCode===9){k=b(l.getParam("tab_focus",l.getParam("tabfocus_elements",":prev,:next")));if(k.length==1){k[1]=k[0];k[0]=":prev"}if(p.shiftKey){if(k[0]==":prev"){n=q(-1)}else{n=c.get(k[0])}}else{if(k[1]==":next"){n=q(1)}else{n=c.get(k[1])}}if(n){if(n.id&&(l=tinymce.get(n.id||n.name))){l.focus()}else{window.setTimeout(function(){if(!tinymce.isWebKit){window.focus()}n.focus()},10)}return a.cancel(p)}}}f.onKeyUp.add(e);if(tinymce.isGecko){f.onKeyPress.add(h);f.onKeyDown.add(e)}else{f.onKeyDown.add(h)}},getInfo:function(){return{longname:"Tabfocus",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("tabfocus",tinymce.plugins.TabFocusPlugin)})();
|
|
@ -22,7 +22,7 @@
|
||||||
var x, i, f, el, v;
|
var x, i, f, el, v;
|
||||||
|
|
||||||
function find(d) {
|
function find(d) {
|
||||||
el = DOM.select(':input:enabled,*[tabindex]');
|
el = DOM.select(':input:enabled,*[tabindex]:not(iframe)');
|
||||||
|
|
||||||
function canSelectRecursive(e) {
|
function canSelectRecursive(e) {
|
||||||
return e.nodeName==="BODY" || (e.type != 'hidden' &&
|
return e.nodeName==="BODY" || (e.type != 'hidden' &&
|
||||||
|
|
|
@ -137,7 +137,7 @@ function updateAction() {
|
||||||
do {
|
do {
|
||||||
if (cell == tdElm)
|
if (cell == tdElm)
|
||||||
break;
|
break;
|
||||||
col += cell.getAttribute("colspan");
|
col += cell.getAttribute("colspan")?cell.getAttribute("colspan"):1;
|
||||||
} while ((cell = nextCell(cell)) != null);
|
} while ((cell = nextCell(cell)) != null);
|
||||||
|
|
||||||
for (var i=0; i<rows.length; i++) {
|
for (var i=0; i<rows.length; i++) {
|
||||||
|
@ -152,7 +152,7 @@ function updateAction() {
|
||||||
cell = updateCell(cell, true);
|
cell = updateCell(cell, true);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
curr += cell.getAttribute("colspan");
|
curr += cell.getAttribute("colspan")?cell.getAttribute("colspan"):1;
|
||||||
} while ((cell = nextCell(cell)) != null);
|
} while ((cell = nextCell(cell)) != null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
p, h1, h2, h3, h4, h5, h6, hgroup, aside, div, section, article, blockquote, address, pre {display: block; padding-top: 10px; border: 1px dashed #BBB; background: transparent no-repeat}
|
p, h1, h2, h3, h4, h5, h6, hgroup, aside, div, section, article, blockquote, address, pre, figure {display: block; padding-top: 10px; border: 1px dashed #BBB; background: transparent no-repeat}
|
||||||
p, h1, h2, h3, h4, h5, h6, hgroup, aside, div, section, article, address, pre {margin-left: 3px}
|
p, h1, h2, h3, h4, h5, h6, hgroup, aside, div, section, article, address, pre, figure {margin-left: 3px}
|
||||||
section, article, address, hgroup, aside {margin: 1em 0 0 3px}
|
section, article, address, hgroup, aside, figure {margin: 0 0 1em 3px}
|
||||||
|
|
||||||
p {background-image: url(data:image/gif;base64,R0lGODlhCQAJAJEAAAAAAP///7u7u////yH5BAEAAAMALAAAAAAJAAkAAAIQnG+CqCN/mlyvsRUpThG6AgA7)}
|
p {background-image: url(data:image/gif;base64,R0lGODlhCQAJAJEAAAAAAP///7u7u////yH5BAEAAAMALAAAAAAJAAkAAAIQnG+CqCN/mlyvsRUpThG6AgA7)}
|
||||||
h1 {background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGu1JuxHoAfRNRW3TWXyF2YiRUAOw==)}
|
h1 {background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGu1JuxHoAfRNRW3TWXyF2YiRUAOw==)}
|
||||||
|
@ -17,3 +17,5 @@ address {background-image: url(data:image/gif;base64,R0lGODlhLQAKAIABALu7u////yH
|
||||||
pre {background-image: url(data:image/gif;base64,R0lGODlhFQAKAIABALu7uwAAACH5BAEAAAEALAAAAAAVAAoAAAIjjI+ZoN0cgDwSmnpz1NCueYERhnibZVKLNnbOq8IvKpJtVQAAOw==)}
|
pre {background-image: url(data:image/gif;base64,R0lGODlhFQAKAIABALu7uwAAACH5BAEAAAEALAAAAAAVAAoAAAIjjI+ZoN0cgDwSmnpz1NCueYERhnibZVKLNnbOq8IvKpJtVQAAOw==)}
|
||||||
hgroup {background-image: url(data:image/gif;base64,R0lGODlhJwAKAIABALu7uwAAACH5BAEAAAEALAAAAAAnAAoAAAI3jI+pywYNI3uB0gpsRtt5fFnfNZaVSYJil4Wo03Hv6Z62uOCgiXH1kZIIJ8NiIxRrAZNMZAtQAAA7)}
|
hgroup {background-image: url(data:image/gif;base64,R0lGODlhJwAKAIABALu7uwAAACH5BAEAAAEALAAAAAAnAAoAAAI3jI+pywYNI3uB0gpsRtt5fFnfNZaVSYJil4Wo03Hv6Z62uOCgiXH1kZIIJ8NiIxRrAZNMZAtQAAA7)}
|
||||||
aside {background-image: url(data:image/gif;base64,R0lGODlhHgAKAIABAKqqqv///yH5BAEAAAEALAAAAAAeAAoAAAItjI+pG8APjZOTzgtqy7I3f1yehmQcFY4WKZbqByutmW4aHUd6vfcVbgudgpYCADs=)}
|
aside {background-image: url(data:image/gif;base64,R0lGODlhHgAKAIABAKqqqv///yH5BAEAAAEALAAAAAAeAAoAAAItjI+pG8APjZOTzgtqy7I3f1yehmQcFY4WKZbqByutmW4aHUd6vfcVbgudgpYCADs=)}
|
||||||
|
figure {background-image: url(data:image/gif;base64,R0lGODlhJAAKAIAAALu7u////yH5BAEAAAEALAAAAAAkAAoAAAI0jI+py+2fwAHUSFvD3RlvG4HIp4nX5JFSpnZUJ6LlrM52OE7uSWosBHScgkSZj7dDKnWAAgA7)}
|
||||||
|
figcaption {border: 1px dashed #BBB}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
(function(){tinymce.create("tinymce.plugins.VisualBlocks",{init:function(a,b){var c;if(!window.NodeList){return}a.addCommand("mceVisualBlocks",function(){var e=a.dom,d;if(!c){c=e.uniqueId();d=e.create("link",{id:c,rel:"stylesheet",href:b+"/css/visualblocks.css"});a.getDoc().getElementsByTagName("head")[0].appendChild(d)}else{d=e.get(c);d.disabled=!d.disabled}a.controlManager.setActive("visualblocks",!d.disabled)});a.addButton("visualblocks",{title:"visualblocks.desc",cmd:"mceVisualBlocks"});a.onInit.add(function(){if(a.settings.visualblocks_default_state){a.execCommand("mceVisualBlocks")}})},getInfo:function(){return{longname:"Visual blocks",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualblocks",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("visualblocks",tinymce.plugins.VisualBlocks)})();
|
(function(){tinymce.create("tinymce.plugins.VisualBlocks",{init:function(a,b){var c;if(!window.NodeList){return}a.addCommand("mceVisualBlocks",function(){var e=a.dom,d;if(!c){c=e.uniqueId();d=e.create("link",{id:c,rel:"stylesheet",href:b+"/css/visualblocks.css"});a.getDoc().getElementsByTagName("head")[0].appendChild(d)}else{d=e.get(c);d.disabled=!d.disabled}a.controlManager.setActive("visualblocks",!d.disabled)});a.addButton("visualblocks",{title:"visualblocks.desc",cmd:"mceVisualBlocks"});a.onInit.add(function(){if(a.settings.visualblocks_default_state){a.execCommand("mceVisualBlocks",false,null,{skip_focus:true})}})},getInfo:function(){return{longname:"Visual blocks",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualblocks",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("visualblocks",tinymce.plugins.VisualBlocks)})();
|
|
@ -42,7 +42,7 @@
|
||||||
|
|
||||||
ed.onInit.add(function() {
|
ed.onInit.add(function() {
|
||||||
if (ed.settings.visualblocks_default_state) {
|
if (ed.settings.visualblocks_default_state) {
|
||||||
ed.execCommand('mceVisualBlocks');
|
ed.execCommand('mceVisualBlocks', false, null, {skip_focus : true});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
|
@ -62,12 +62,8 @@
|
||||||
|
|
||||||
<div class="mceActionPanel">
|
<div class="mceActionPanel">
|
||||||
<input type="submit" id="insert" name="insert" value="{#apply}" />
|
<input type="submit" id="insert" name="insert" value="{#apply}" />
|
||||||
|
<input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();"/>
|
||||||
<div id="preview"></div>
|
<div id="preview_wrapper"><div id="previewblock"><label for="color">{#advanced_dlg.colorpicker_color}</label> <input id="color" type="text" size="8" class="text mceFocus" aria-required="true" /></div><span id="preview"></span></div>
|
||||||
|
|
||||||
<div id="previewblock">
|
|
||||||
<label for="color">{#advanced_dlg.colorpicker_color}</label> <input id="color" type="text" size="8" class="text mceFocus" aria-required="true" />
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</body>
|
</body>
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -69,6 +69,16 @@
|
||||||
each(previewStyles.split(' '), function(name) {
|
each(previewStyles.split(' '), function(name) {
|
||||||
var value = dom.getStyle(previewElm, name, true);
|
var value = dom.getStyle(previewElm, name, true);
|
||||||
|
|
||||||
|
// If background is transparent then check if the body has a background color we can use
|
||||||
|
if (name == 'background-color' && /transparent|rgba\s*\([^)]+,\s*0\)/.test(value)) {
|
||||||
|
value = dom.getStyle(ed.getBody(), name, true);
|
||||||
|
|
||||||
|
// Ignore white since it's the default color, not the nicest fix
|
||||||
|
if (dom.toHex(value).toLowerCase() == '#ffffff') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Old IE won't calculate the font size so we need to do that manually
|
// Old IE won't calculate the font size so we need to do that manually
|
||||||
if (name == 'font-size') {
|
if (name == 'font-size') {
|
||||||
if (/em|%$/.test(value)) {
|
if (/em|%$/.test(value)) {
|
||||||
|
@ -608,7 +618,7 @@
|
||||||
|
|
||||||
// TODO: ACC Should have an aria-describedby attribute which is user-configurable to describe what this field is actually for.
|
// TODO: ACC Should have an aria-describedby attribute which is user-configurable to describe what this field is actually for.
|
||||||
// Maybe actually inherit it from the original textara?
|
// Maybe actually inherit it from the original textara?
|
||||||
n = p = DOM.create('span', {role : 'application', 'aria-labelledby' : ed.id + '_voice', id : ed.id + '_parent', 'class' : 'mceEditor ' + ed.settings.skin + 'Skin' + (s.skin_variant ? ' ' + ed.settings.skin + 'Skin' + t._ufirst(s.skin_variant) : '')});
|
n = p = DOM.create('span', {role : 'application', 'aria-labelledby' : ed.id + '_voice', id : ed.id + '_parent', 'class' : 'mceEditor ' + ed.settings.skin + 'Skin' + (s.skin_variant ? ' ' + ed.settings.skin + 'Skin' + t._ufirst(s.skin_variant) : '') + (ed.settings.directionality == "rtl" ? ' mceRtl' : '')});
|
||||||
DOM.add(n, 'span', {'class': 'mceVoiceLabel', 'style': 'display:none;', id: ed.id + '_voice'}, s.aria_label);
|
DOM.add(n, 'span', {'class': 'mceVoiceLabel', 'style': 'display:none;', id: ed.id + '_voice'}, s.aria_label);
|
||||||
|
|
||||||
if (!DOM.boxModel)
|
if (!DOM.boxModel)
|
||||||
|
@ -925,7 +935,7 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
_addToolbars : function(c, o) {
|
_addToolbars : function(c, o) {
|
||||||
var t = this, i, tb, ed = t.editor, s = t.settings, v, cf = ed.controlManager, di, n, h = [], a, toolbarGroup;
|
var t = this, i, tb, ed = t.editor, s = t.settings, v, cf = ed.controlManager, di, n, h = [], a, toolbarGroup, toolbarsExist = false;
|
||||||
|
|
||||||
toolbarGroup = cf.createToolbarGroup('toolbargroup', {
|
toolbarGroup = cf.createToolbarGroup('toolbargroup', {
|
||||||
'name': ed.getLang('advanced.toolbar'),
|
'name': ed.getLang('advanced.toolbar'),
|
||||||
|
@ -941,6 +951,7 @@
|
||||||
|
|
||||||
// Create toolbar and add the controls
|
// Create toolbar and add the controls
|
||||||
for (i=1; (v = s['theme_advanced_buttons' + i]); i++) {
|
for (i=1; (v = s['theme_advanced_buttons' + i]); i++) {
|
||||||
|
toolbarsExist = true;
|
||||||
tb = cf.createToolbar("toolbar" + i, {'class' : 'mceToolbarRow' + i});
|
tb = cf.createToolbar("toolbar" + i, {'class' : 'mceToolbarRow' + i});
|
||||||
|
|
||||||
if (s['theme_advanced_buttons' + i + '_add'])
|
if (s['theme_advanced_buttons' + i + '_add'])
|
||||||
|
@ -954,6 +965,9 @@
|
||||||
|
|
||||||
o.deltaHeight -= s.theme_advanced_row_height;
|
o.deltaHeight -= s.theme_advanced_row_height;
|
||||||
}
|
}
|
||||||
|
// Handle case when there are no toolbar buttons and ensure editor height is adjusted accordingly
|
||||||
|
if (!toolbarsExist)
|
||||||
|
o.deltaHeight -= s.theme_advanced_row_height;
|
||||||
h.push(toolbarGroup.renderHTML());
|
h.push(toolbarGroup.renderHTML());
|
||||||
h.push(DOM.createHTML('a', {href : '#', accesskey : 'z', title : ed.getLang("advanced.toolbar_focus"), onfocus : 'tinyMCE.getInstanceById(\'' + ed.id + '\').focus();'}, '<!-- IE -->'));
|
h.push(DOM.createHTML('a', {href : '#', accesskey : 'z', title : ed.getLang("advanced.toolbar_focus"), onfocus : 'tinyMCE.getInstanceById(\'' + ed.id + '\').focus();'}, '<!-- IE -->'));
|
||||||
DOM.setHTML(n, h.join(''));
|
DOM.setHTML(n, h.join(''));
|
||||||
|
@ -1112,7 +1126,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c = cm.get('formatselect')) {
|
if (c = cm.get('formatselect')) {
|
||||||
p = getParent(DOM.isBlock);
|
p = getParent(ed.dom.isBlock);
|
||||||
|
|
||||||
if (p)
|
if (p)
|
||||||
c.select(p.nodeName.toLowerCase());
|
c.select(p.nodeName.toLowerCase());
|
||||||
|
@ -1210,7 +1224,7 @@
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Handle prefix
|
// Handle prefix
|
||||||
if (tinymce.isIE && n.scopeName !== 'HTML')
|
if (tinymce.isIE && n.scopeName !== 'HTML' && n.scopeName)
|
||||||
na = n.scopeName + ':' + na;
|
na = n.scopeName + ':' + na;
|
||||||
|
|
||||||
// Remove internal prefix
|
// Remove internal prefix
|
||||||
|
@ -1271,7 +1285,7 @@
|
||||||
if (v) {
|
if (v) {
|
||||||
ti += 'class: ' + v + ' ';
|
ti += 'class: ' + v + ' ';
|
||||||
|
|
||||||
if (DOM.isBlock(n) || na == 'img' || na == 'span')
|
if (ed.dom.isBlock(n) || na == 'img' || na == 'span')
|
||||||
na += '.' + v;
|
na += '.' + v;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -104,10 +104,12 @@ var ImageDialog = {
|
||||||
},
|
},
|
||||||
|
|
||||||
updateStyle : function() {
|
updateStyle : function() {
|
||||||
var dom = tinyMCEPopup.dom, st, v, f = document.forms[0];
|
var dom = tinyMCEPopup.dom, st = {}, v, f = document.forms[0];
|
||||||
|
|
||||||
if (tinyMCEPopup.editor.settings.inline_styles) {
|
if (tinyMCEPopup.editor.settings.inline_styles) {
|
||||||
st = tinyMCEPopup.dom.parseStyle(this.styleVal);
|
tinymce.each(tinyMCEPopup.dom.parseStyle(this.styleVal), function(value, key) {
|
||||||
|
st[key] = value;
|
||||||
|
});
|
||||||
|
|
||||||
// Handle align
|
// Handle align
|
||||||
v = getSelectValue(f, 'align');
|
v = getSelectValue(f, 'align');
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/* Generic */
|
/* Generic */
|
||||||
body {
|
body {
|
||||||
font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px;
|
font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px;
|
||||||
background:#F0F0EE;
|
background:#F0F0EE;
|
||||||
color: black;
|
color: black;
|
||||||
padding:0;
|
padding:0;
|
||||||
margin:8px 8px 0 8px;
|
margin:8px 8px 0 8px;
|
||||||
|
@ -94,11 +94,12 @@ h3 {font-size:14px;}
|
||||||
#plugintable, #about #plugintable td {border:1px solid #919B9C;}
|
#plugintable, #about #plugintable td {border:1px solid #919B9C;}
|
||||||
#plugintable {width:96%; margin-top:10px;}
|
#plugintable {width:96%; margin-top:10px;}
|
||||||
#pluginscontainer {height:290px; overflow:auto;}
|
#pluginscontainer {height:290px; overflow:auto;}
|
||||||
#colorpicker #preview {float:right; width:50px; height:14px;line-height:1px; border:1px solid black; margin-left:5px;}
|
#colorpicker #preview {display:inline-block; padding-left:40px; height:14px; border:1px solid black; margin-left:5px; margin-right: 5px}
|
||||||
|
#colorpicker #previewblock {position: relative; top: -3px; padding-left:5px; padding-top: 0px; display:inline}
|
||||||
|
#colorpicker #preview_wrapper { text-align:center; padding-top:4px; white-space: nowrap}
|
||||||
#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}
|
#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}
|
||||||
#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}
|
#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}
|
||||||
#colorpicker #light div {overflow:hidden;}
|
#colorpicker #light div {overflow:hidden;}
|
||||||
#colorpicker #previewblock {float:right; padding-left:10px; height:20px;}
|
|
||||||
#colorpicker .panel_wrapper div.current {height:175px;}
|
#colorpicker .panel_wrapper div.current {height:175px;}
|
||||||
#colorpicker #namedcolors {width:150px;}
|
#colorpicker #namedcolors {width:150px;}
|
||||||
#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}
|
#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}
|
||||||
|
|
|
@ -58,7 +58,7 @@
|
||||||
|
|
||||||
/* Menu */
|
/* Menu */
|
||||||
.highcontrastSkin .mceNoIcons span.mceIcon {width:0;}
|
.highcontrastSkin .mceNoIcons span.mceIcon {width:0;}
|
||||||
.highcontrastSkin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid; }
|
.highcontrastSkin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid; direction:ltr}
|
||||||
.highcontrastSkin .mceMenu table {background:white; color: black}
|
.highcontrastSkin .mceMenu table {background:white; color: black}
|
||||||
.highcontrastSkin .mceNoIcons a .mceText {padding-left:10px}
|
.highcontrastSkin .mceNoIcons a .mceText {padding-left:10px}
|
||||||
.highcontrastSkin .mceMenu a, .highcontrastSkin .mceMenu span, .highcontrastSkin .mceMenu {display:block;background:white; color: black}
|
.highcontrastSkin .mceMenu a, .highcontrastSkin .mceMenu span, .highcontrastSkin .mceMenu {display:block;background:white; color: black}
|
||||||
|
@ -90,6 +90,10 @@
|
||||||
.highcontrastSkin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}
|
.highcontrastSkin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}
|
||||||
.highcontrastSkin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}
|
.highcontrastSkin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}
|
||||||
|
|
||||||
|
/* Rtl */
|
||||||
|
.mceRtl .mceListBox .mceText {text-align: right; padding: 0 4px 0 0}
|
||||||
|
.mceRtl .mceMenuItem .mceText {text-align: right}
|
||||||
|
|
||||||
/* Formats */
|
/* Formats */
|
||||||
.highcontrastSkin .mce_p span.mceText {}
|
.highcontrastSkin .mce_p span.mceText {}
|
||||||
.highcontrastSkin .mce_address span.mceText {font-style:italic}
|
.highcontrastSkin .mce_address span.mceText {font-style:italic}
|
||||||
|
|
|
@ -105,11 +105,12 @@ h3 {font-size:14px;}
|
||||||
#plugintable, #about #plugintable td {border:1px solid #919B9C;}
|
#plugintable, #about #plugintable td {border:1px solid #919B9C;}
|
||||||
#plugintable {width:96%; margin-top:10px;}
|
#plugintable {width:96%; margin-top:10px;}
|
||||||
#pluginscontainer {height:290px; overflow:auto;}
|
#pluginscontainer {height:290px; overflow:auto;}
|
||||||
#colorpicker #preview {float:right; width:50px; height:14px;line-height:1px; border:1px solid black; margin-left:5px;}
|
#colorpicker #preview {display:inline-block; padding-left:40px; height:14px; border:1px solid black; margin-left:5px; margin-right: 5px}
|
||||||
|
#colorpicker #previewblock {position: relative; top: -3px; padding-left:5px; padding-top: 0px; display:inline}
|
||||||
|
#colorpicker #preview_wrapper { text-align:center; padding-top:4px; white-space: nowrap}
|
||||||
#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}
|
#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}
|
||||||
#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}
|
#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}
|
||||||
#colorpicker #light div {overflow:hidden;}
|
#colorpicker #light div {overflow:hidden;}
|
||||||
#colorpicker #previewblock {float:right; padding-left:10px; height:20px;}
|
|
||||||
#colorpicker .panel_wrapper div.current {height:175px;}
|
#colorpicker .panel_wrapper div.current {height:175px;}
|
||||||
#colorpicker #namedcolors {width:150px;}
|
#colorpicker #namedcolors {width:150px;}
|
||||||
#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}
|
#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}
|
||||||
|
|
|
@ -86,7 +86,7 @@
|
||||||
.o2k7Skin .mce_forecolor span.mceAction, .o2k7Skin .mce_backcolor span.mceAction {height:15px;overflow:hidden}
|
.o2k7Skin .mce_forecolor span.mceAction, .o2k7Skin .mce_backcolor span.mceAction {height:15px;overflow:hidden}
|
||||||
|
|
||||||
/* Menu */
|
/* Menu */
|
||||||
.o2k7Skin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid #ABC6DD}
|
.o2k7Skin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid #ABC6DD; direction:ltr}
|
||||||
.o2k7Skin .mceNoIcons span.mceIcon {width:0;}
|
.o2k7Skin .mceNoIcons span.mceIcon {width:0;}
|
||||||
.o2k7Skin .mceNoIcons a .mceText {padding-left:10px}
|
.o2k7Skin .mceNoIcons a .mceText {padding-left:10px}
|
||||||
.o2k7Skin .mceMenu table {background:#FFF}
|
.o2k7Skin .mceMenu table {background:#FFF}
|
||||||
|
@ -112,6 +112,10 @@
|
||||||
.o2k7Skin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}
|
.o2k7Skin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}
|
||||||
.o2k7Skin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}
|
.o2k7Skin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}
|
||||||
|
|
||||||
|
/* Rtl */
|
||||||
|
.mceRtl .mceListBox .mceText {text-align: right; padding: 0 4px 0 0}
|
||||||
|
.mceRtl .mceMenuItem .mceText {text-align: right}
|
||||||
|
|
||||||
/* Formats */
|
/* Formats */
|
||||||
.o2k7Skin .mce_formatPreview a {font-size:10px}
|
.o2k7Skin .mce_formatPreview a {font-size:10px}
|
||||||
.o2k7Skin .mce_p span.mceText {}
|
.o2k7Skin .mce_p span.mceText {}
|
||||||
|
|
File diff suppressed because one or more lines are too long
5107
library/tinymce/jscripts/tiny_mce/tiny_mce_src.js
vendored
5107
library/tinymce/jscripts/tiny_mce/tiny_mce_src.js
vendored
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue