﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
11300	Image2: polishing and refactoring of internals	Olek Nowodziński	Olek Nowodziński	"Some refactoring got to be done to make Image2 flexible and ""environment-friendly"". Those changes are relevant for third-party developers, e.g. for D8.

1. The internal form of the widget got to be styleable: instead of inline styles, we need to introduce classes. With inline styles, the look of the widget is not configurable and possibly incompatible with custom stylesheets during editor's lifetime.
 a. The non-captioned image should have no class.
 b. The class of captioned image must be configurable via `config.image2_captionedClass` and applied to `<figure class=""..."">`.
 c. Class ""caption"" is obsolete so it will be removed.
 d. Alignment also must be controlled with classes.
  I. Classes must be configurable
 d. Tons of '''tests to be aligned''' to the new API.

2. We should guarantee that additional attributes (e.g. `data-*`) are preserved, regardless of the internal state of the widget. Extra attributes must survive any kind of internal processing and re-emerge in editor's output (1:1).
 a. Quite likely it's already working because the image node in DOM is passed along with states of a widget ('''needs tests''').
 b. Alternatively, attributes can be serialized in upcast, saved in widget's data and exploded while downcasting. But let's stick to (a) as an easiest ""solution"" first."	Task	assigned	Normal	CKEditor 4.4	General	4.3		Drupal	wim.leers@…
