All changes in the package are documented in the main repository. See: https://github.com/ckeditor/ckeditor5/blob/master/CHANGELOG.md.
Changes for the past releases are available below.
ViewCollection no longer has the locale property.ViewCollection#constructor() no longer accepts the locale parameter.LabeledView component was renamed to LabeledFieldView. Also, its instance of a labeled component's view is available through LabeledFieldView#fieldView. It replaced the LabeledView#view.DropdownView#focusTracker property has been removed as it served no purpose.ViewCollection and BodyCollection in the constructor. See ckeditor/ckeditor5#6319. (6cd15de)The View#createCollection() method now also accepts an iterator of views.
FormHeaderView UI component. Closes ckeditor/ckeditor5#6109. (eb1ce18)BlockToolbar should group items when there is no place to show them all. Closes ckeditor/ckeditor5#6449. Closes ckeditor/ckeditor5#6575. Closes ckeditor/ckeditor5#6570. (fcd9c4e)Improved ToolbarView#maxWidth and items grouping when the toolbar is invisible.
ResizeObserver.destroy() when destroying block toolbar. (59449d2)DropdownView#focusTracker. Closes ckeditor/ckeditor5#6548. (ac750c7)LabeledView component to LabeledFieldView. See ckeditor/ckeditor5#6110. (5a7aca7)BalloonToolbar plugin now groups the overflowing items by default. This can be disabled by setting config.balloonToolbar.shouldNotGroupWhenFull configuration to true.BalloonToolbar plugin should group items when its width is close to related editable's width. Closes ckeditor/ckeditor5#5597. Closes ckeditor/ckeditor5#5501. (d36fd23)BalloonPanelView.defaultPositions has been extended with additional positions. Please refer to the documentation to learn more.
LabeledView class (see https://github.com/ckeditor/ckeditor5-table/pull/227). (ec39406)Also added id properties to the DropdownView and LabelView for compatibility with the LabeledView.
Toolbar#isCompact property to turn regular toolbars into compact ones (with less spacing) (see ckeditor/ckeditor5#6112). (a6b9c09)BlockToolbar work with an empty configuration. Closes ckeditor/ckeditor5#5980. (1e05098)getResizeObserver() helper with new ResizeObserver class in ToolbarView. (be98aa4)Follow-up on: https://github.com/ckeditor/ckeditor5-utils/pull/320
ButtonView. Implemented the ButtonView#withKeystroke property. Closes ckeditor/ckeditor5#5782. (dac8ce0)ColorGrid should set the #isOn property value of new ColorTiles. See ckeditor/ckeditor5-font#51. (e89ad60)role and aria-label attributes. Closes ckeditor/ckeditor5#1404. (bdede90)ToolbarView class requires the editor locale to be passed into the constructor.ContextualBalloon plugin. See https://github.com/ckeditor/ckeditor5-mention/issues/74. (c000c93)ContextualBalloon. Closes https://github.com/ckeditor/ckeditor5-ui/issues/491. (581d8f7)InputTextViewariaDesribedById property to InputTextView#ariaDescribedById. Closes #483. (2288bf3)_rwd.css mixin was moved to this package from @ckeditor/ckeditor5-theme-lark. See ckeditor/ckeditor5#1662. (96e3a3c)ContextualBalloon#add() method should accept the withArrow option. Closes #487. (0e7f670)InputTextView#ariaDesribedById property is no longer available. Use ariaDescribedById instead.ColorGridView and ColorTileView components. See ckeditor/ckeditor5#1457. (6be52b4)View#render collision when moving focus from a one editable to the other in multi-root editor. Closes https://github.com/ckeditor/ckeditor5/issues/1676. (17e86f9)class property should control the DOM class attribute in all UI components. Closes #450. (b9b68c6)8.0.0 and npm to 5.7.1. See: ckeditor/ckeditor5#1507. (612ea3c)BallonPanelView#className property was renamed to #class.ToolbarView#className property was renamed to #class.EditableUIView#externalElement property (which held the element on which the editor was created if it was explicitly passed) was removed.EditorUIView#editableElement property was made private. Use editor.ui.getEditableElement() method instead..ck-read-only CSS class to the EditableUIView when #isReadOnly is true. (4119822)DropdownView#class property to set a custom CSS class on the main element in DOM. Closes #447. (9cdcd4a)Thanks to @lucasreppewelander!
LabeledInputView#infoText to display useful hints next to the input (see ckeditor/ckeditor5-media-embed#35). (6ac03ea)DropdownView panel positioning. Closes #123. (8094f19)LabeledInputVIew (see ckeditor/ckeditor5-media-embed#1). (81aaea4)Also:
ListItemView class, which is now just a container for ButtonView (and others),ListItemView#style and #class to the ButtonView (as #class and #labelStyle),addListToDropdown utility with a better configuration (ListDropdownItemDefinition) and the support for buttons, switch buttons, and separators,.ck-button and .ck-list became flex containers; the first one to allow complex inner structures (like the toggle) and the later to take control of complex list items (like .ck-switchbutton).BalloonToolbar should hide when the editable is blurred. Closes #418. (f6a02d4)BlockToolbar should add elements to the FocusTracker only after uiReady is fired to avoid errors. Closes #424. (ae9fa09)BlockToolbar should hide when the editor is blurred. Closes #408. (e3bbccf)ListItemView functionality is now handled by the ButtonView,addListToDropdown has changed; see ListDropdownItemDefinition to learn more,.ck-button and .ck-list classes are using flex which may have an impact on rendering.BlockToolbar plugin. Closes #391. (5868516)ListItemView should be possible using the isEnabled property. Closes #389. (76a4d47)ContextualBalloon always use the position of the topmost view in the stack (see: ckeditor/ckeditor5-table#28). Closes ckeditor/ckeditor5#900. (a2ef073)Internal changes only (updated dependencies, documentation, etc.).
View#registerChildren() and View#deregisterChildren() have been renamed to View#registerChild() and View#deregisterChild().IconView#fillColor observable which fills child .ck-icon__fill paths with the color (see ckeditor/ckeditor5-theme-lark#148). (728a691)ButtonDropdownView. Closes #333. (6e9c6e4)Also:
ToolbarView thanks to the #isVertical attribute.ToolbarView#className attribute.DropdownView#isEnabled attribute along with the CSS class binding..ck-content CSS class to the EditableUIView in order to simplify styling the editor content. Closes #176. (f38ae70)config.lang to config.languages). Part of the Translation Service v2 (ckeditor/ckeditor5#624). (876f681)ck- instead of cke-. Closes #112. (7973f83)SplitButtonView and new dropdown creation helpers (createDropdown(), addListToDropdown() and addToolbarToDropdown()) Closes #344. Closes #356. (0f26ca8).ck-editor-toolbar and .ck-editor-toolbar-container classes (see ckeditor/ckeditor5-theme-lark#135). (352d056)ContextualToolbar to BalloonToolbar. Closes ckeditor/ckeditor5#550. (28f59df)closeDropdownOnBlur() helper should use clickOutsideHandler(). Decorated the View#render() method. Closes #311. (269e97b)contextual/contextualtoolbar~ContextualToolbar to balloon/balloontoolbar~BalloonToolbar.contextualToolbar configuration option to balloonToolbar.DropdownModel interface – you can use dropdown properties directly now. See #356.createButtonDropdown() and ButtonDropdownView. See #356.createListDropdown() and ListDropdownView. See #356..scss files became unavailable. Please refer to the Theme Customization guide to learn more about migration to PostCSS.Template#getViews() generator should not traverse native HTML elements. Closes #337. Closes ckeditor/ckeditor5#657. (894bad0)value attribute in InputTextView. Closes #335. (823120b)View#render() method which replaces rendering the #element upon the first access and incorporates the #init() method functionality. Closes #262. Closes #302. (bf90ad5)In other words – the View#render() method needs to be called to render a view and it sets the View#element itself. It can be called only once and it is done automatically if a view is added to some other view (as its child). If you need to add any additional logic to your component's initialization, then override the render() method (and remember to call super.render()).
Additionally, from now on View#setTemplate() and View#extendTemplate() methods are recommended as a shorthand for view.template = new Template( { ... } ) and Template.extend( view.template ).
Please refer to the updated [documentation](https://ckeditor.com/docs/ckeditor5/latest/framework/guides/architecture/intro.html#ui-library) to learn more.
width and height attributes from the BoxedEditorUIView. Closes #25. (ffa419a)ComponentFactory should be case-insensitive. Closes #324. (94417e9)View#init() method in UI components has been renamed to render(). Please refer to the documentation to learn more.View#element is no longer a getter which renders an element when first referenced. Use the View#render() method instead.Template#children property became an Array (previously ViewCollection).View#addChildren() and View#removeChildren() methods became #registerChildren() and #deregisterChildren().StickyPanelView has changed along with the class names. Please refer to the component documentation to learn more.ContextualBalloon should remember position passed to #updatePosition(). Closes #305. Closes ckeditor/ckeditor5-image#141. (c787c0d)ContextualToolbar should not be positioned to a zero–width DOM rect when invoked for a multi-line forward selection. Closes #308. (00b701b)ContextualToolbar will accept the object format of config.contextualToolbar. Closes #316. (d71cad8)z-index so it's correctly rendered above images (or other relatively positioned elements). Closes #315. (00f2add)BalloonPanelView should be selectable. Closes #294. Closes https://github.com/ckeditor/ckeditor5/issues/498. (e5315df)View#removeChildren(), the opposite of View#addChildren(). Closes #303. (0f1ea5a)StickyToolbarView with a generic StickyPanelView. Closes #297. (b10b43c)ToolbarView#fillFromConfig() will warn when the factory does not provide a component. Closes #291. Closes ckeditor/ckeditor5#526. (2e63e70)escPressHandler function should be replaced by the KeystrokeHandler. Closes #150. (b322744)Toolbar#fillFromConfig() cannot be now called with an undefined. Make sure to use normalizeToolbarConfig() to get a reliable object.escPressHandler is no longer available. Please
refer to the KeystrokeHandler helper to learn more.StickyToolbarView and corresponding CSS .ck-sticky-panel classes are no longer available. StickyPanelView + ToolbarView combo should be used instead.ContextualToolbar should have proper editor toolbar styling. Closes #230. (4e2ee36)DropdownView should open upon arrow down key press. Closes #249. (c1e6afc)clickOutsideHandler helper should use mousedown instead of mouseup event. Closes #281. (6b980b6)Template class should not throw an error when a child view in the definition has an id attribute set without a value. Closes #289. (d7072ba)TooltipView should hide when the TooltipView#text is empty. The ButtonView's ability to get a tooltip should not be restricted after View initialization. Closes #283. (1588c82)StickyToolbarView now supports a configurable vertical offset from the top of the page. Closes #277. (245f0fa)Also implemented the normalizeToolbarConfig() utility.
TextInputView#isReadOnly and LabeledInputView#isReadOnly states. Closes #266. Closes #268. (111a728)BalloonPanelView position limiter defined as a function. Made ContextualBalloon position limiter configurable via #positionLimiter property. Closes #260. (322563e)InputTextView. Closes #220. (5d91d18)CommandFactory#names(). Closes #287. (4038da2)clickOutsideHandler helper. Closes #261. (9da5bf7)beforeShow event to the ContextualToolbar plugin. Closes #222. (835d0ac)show() and hide() methods in the ContextualToolbar plugin. Closes #263. (eb4caab)BalloonPanelView–based components for the balloon toolbar editor. Closes #236. Closes #234. Closes #224. (737b55f)ContextualToolbar should not show up when all child items are disabled. The ContextualToolbar#beforeShow event has been replaced by ContextualToolbar#show. Closes #269. Closes #232. (d83d07d)StickyToolbarView#limiterOffset has been renamed to StickyToolbarView#limiterBottomOffset.ContextualToolbar#beforeShow is no longer available. Please refer to ContextualToolbar#show instead.clickOutsideHandler helper's contextElement config option is now an Array named contextElements.View#init(), View#destroy() (also ViewCollection#init(), ViewCollection#destroy() and ViewCollection#add()) no longer return Promise. It may require updates in UI components which inherit from View and rely on the value returned by these methods.init() and destroy() (no longer returning Promise), which means that features using these components may need some updates to work properly.BalloonPanelView.defaultPositions and their results have changed. Please refer to the latest API documentation to learn more.T/206a: BalloonPanelView should not be focusable
T/209: FocusCycler should not consider invisible views.
ContextualToolbar plugin. Closes #182. Closes #187. (66a30b1)Introduced several new positions in BalloonPanelView#defaultPositions. Added className attribute to the BalloonPanelView interface.
BREAKING CHANGE: Default positions of the BalloonPanelView have been renamed.
BREAKING CHANGE: Class names controlling the arrow of the panel have been renamed.
FloatingPanelView into BalloonPanelView. Closes #191. (4b90faa)BREAKING CHANGE: FloatingPanelView is no longer available.
BREAKING CHANGE: BalloonPanelView#keepAttachedTo() has been replaced by pin().
BREAKING CHANGE: Default position names in BalloonPanelView.defaultPositions have changed. Now prefixed with arrow_.
BalloonPanelView have been renamed.FloatingPanelView is no longer available.BalloonPanelView#keepAttachedTo() has been replaced by pin().BalloonPanelView.defaultPositions have changed. Now prefixed with arrow_.FloatingPanelView class, Template.revert() method and enableToolbarKeyboardFocus() util. Closes #152. (cb606d7)ComponentFactory will throw an error when attempting to create a non-existent component. Closes #174. (ef0a7f8)ViewCollection#bindTo method to Collection class in ckeditor5-utils. Closes #168. (5b55987)ViewCollection#bindTo.as is renamed to Collection#bindTo.using when mapping function is a parameter. SeeCollection#bindTo docs.ui/balloonpanel/balloonpanelview module was renamed to ui/panel/balloon/balloonpanelview. See #152.