Kaynağa Gözat

Internal: Perform a soft-check on WidgetToolbarRepository plugin, so that it doesn't fail if it isn't included in the editor.

Marek Lewandowski 6 yıl önce
ebeveyn
işleme
c34d079542
1 değiştirilmiş dosya ile 16 ekleme ve 11 silme
  1. 16 11
      packages/ckeditor5-widget/src/widgetresize.js

+ 16 - 11
packages/ckeditor5-widget/src/widgetresize.js

@@ -135,22 +135,27 @@ export default class WidgetResize extends Plugin {
 	 */
 	 */
 	attachTo( options ) {
 	attachTo( options ) {
 		const resizer = new Resizer( options );
 		const resizer = new Resizer( options );
-		const widgetToolbarRepository = this.editor.plugins.get( 'WidgetToolbarRepository' );
+		const plugins = this.editor.plugins;
 
 
 		resizer.attach();
 		resizer.attach();
 
 
-		// Hiding widget toolbar to improve the performance (https://github.com/ckeditor/ckeditor5-widget/pull/112#issuecomment-564528765).
-		resizer.on( 'begin', () => {
-			widgetToolbarRepository.forceDisabled( 'resize' );
-		} );
+		if ( plugins.has( 'WidgetToolbarRepository' ) ) {
+			// Hiding widget toolbar to improve the performance
+			// (https://github.com/ckeditor/ckeditor5-widget/pull/112#issuecomment-564528765).
+			const widgetToolbarRepository = plugins.get( 'WidgetToolbarRepository' );
 
 
-		resizer.on( 'cancel', () => {
-			widgetToolbarRepository.clearForceDisabled( 'resize' );
-		} );
+			resizer.on( 'begin', () => {
+				widgetToolbarRepository.forceDisabled( 'resize' );
+			} );
 
 
-		resizer.on( 'commit', () => {
-			widgetToolbarRepository.clearForceDisabled( 'resize' );
-		} );
+			resizer.on( 'cancel', () => {
+				widgetToolbarRepository.clearForceDisabled( 'resize' );
+			} );
+
+			resizer.on( 'commit', () => {
+				widgetToolbarRepository.clearForceDisabled( 'resize' );
+			} );
+		}
 
 
 		this._resizers.set( options.viewElement, resizer );
 		this._resizers.set( options.viewElement, resizer );