8
0

selectionobserver.js 953 B

123456789101112131415161718192021222324252627282930
  1. /**
  2. * @license Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md.
  4. */
  5. /* global console:false */
  6. 'use strict';
  7. import Document from '/ckeditor5/engine/treeview/document.js';
  8. import MutationObserver from '/ckeditor5/engine/treeview/observer/mutationobserver.js';
  9. import SelectionObserver from '/ckeditor5/engine/treeview/observer/selectionobserver.js';
  10. import { setData } from '/tests/engine/_utils/view.js';
  11. const viewDocument = new Document();
  12. viewDocument.createRoot( document.getElementById( 'editor' ) );
  13. viewDocument.addObserver( MutationObserver );
  14. viewDocument.addObserver( SelectionObserver );
  15. setData( viewDocument,
  16. '<container:p><attribute:b>foo</attribute:b>bar</container:p>' +
  17. '<container:p>bom</container:p>' );
  18. viewDocument.on( 'selectionChange', ( evt, data ) => {
  19. console.log( data );
  20. viewDocument.selection.setTo( data.newSelection );
  21. } );
  22. viewDocument.render();