CKEditor Biweekly for April 26, 2016

Here is the latest CKEditor update. Find out more about our progress with CKEditor 4 and 5 as well as the Editor Recommendations Project we have launched on GitHub. Read on for more!

CKEditor in Review

We have released CKEditor 4.5.8 and we continue to work on CKEditor versions 4.5.9 and 4.6 at the same time focusing our attention on CKEditor 5

CKEditor 4

CKEditor 4.5.9

We are doing our best to release CKEditor 4.5.9 next week. We fixed some focus issues (#14538 and #8679), the issue with the dom.element.removeAttribute() method removing all attributes if no parameter is given (#14602) and minor pasting issues in Internet Explorer (#14312). Also, it is no longer possible to replace content with a wrong letter case (#11697) and we fixed the invalid handling of CKEDITOR.style instance with styles property by CKEDITOR.filter (#13886).

Special thanks go to mdjdenormandie for introducing some CSS syntax corrections (#14535)!

CKEditor 4.6

The release of CKEditor 4.6 has been rescheduled to mid May. We are working on a brand new CKEditor 4 skin which will accompany this release and cover all CKEditor 4 features as well as the Accessibility Checker.

We have also fixed the issue with CKBuilder not adding the timestamp to the image sprite URL (therefore not forcing cache refresh).

CKEditor 5 

Last week we have witnessed a big moment for the CKEditor 5 team - we have integrated together multiple pieces of the engine and everything worked just fine!

We have been working on different parts of the engine for more than a year and a half, but we have never seen them working together in a real environment. Of course, the code has been thoroughly tested, but we still could not be sure that we have predicted everything.

What precisely worked? The entire editing engine (except selection handling which is not ready yet). Data inserted to the model through OT-ready operations were converted to a virtual DOM representation and then rendered to the DOM. Afterwards, editing events (such as typing, deletion, etc.) which happened on the DOM were properly handled, controllers modified the model and all these changes were once again rendered (on request).

Visually the outcome looks like a very basic text editor, nevertheless we were really thrilled! :)

We have also implemented a theme and icon builder. Part of the engine landed on master and we began working on utilities for generating converters (the existing API is very low-level). We finished first versions of Delete and Enter support and started working on typing. We have also progressed on the selection handling and hope to see it ready in two weeks. Selection covers more than half of issues left in the 0.1.0 milestone in the engine, so we may be able to create a developer demo soon!

Other Projects

CKFinder

We are currently pushing towards a stable version of CKFinder 3 for ASP.NET. We are working on support for remote storages (S3 and Azure) and focusing on improving the documentation and making last bug fixes.

Editor Recommendations Project

As you might remember from our previous updates, we have launched the Editor Recommendations Project on GitHub. This project aims to solve a few problems currently faced by both editor developers and implementers who want to introduce content editing into their systems.

Here are the latests updates:

  • We added drafts for Enter and Tab keys.
  • We described keyboard behavior for lists (as can be seen in the "UI / UX" section for bulleted list and numbered list).
  • We added a draft for the "Article Comments" use-case and debated about images in comments.
  • We also added drafts for the "Headings" and "Table" feature.
  • We agreed to use the <figure> element with a proper class attribute for features such as "Image", "Quote", "Table" etc.
  • We stopped pretending that we know anything about image responsiveness ;)

Around the Net

This sums up the last three weeks.

If you would like to be featured in one of our CKEditor Biweeklies, or have an interesting tidbit that relates to CKEditor, leave a comment below or contact us.

Have a great week ahead!