瀏覽代碼

Renderer need to be Observable.

Piotr Jasiun 9 年之前
父節點
當前提交
40006c38c4
共有 2 個文件被更改,包括 16 次插入12 次删除
  1. 12 12
      packages/ckeditor5-engine/src/view/document.js
  2. 4 0
      packages/ckeditor5-engine/src/view/renderer.js

+ 12 - 12
packages/ckeditor5-engine/src/view/document.js

@@ -74,6 +74,18 @@ export default class Document {
 		this.roots = new Map();
 
 		/**
+		 * {@link engine.view.EditableElement} which is currently focused or null if all of them are blurred.
+		 *
+		 * This property is updated by the {@link engine.view.obsever.FocusObserver}.
+		 * If the {@link engine.view.obsever.FocusObserver} is disabled this property will not change.
+		 *
+		 * @readonly
+		 * @observable
+		 * @member {engine.view.EditableElement|null} engine.view.Document#focusedEditable
+		 */
+		this.set( 'focusedEditable', null );
+
+		/**
 		 * Instance of the {@link engine.view.Document#renderer renderer}.
 		 *
 		 * @readonly
@@ -90,18 +102,6 @@ export default class Document {
 		 */
 		this._observers = new Map();
 
-		/**
-		 * {@link engine.view.EditableElement} which is currently focused or null if all of them are blurred.
-		 *
-		 * This property is updated by the {@link engine.view.obsever.FocusObserver}.
-		 * If the {@link engine.view.obsever.FocusObserver} is disabled this property will not change.
-		 *
-		 * @readonly
-		 * @observable
-		 * @member {engine.view.EditableElement|null} engine.view.Document#focusedEditable
-		 */
-		this.set( 'focusedEditable', null );
-
 		injectQuirksHandling( this );
 	}
 

+ 4 - 0
packages/ckeditor5-engine/src/view/renderer.js

@@ -10,9 +10,11 @@ import ViewElement from './element.js';
 import ViewPosition from './position.js';
 import { INLINE_FILLER, INLINE_FILLER_LENGTH, startsWithFiller, isInlineFiller, isBlockFiller } from './filler.js';
 
+import mix from '../../utils/mix.js';
 import diff from '../../utils/diff.js';
 import insertAt from '../../utils/dom/insertat.js';
 import remove from '../../utils/dom/remove.js';
+import ObservableMixin from '../../utils/observablemixin.js';
 import CKEditorError from '../../utils/ckeditorerror.js';
 
 /**
@@ -433,3 +435,5 @@ export default class Renderer {
 		}
 	}
 }
+
+mix( Renderer, ObservableMixin );