Przeglądaj źródła

Use fake selection to render table selection.

Maciej Gołaszewski 6 lat temu
rodzic
commit
0da29f0163

+ 0 - 42
packages/ckeditor5-engine/src/view/observer/selectionrendererobserver.js

@@ -1,42 +0,0 @@
-/**
- * @license Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
- */
-
-/**
- * @module engine/view/observer/selectionrendererobserver
- */
-
-import Observer from './observer';
-
-/**
- * @extends module:engine/view/observer/domeventobserver~DomEventObserver
- */
-export default class SelectionRendererObserver extends Observer {
-	constructor( view ) {
-		super( view );
-
-		const document = this.document;
-
-		// TODO: althought this works it lacks the RENDERER API (or view API as renderer is _private).
-		document.on( 'blur', () => {
-			view._renderer.renderSelection = false;
-		} );
-
-		document.on( 'mousemove', ( evt, domEvt ) => {
-			view._renderer.renderSelection = domEvt.domEvent.buttons != 1;
-		} );
-
-		document.on( 'mouseup', () => {
-			view._renderer.renderSelection = true;
-		} );
-
-		document.on( 'mouseleave', () => {
-			view._renderer.renderSelection = false;
-		} );
-	}
-
-	observe() {
-		// TODO: dummy method - might need better solution.
-	}
-}

+ 2 - 7
packages/ckeditor5-engine/src/view/renderer.js

@@ -116,8 +116,6 @@ export default class Renderer {
 		 * @type {null|HTMLElement}
 		 */
 		this._fakeSelectionContainer = null;
-
-		this.renderSelection = true;
 	}
 
 	/**
@@ -233,11 +231,8 @@ export default class Renderer {
 			this._inlineFiller = null;
 		}
 
-		// TODO: Add temporary solution to pausing selection rendering.
-		if ( this.renderSelection ) {
-			this._updateSelection();
-			this._updateFocus();
-		}
+		this._updateSelection();
+		this._updateFocus();
 
 		this.markedTexts.clear();
 		this.markedAttributes.clear();

+ 0 - 2
packages/ckeditor5-engine/src/view/view.js

@@ -21,7 +21,6 @@ import FakeSelectionObserver from './observer/fakeselectionobserver';
 import SelectionObserver from './observer/selectionobserver';
 import FocusObserver from './observer/focusobserver';
 import CompositionObserver from './observer/compositionobserver';
-import SelectionRendererObserver from './observer/selectionrendererobserver';
 import InputObserver from './observer/inputobserver';
 
 import ObservableMixin from '@ckeditor/ckeditor5-utils/src/observablemixin';
@@ -174,7 +173,6 @@ export default class View {
 		this.addObserver( KeyObserver );
 		this.addObserver( FakeSelectionObserver );
 		this.addObserver( CompositionObserver );
-		this.addObserver( SelectionRendererObserver );
 
 		if ( env.isAndroid ) {
 			this.addObserver( InputObserver );