Skip to content
This repository has been archived by the owner on Jun 26, 2020. It is now read-only.

v13.0.0

Compare
Choose a tag to compare
@Reinmar Reinmar released this 28 Feb 11:53
· 828 commits to master since this release

Features

  • Added an additional event in markers conversion. Improved how MarkerOperation is transformed during undo. Closes #1604. (da5a390)
  • Implemented Selection#is() and DocumentSelection#is() methods in both the model and the view. Closes #1663. (aac4948)
  • Introduce the selection.getTopMostBlocks() method. (a9c41c8)
  • Introduce the read-only View#isRenderingInProgress flag to check if the document is in the rendering phase. Closes ckeditor/ckeditor5#1530. (6577d04)
  • Introduced Differ#getChangedMarkers. Closes #1658. (2e04af7)
  • Introduced DocumentSelection#markers collection. Closes #1615. (b2c1d72)
  • Introduced support for inline objects (enables support for inline widgets). Introduced Schema#isInline(). Closes [ckeditor/ckeditor5#1049](ckeditor/ckeditor5#1049). Closes [ckeditor/ckeditor5#1426](ckeditor/ckeditor5#1426). (6b36bf1)
  • Introduced whitespace trimming to Model#hasContent(). DataController#get() method can now trim empty data (so it returns empty string instead of <p>&nbsp;</p>). Closes [ckeditor/ckeditor5#401](ckeditor/ckeditor5#401). (2b95dc3)
  • Moved the root element DOM attributes management from the UI to the engine. Made it possible to use addPlaceholder() (now enablePlaceholder()) on the root editable. Introduced the View.detachDomRoot() method. Implemented additional placeholder helpers (showPlaceholder(), hidePlaceholder(), needsPlaceholder()) (see ckeditor/ckeditor5#479). Closes #899. (21dee6b)

Bug fixes

Other changes

  • Added support for handling data in multiple roots in DataController. Closes #1626. (0fb4295)
  • Change Conversion class API. Closes #1640. (e7d09cd)
  • Introduced editor.data#ready event. (46d9243)
  • Removed wrap() from public API. Closes #1616. (1c7ef68)
  • Swapped the order of parameters in Schema#findAllowedParent(). Now those parameters match to parameters in other methods of the Schema class. Closes #1636. (6515558)
  • Upcast element to attribute defaults to low priority instead of normal. Closes ckeditor/ckeditor5#1399. (c33c49c)
  • Expose conversion utilities. Closes #1556. (9306c22)

BREAKING CHANGES

  • Upgraded minimal versions of Node to 8.0.0 and npm to 5.7.1. See: ckeditor/ckeditor5#1507. (612ea3c)
  • DataController#get() method now returns an empty string when the editor content is empty (instead of returning e.g. <p>&nbsp;</p>).
  • The wrap() conversion helper was removed from public API.
  • The attachPlaceholder() has been renamed to enablePlaceholder().
  • enablePlaceholder() accepts a configuration object instead of separate parameters.
  • The detachPlaceholder() has been renamed to disablePlaceholder().
  • The Conversion#register() method was removed from the public API. Use constructor parameters to pass dispatchers and Conversion#addAlias() to register an alternative conversion group for registered upcast or downcast dispatchers.
  • The editor#dataReady event was removed. The editor.data#ready event has been introduced and should be used instead.
  • Swapped the order of parameters in Schema#findAllowedParent().
  • The second parameter (rootName) from DataController#init() method has been removed. To initialize data on a root different than default one an object with rootName - data pair should be passed.
  • The second parameter (rootName) from DataController#set() method has been removed. To set data on a root different than default one an object with rootName - data pair should be passed.
  • The editing.view.render() method was renamed to editing.view.forceRender(). It should be used with caution as it will re-render editing view and repaint the UI.
  • The conversion.register() method now accepts single options object as a parameter.
  • The downcastElementToElement() helper was removed from public API. Use conversion.for( 'downcast' ).elementToElement() instead.
  • The downcastAttributeToElement() helper was removed from public API. Use conversion.for( 'downcast' ).attributeToElement() instead.
  • The downcastAttributeToAttribute() helper was removed from public API. Use conversion.for( 'downcast' ).attributeToAttribute() instead.
  • The downcastMarkerToElement() helper was removed from public API. Use conversion.for( 'downcast' ).markerToElement() instead.
  • The downcastMarkerToHighlight() helper was removed from public API. Use conversion.for( 'downcast' ).markerToHighlight() instead.
  • The upcastElementToElement() helper was removed from public API. Use conversion.for( 'upcast' ).elementToElement() instead.
  • The upcastElementToAttribute() helper was removed from public API. Use conversion.for( 'upcast' ).elementToAttribute() instead.
  • The upcastAttributeToAttribute() helper was removed from public API. Use conversion.for( 'upcast' ).attributeToAttribute() instead.
  • The upcastElementToMarker() helper was removed from public API. Use conversion.for( 'upcast' ).elementToMarker() instead.
  • The insertUIElement() and removeUIElement() downcast converters were removed from public API. Use conversion.for( 'downcast' ).markerToElement() instead.
  • The highlightText(), highlightElement() and removeHighlight() downcast converters were removed from public API. Use conversion.for( 'downcast' ).markerToHighlight() instead.
  • The insertElement() downcast converter was removed from public API. Use conversion.for( 'downcast' ).elementToElement() instead.
  • The changeAttribute() downcast converter was removed from public API. Use conversion.for( 'downcast' ).attributeToAttribute() instead.