Browse Source

Docs about the focus.

Piotr Jasiun 9 năm trước cách đây
mục cha
commit
0e56f5d5de

+ 3 - 0
packages/ckeditor5-engine/src/view/observer/focusobserver.js

@@ -9,6 +9,8 @@ import DomEventObserver from './domeventobserver.js';
 
 /**
  * {@link engine.view.Document#focus Focus} and {@link engine.view.Document#blur blur} events observer.
+ * Focus observer handle also {@link engine.view.RootEditableElement#isFocused isFocused} property of the
+ * {@link engine.view.RootEditableElement root elements}.
  *
  * Note that this observer is attached by the {@link engine.EditingController} and is available by default.
  *
@@ -25,6 +27,7 @@ export default class FocusObserver extends DomEventObserver {
 	onDomEvent( domEvent ) {
 		const target = this.document.domConverter.getCorrespondingViewElement( domEvent.target );
 
+		// Update `isFocus` property of root elements.
 		for ( let root of this.document.roots.values() ) {
 			if ( target === root ) {
 				if ( domEvent.type == 'focus' ) {

+ 2 - 1
packages/ckeditor5-engine/src/view/observer/observer.js

@@ -7,7 +7,8 @@
 
 /**
  * Abstract base observer class. Observers are classes which observe changes on DOM elements, do the preliminary
- * processing and fire events on the {@link engine.view.Document} objects.
+ * processing and fire events on the {@link engine.view.Document} objects. Observers can also add features to the view,
+ * for instance by updating its status or marking elements which need refresh on DOM events.
  *
  * @abstract
  * @memberOf engine.view.observer

+ 3 - 0
packages/ckeditor5-engine/src/view/rooteditableelement.js

@@ -33,6 +33,9 @@ export default class RootEditableElement extends EditableElement {
 		/**
 		 * Whether the editable is focused.
 		 *
+		 * 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 {Boolean} engine.view.RootEditableElement#isFocused