diff --git src/wp-admin/js/widgets/text-widgets.js src/wp-admin/js/widgets/text-widgets.js index 2108b65548..240b54f566 100644 --- src/wp-admin/js/widgets/text-widgets.js +++ src/wp-admin/js/widgets/text-widgets.js @@ -184,7 +184,7 @@ wp.textWidgets = ( function( $ ) { }, updateWidgetBuffer ); } - editor.save(); + editor.save({ no_events: true }); // Arg no_events to prevent infinite SaveContent loop. textarea.trigger( 'change' ); } }; @@ -192,7 +192,13 @@ wp.textWidgets = ( function( $ ) { control.editorFocused = true; }); editor.on( 'NodeChange', _.debounce( triggerChangeIfDirty, changeDebounceDelay ) ); - editor.on( 'blur', function() { + + /* + * Note that originally the 'blur' event was used below. It had to be + * replaced with 'SaveContent' because the 'blur' event does not trigger + * when the user switches to the Text tab. + */ + editor.on( 'SaveContent', function() { control.editorFocused = false; triggerChangeIfDirty(); });