]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-includes/js/tinymce/plugins/wpview/editor_plugin_src.js
WordPress 3.9
[autoinstalls/wordpress.git] / wp-includes / js / tinymce / plugins / wpview / editor_plugin_src.js
diff --git a/wp-includes/js/tinymce/plugins/wpview/editor_plugin_src.js b/wp-includes/js/tinymce/plugins/wpview/editor_plugin_src.js
deleted file mode 100644 (file)
index a0d28a4..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-/* global tinymce */
-/**
- * WordPress View plugin.
- */
-
-(function() {
-       var VK = tinymce.VK,
-               TreeWalker = tinymce.dom.TreeWalker,
-               selected;
-
-       tinymce.create('tinymce.plugins.wpView', {
-               init : function( editor ) {
-                       var wpView = this;
-
-                       // Check if the `wp.mce` API exists.
-                       if ( typeof wp === 'undefined' || ! wp.mce )
-                               return;
-
-                       editor.onPreInit.add( function( editor ) {
-                               // Add elements so we can set `contenteditable` to false.
-                               editor.schema.addValidElements('div[*],span[*]');
-                       });
-
-                       // When the editor's content changes, scan the new content for
-                       // matching view patterns, and transform the matches into
-                       // view wrappers. Since the editor's DOM is outdated at this point,
-                       // we'll wait to render the views.
-                       editor.onBeforeSetContent.add( function( editor, o ) {
-                               if ( ! o.content )
-                                       return;
-
-                               o.content = wp.mce.view.toViews( o.content );
-                       });
-
-                       // When the editor's content has been updated and the DOM has been
-                       // processed, render the views in the document.
-                       editor.onSetContent.add( function( editor ) {
-                               wp.mce.view.render( editor.getDoc() );
-                       });
-
-                       editor.onInit.add( function( editor ) {
-
-                               // When a view is selected, ensure content that is being pasted
-                               // or inserted is added to a text node (instead of the view).
-                               editor.selection.onBeforeSetContent.add( function( selection ) {
-                                       var view = wpView.getParentView( selection.getNode() ),
-                                               walker, target;
-
-                                       // If the selection is not within a view, bail.
-                                       if ( ! view )
-                                               return;
-
-                                       // If there are no additional nodes or the next node is a
-                                       // view, create a text node after the current view.
-                                       if ( ! view.nextSibling || wpView.isView( view.nextSibling ) ) {
-                                               target = editor.getDoc().createTextNode('');
-                                               editor.dom.insertAfter( target, view );
-
-                                       // Otherwise, find the next text node.
-                                       } else {
-                                               walker = new TreeWalker( view.nextSibling, view.nextSibling );
-                                               target = walker.next();
-                                       }
-
-                                       // Select the `target` text node.
-                                       selection.select( target );
-                                       selection.collapse( true );
-                               });
-
-                               // When the selection's content changes, scan any new content
-                               // for matching views and immediately render them.
-                               //
-                               // Runs on paste and on inserting nodes/html.
-                               editor.selection.onSetContent.add( function( selection, o ) {
-                                       if ( ! o.context )
-                                               return;
-
-                                       var node = selection.getNode();
-
-                                       if ( ! node.innerHTML )
-                                               return;
-
-                                       node.innerHTML = wp.mce.view.toViews( node.innerHTML );
-                                       wp.mce.view.render( node );
-                               });
-                       });
-
-                       // When the editor's contents are being accessed as a string,
-                       // transform any views back to their text representations.
-                       editor.onPostProcess.add( function( editor, o ) {
-                               if ( ( ! o.get && ! o.save ) || ! o.content )
-                                       return;
-
-                               o.content = wp.mce.view.toText( o.content );
-                       });
-
-                       // Triggers when the selection is changed.
-                       // Add the event handler to the top of the stack.
-                       editor.onNodeChange.addToTop( function( editor, controlManager, node ) {
-                               var view = wpView.getParentView( node );
-
-                               // Update the selected view.
-                               if ( view ) {
-                                       wpView.select( view );
-
-                                       // Prevent the selection from propagating to other plugins.
-                                       return false;
-
-                               // If we've clicked off of the selected view, deselect it.
-                               } else {
-                                       wpView.deselect();
-                               }
-                       });
-
-                       editor.onKeyDown.addToTop( function( editor, event ) {
-                               var keyCode = event.keyCode,
-                                       view, instance;
-
-                               // If a view isn't selected, let the event go on its merry way.
-                               if ( ! selected )
-                                       return;
-
-                               // If the caret is not within the selected view, deselect the
-                               // view and bail.
-                               view = wpView.getParentView( editor.selection.getNode() );
-                               if ( view !== selected ) {
-                                       wpView.deselect();
-                                       return;
-                               }
-
-                               // If delete or backspace is pressed, delete the view.
-                               if ( keyCode === VK.DELETE || keyCode === VK.BACKSPACE ) {
-                                       if ( (instance = wp.mce.view.instance( selected )) ) {
-                                               instance.remove();
-                                               wpView.deselect();
-                                       }
-                               }
-
-                               // Let keypresses that involve the command or control keys through.
-                               // Also, let any of the F# keys through.
-                               if ( event.metaKey || event.ctrlKey || ( keyCode >= 112 && keyCode <= 123 ) )
-                                       return;
-
-                               event.preventDefault();
-                       });
-               },
-
-               getParentView : function( node ) {
-                       while ( node ) {
-                               if ( this.isView( node ) )
-                                       return node;
-
-                               node = node.parentNode;
-                       }
-               },
-
-               isView : function( node ) {
-                       return (/(?:^|\s)wp-view-wrap(?:\s|$)/).test( node.className );
-               },
-
-               select : function( view ) {
-                       if ( view === selected )
-                               return;
-
-                       this.deselect();
-                       selected = view;
-                       wp.mce.view.select( selected );
-               },
-
-               deselect : function() {
-                       if ( selected )
-                               wp.mce.view.deselect( selected );
-                       selected = null;
-               },
-
-               getInfo : function() {
-                       return {
-                               longname  : 'WordPress Views',
-                               author    : 'WordPress',
-                               authorurl : 'http://wordpress.org',
-                               infourl   : 'http://wordpress.org',
-                               version   : '1.0'
-                       };
-               }
-       });
-
-       // Register plugin
-       tinymce.PluginManager.add( 'wpview', tinymce.plugins.wpView );
-})();
\ No newline at end of file