@ckeditor/ckeditor5-ui 43.2.0 → 43.3.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dialog/dialog.d.ts +16 -0
- package/dist/dialog/dialogview.d.ts +3 -1
- package/dist/editorui/accessibilityhelp/accessibilityhelp.d.ts +4 -0
- package/dist/index-editor.css +12 -15
- package/dist/index.css +14 -15
- package/dist/index.css.map +1 -1
- package/dist/index.js +101 -30
- package/dist/index.js.map +1 -1
- package/dist/notification/notification.d.ts +4 -0
- package/dist/panel/balloon/contextualballoon.d.ts +4 -0
- package/dist/toolbar/balloon/balloontoolbar.d.ts +4 -0
- package/dist/toolbar/block/blocktoolbar.d.ts +4 -0
- package/dist/translations/ar.js +1 -1
- package/dist/translations/ar.umd.js +1 -1
- package/dist/translations/bs.js +1 -1
- package/dist/translations/bs.umd.js +1 -1
- package/dist/translations/cs.js +1 -1
- package/dist/translations/cs.umd.js +1 -1
- package/dist/translations/en.js +1 -1
- package/dist/translations/en.umd.js +1 -1
- package/dist/translations/es-co.js +1 -1
- package/dist/translations/es-co.umd.js +1 -1
- package/dist/translations/es.js +1 -1
- package/dist/translations/es.umd.js +1 -1
- package/dist/translations/fa.js +1 -1
- package/dist/translations/fa.umd.js +1 -1
- package/dist/translations/fr.js +1 -1
- package/dist/translations/fr.umd.js +1 -1
- package/dist/translations/gu.d.ts +8 -0
- package/dist/translations/gu.js +5 -0
- package/dist/translations/gu.umd.js +11 -0
- package/dist/translations/he.js +1 -1
- package/dist/translations/he.umd.js +1 -1
- package/dist/translations/hr.js +1 -1
- package/dist/translations/hr.umd.js +1 -1
- package/dist/translations/hy.d.ts +8 -0
- package/dist/translations/hy.js +5 -0
- package/dist/translations/hy.umd.js +11 -0
- package/dist/translations/it.js +1 -1
- package/dist/translations/it.umd.js +1 -1
- package/dist/translations/jv.js +1 -1
- package/dist/translations/jv.umd.js +1 -1
- package/dist/translations/kk.d.ts +8 -0
- package/dist/translations/kk.js +5 -0
- package/dist/translations/kk.umd.js +11 -0
- package/dist/translations/kn.js +1 -1
- package/dist/translations/kn.umd.js +1 -1
- package/dist/translations/lt.js +1 -1
- package/dist/translations/lt.umd.js +1 -1
- package/dist/translations/lv.js +1 -1
- package/dist/translations/lv.umd.js +1 -1
- package/dist/translations/oc.d.ts +8 -0
- package/dist/translations/oc.js +5 -0
- package/dist/translations/oc.umd.js +11 -0
- package/dist/translations/pl.js +1 -1
- package/dist/translations/pl.umd.js +1 -1
- package/dist/translations/pt-br.js +1 -1
- package/dist/translations/pt-br.umd.js +1 -1
- package/dist/translations/pt.js +1 -1
- package/dist/translations/pt.umd.js +1 -1
- package/dist/translations/ro.js +1 -1
- package/dist/translations/ro.umd.js +1 -1
- package/dist/translations/ru.js +1 -1
- package/dist/translations/ru.umd.js +1 -1
- package/dist/translations/si.d.ts +8 -0
- package/dist/translations/si.js +5 -0
- package/dist/translations/si.umd.js +11 -0
- package/dist/translations/sk.js +1 -1
- package/dist/translations/sk.umd.js +1 -1
- package/dist/translations/sl.js +1 -1
- package/dist/translations/sl.umd.js +1 -1
- package/dist/translations/sr-latn.js +1 -1
- package/dist/translations/sr-latn.umd.js +1 -1
- package/dist/translations/sr.js +1 -1
- package/dist/translations/sr.umd.js +1 -1
- package/dist/translations/ug.js +1 -1
- package/dist/translations/ug.umd.js +1 -1
- package/dist/translations/uk.js +1 -1
- package/dist/translations/uk.umd.js +1 -1
- package/dist/translations/uz.js +1 -1
- package/dist/translations/uz.umd.js +1 -1
- package/lang/translations/af.po +3 -9
- package/lang/translations/ar.po +4 -10
- package/lang/translations/ast.po +3 -9
- package/lang/translations/az.po +3 -9
- package/lang/translations/bg.po +3 -9
- package/lang/translations/bn.po +3 -9
- package/lang/translations/bs.po +4 -10
- package/lang/translations/ca.po +3 -9
- package/lang/translations/cs.po +4 -10
- package/lang/translations/da.po +3 -9
- package/lang/translations/de-ch.po +3 -9
- package/lang/translations/de.po +3 -9
- package/lang/translations/el.po +3 -9
- package/lang/translations/en-au.po +3 -9
- package/lang/translations/en-gb.po +3 -9
- package/lang/translations/en.po +5 -11
- package/lang/translations/eo.po +3 -9
- package/lang/translations/es-co.po +4 -10
- package/lang/translations/es.po +4 -10
- package/lang/translations/et.po +3 -9
- package/lang/translations/eu.po +3 -9
- package/lang/translations/fa.po +4 -10
- package/lang/translations/fi.po +3 -9
- package/lang/translations/fr.po +4 -10
- package/lang/translations/gl.po +3 -9
- package/lang/translations/gu.po +208 -0
- package/lang/translations/he.po +4 -10
- package/lang/translations/hi.po +3 -9
- package/lang/translations/hr.po +4 -10
- package/lang/translations/hu.po +3 -9
- package/lang/translations/hy.po +208 -0
- package/lang/translations/id.po +3 -9
- package/lang/translations/it.po +4 -10
- package/lang/translations/ja.po +3 -9
- package/lang/translations/jv.po +4 -10
- package/lang/translations/kk.po +208 -0
- package/lang/translations/km.po +3 -9
- package/lang/translations/kn.po +4 -10
- package/lang/translations/ko.po +3 -9
- package/lang/translations/ku.po +3 -9
- package/lang/translations/lt.po +4 -10
- package/lang/translations/lv.po +4 -10
- package/lang/translations/ms.po +3 -9
- package/lang/translations/nb.po +3 -9
- package/lang/translations/ne.po +3 -9
- package/lang/translations/nl.po +3 -9
- package/lang/translations/no.po +3 -9
- package/lang/translations/oc.po +208 -0
- package/lang/translations/pl.po +4 -10
- package/lang/translations/pt-br.po +4 -10
- package/lang/translations/pt.po +4 -10
- package/lang/translations/ro.po +4 -10
- package/lang/translations/ru.po +4 -10
- package/lang/translations/si.po +208 -0
- package/lang/translations/sk.po +4 -10
- package/lang/translations/sl.po +4 -10
- package/lang/translations/sq.po +3 -9
- package/lang/translations/sr-latn.po +4 -10
- package/lang/translations/sr.po +4 -10
- package/lang/translations/sv.po +3 -9
- package/lang/translations/th.po +3 -9
- package/lang/translations/ti.po +3 -9
- package/lang/translations/tk.po +3 -9
- package/lang/translations/tr.po +3 -9
- package/lang/translations/tt.po +3 -9
- package/lang/translations/ug.po +4 -10
- package/lang/translations/uk.po +4 -10
- package/lang/translations/ur.po +3 -9
- package/lang/translations/uz.po +4 -10
- package/lang/translations/vi.po +3 -9
- package/lang/translations/zh-cn.po +3 -9
- package/lang/translations/zh.po +3 -9
- package/package.json +4 -4
- package/src/dialog/dialog.d.ts +16 -0
- package/src/dialog/dialog.js +31 -0
- package/src/dialog/dialogview.d.ts +3 -1
- package/src/dialog/dialogview.js +26 -17
- package/src/dropdown/menu/dropdownmenunestedmenuview.js +1 -0
- package/src/dropdown/utils.js +17 -2
- package/src/editorui/accessibilityhelp/accessibilityhelp.d.ts +4 -0
- package/src/editorui/accessibilityhelp/accessibilityhelp.js +6 -0
- package/src/editorui/editorui.js +2 -2
- package/src/notification/notification.d.ts +4 -0
- package/src/notification/notification.js +6 -0
- package/src/panel/balloon/contextualballoon.d.ts +4 -0
- package/src/panel/balloon/contextualballoon.js +6 -0
- package/src/toolbar/balloon/balloontoolbar.d.ts +4 -0
- package/src/toolbar/balloon/balloontoolbar.js +7 -1
- package/src/toolbar/block/blocktoolbar.d.ts +4 -0
- package/src/toolbar/block/blocktoolbar.js +6 -0
- package/src/toolbar/toolbarview.js +3 -3
- package/theme/components/dialog/dialog.css +5 -2
- package/theme/mixins/_dir.css +1 -1
|
@@ -95,6 +95,7 @@ class DropdownMenuNestedMenuView extends View {
|
|
|
95
95
|
this.panelView.render();
|
|
96
96
|
this.focusTracker.add(this.buttonView.element);
|
|
97
97
|
this.focusTracker.add(this.panelView.element);
|
|
98
|
+
this.focusTracker.add(this.listView);
|
|
98
99
|
// Listen for keystrokes coming from within #element.
|
|
99
100
|
this.keystrokes.listenTo(this.element);
|
|
100
101
|
this._mountPanelOnOpen();
|
package/src/dropdown/utils.js
CHANGED
|
@@ -159,6 +159,7 @@ export function createDropdown(locale, ButtonClassOrInstance = DropdownButtonVie
|
|
|
159
159
|
*/
|
|
160
160
|
export function addMenuToDropdown(dropdownView, body, definition, options = {}) {
|
|
161
161
|
dropdownView.menuView = new DropdownMenuRootListView(dropdownView.locale, body, definition);
|
|
162
|
+
dropdownView.focusTracker.add(dropdownView.menuView);
|
|
162
163
|
if (dropdownView.isOpen) {
|
|
163
164
|
addMenuToOpenDropdown(dropdownView, options);
|
|
164
165
|
}
|
|
@@ -183,7 +184,7 @@ function addMenuToOpenDropdown(dropdownView, options) {
|
|
|
183
184
|
// Nested menu panels are added to body collection, so they are not children of the `dropdownView` from DOM perspective.
|
|
184
185
|
// Add these panels to `dropdownView` focus tracker, so they are treated like part of the `dropdownView` for focus-related purposes.
|
|
185
186
|
for (const menu of dropdownMenuRootListView.menus) {
|
|
186
|
-
dropdownView.focusTracker.add(menu
|
|
187
|
+
dropdownView.focusTracker.add(menu);
|
|
187
188
|
}
|
|
188
189
|
dropdownMenuRootListView.ariaLabel = options.ariaLabel || t('Dropdown menu');
|
|
189
190
|
}
|
|
@@ -276,6 +277,7 @@ function addToolbarToOpenDropdown(dropdownView, buttonsOrCallback, options) {
|
|
|
276
277
|
toolbarView.items.addMany(buttons);
|
|
277
278
|
}
|
|
278
279
|
dropdownView.panelView.children.add(toolbarView);
|
|
280
|
+
dropdownView.focusTracker.add(toolbarView);
|
|
279
281
|
toolbarView.items.delegate('execute').to(dropdownView);
|
|
280
282
|
}
|
|
281
283
|
/**
|
|
@@ -419,10 +421,23 @@ function closeDropdownOnClickOutside(dropdownView) {
|
|
|
419
421
|
},
|
|
420
422
|
contextElements: () => [
|
|
421
423
|
dropdownView.element,
|
|
422
|
-
|
|
424
|
+
// Include all elements connected to the dropdown's focus tracker, but exclude those that are direct children
|
|
425
|
+
// of DropdownView#element. They would be identified as descendants of #element anyway upon clicking and would
|
|
426
|
+
// not contribute to the logic.
|
|
427
|
+
...getFocusTrackerTreeElements(dropdownView.focusTracker).filter(element => !dropdownView.element.contains(element))
|
|
423
428
|
]
|
|
424
429
|
});
|
|
425
430
|
}
|
|
431
|
+
/**
|
|
432
|
+
* Returns all DOM elements connected to a DropdownView's focus tracker, either directly (same DOM sub-tree)
|
|
433
|
+
* or indirectly (external views registered in the focus tracker).
|
|
434
|
+
*/
|
|
435
|
+
function getFocusTrackerTreeElements(focusTracker) {
|
|
436
|
+
return [
|
|
437
|
+
...focusTracker.elements,
|
|
438
|
+
...focusTracker.externalViews.flatMap(view => getFocusTrackerTreeElements(view.focusTracker))
|
|
439
|
+
];
|
|
440
|
+
}
|
|
426
441
|
/**
|
|
427
442
|
* Adds a behavior to a dropdownView that closes the dropdown view on "execute" event.
|
|
428
443
|
*/
|
package/src/editorui/editorui.js
CHANGED
|
@@ -179,12 +179,12 @@ export default class EditorUI extends /* #__PURE__ */ ObservableMixin() {
|
|
|
179
179
|
*/
|
|
180
180
|
addToolbar(toolbarView, options = {}) {
|
|
181
181
|
if (toolbarView.isRendered) {
|
|
182
|
-
this.focusTracker.add(toolbarView
|
|
182
|
+
this.focusTracker.add(toolbarView);
|
|
183
183
|
this.editor.keystrokes.listenTo(toolbarView.element);
|
|
184
184
|
}
|
|
185
185
|
else {
|
|
186
186
|
toolbarView.once('render', () => {
|
|
187
|
-
this.focusTracker.add(toolbarView
|
|
187
|
+
this.focusTracker.add(toolbarView);
|
|
188
188
|
this.editor.keystrokes.listenTo(toolbarView.element);
|
|
189
189
|
});
|
|
190
190
|
}
|
|
@@ -26,6 +26,12 @@ export default class BalloonToolbar extends Plugin {
|
|
|
26
26
|
static get pluginName() {
|
|
27
27
|
return 'BalloonToolbar';
|
|
28
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* @inheritDoc
|
|
31
|
+
*/
|
|
32
|
+
static get isOfficialPlugin() {
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
29
35
|
/**
|
|
30
36
|
* @inheritDoc
|
|
31
37
|
*/
|
|
@@ -52,7 +58,7 @@ export default class BalloonToolbar extends Plugin {
|
|
|
52
58
|
this.focusTracker = new FocusTracker();
|
|
53
59
|
// Track focusable elements in the toolbar and the editable elements.
|
|
54
60
|
this._trackFocusableEditableElements();
|
|
55
|
-
this.focusTracker.add(this.toolbarView
|
|
61
|
+
this.focusTracker.add(this.toolbarView);
|
|
56
62
|
// Register the toolbar so it becomes available for Alt+F10 and Esc navigation.
|
|
57
63
|
editor.ui.addToolbar(this.toolbarView, {
|
|
58
64
|
beforeFocus: () => this.show(true),
|
|
@@ -103,13 +103,13 @@ export default class ToolbarView extends View {
|
|
|
103
103
|
this.focusTracker.add(this.element);
|
|
104
104
|
// Children added before rendering should be known to the #focusTracker.
|
|
105
105
|
for (const item of this.items) {
|
|
106
|
-
this.focusTracker.add(item
|
|
106
|
+
this.focusTracker.add(item);
|
|
107
107
|
}
|
|
108
108
|
this.items.on('add', (evt, item) => {
|
|
109
|
-
this.focusTracker.add(item
|
|
109
|
+
this.focusTracker.add(item);
|
|
110
110
|
});
|
|
111
111
|
this.items.on('remove', (evt, item) => {
|
|
112
|
-
this.focusTracker.remove(item
|
|
112
|
+
this.focusTracker.remove(item);
|
|
113
113
|
});
|
|
114
114
|
// Start listening for the keystrokes coming from #element.
|
|
115
115
|
this.keystrokes.listenTo(this.element);
|
|
@@ -27,13 +27,16 @@
|
|
|
27
27
|
|
|
28
28
|
& .ck.ck-form__header {
|
|
29
29
|
flex-shrink: 0;
|
|
30
|
+
}
|
|
30
31
|
|
|
31
|
-
|
|
32
|
+
/* Modals should not be draggable. */
|
|
33
|
+
&:not(.ck-dialog_modal) {
|
|
34
|
+
& .ck.ck-form__header .ck-form__header__label {
|
|
32
35
|
cursor: grab;
|
|
33
36
|
}
|
|
34
37
|
}
|
|
35
38
|
|
|
36
|
-
|
|
39
|
+
.ck.ck-dialog-overlay.ck-dialog-overlay__transparent & {
|
|
37
40
|
pointer-events: all;
|
|
38
41
|
}
|
|
39
42
|
}
|