selectionobserver.js 1023 B

1234567891011121314151617181920212223242526272829
  1. /**
  2. * @license Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
  4. */
  5. /* globals console, document */
  6. import View from '../../../src/view/view';
  7. import { setData } from '../../../src/dev-utils/view';
  8. import createViewRoot from '../_utils/createroot';
  9. const view = new View();
  10. const viewDocument = view.document;
  11. createViewRoot( viewDocument );
  12. view.attachDomRoot( document.getElementById( 'editor' ) );
  13. setData( view,
  14. '<container:p><attribute:b>foo</attribute:b>bar</container:p>' +
  15. '<container:p>bom</container:p>' );
  16. viewDocument.on( 'selectionChange', ( evt, data ) => {
  17. console.log( 'selectionChange', data );
  18. view.change( writer => writer.setSelection( data.newSelection ) );
  19. } );
  20. viewDocument.on( 'selectionChangeDone', ( evt, data ) => {
  21. console.log( '%c selectionChangeDone ', 'background: #222; color: #bada55', data );
  22. view.change( writer => writer.setSelection( data.newSelection ) );
  23. } );