diff -r 000000000000 -r bca7a7e058a3 src/pyams_skin/resources/js/ext/tinymce/dev/plugins/nonbreaking/plugin.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/pyams_skin/resources/js/ext/tinymce/dev/plugins/nonbreaking/plugin.js Thu Feb 13 11:43:31 2020 +0100 @@ -0,0 +1,53 @@ +/** + * plugin.js + * + * Copyright, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://www.tinymce.com/license + * Contributing: http://www.tinymce.com/contributing + */ + +/*global tinymce:true */ + +tinymce.PluginManager.add('nonbreaking', function(editor) { + var setting = editor.getParam('nonbreaking_force_tab'); + + editor.addCommand('mceNonBreaking', function() { + editor.insertContent( + (editor.plugins.visualchars && editor.plugins.visualchars.state) ? + ' ' : ' ' + ); + + editor.dom.setAttrib(editor.dom.select('span.mce-nbsp'), 'data-mce-bogus', '1'); + }); + + editor.addButton('nonbreaking', { + title: 'Nonbreaking space', + cmd: 'mceNonBreaking' + }); + + editor.addMenuItem('nonbreaking', { + text: 'Nonbreaking space', + cmd: 'mceNonBreaking', + context: 'insert' + }); + + if (setting) { + var spaces = +setting > 1 ? +setting : 3; // defaults to 3 spaces if setting is true (or 1) + + editor.on('keydown', function(e) { + if (e.keyCode == 9) { + + if (e.shiftKey) { + return; + } + + e.preventDefault(); + for (var i = 0; i < spaces; i++) { + editor.execCommand('mceNonBreaking'); + } + } + }); + } +});