ckeditor / ckeditor5

Powerful rich text editor framework with a modular architecture, modern integrations, and features like collaborative editing.
https://ckeditor.com/ckeditor-5
Other
9.5k stars 3.7k forks source link

Improve various navigation scenarios around widgets (mouse, keyboard) #6741

Open oleq opened 4 years ago

oleq commented 4 years ago

There are 3 scenarios we could improve when working on magic block because they add up to the overall user experience of the feature:

Navigating across widgets using the keyboard

Case: p + widget + widget + p

Expected:

  1. A selection in the last line of a text (for instance <paragraph>foo[]bar</paragraph><widget></widget>)
  2. Arrow down: The first widget gets selected.
  3. Arrow down: Magicblock gets activated between the widgets.
  4. Arrow down: The second widget gets selected.
  5. Arrow down: The selection lands in the last paragraph.

Nice to have:

  1. Shift+Arrow – a custom handler.

Making selection across widgets using the mouse (drag)

ATM the selection postfixer breaks the selection (mostly when created backwards).

2020-05-04 17 30 55

Vertical widget ↔ nested editable navigation

Expected:

  1. Enter – Enters the widget (the selection lands in the very first nested editable).
  2. Esc – Moves the slection from the nested editable to the whole widget.
  3. Arrows – They should work like in table cells when in a nested editable.
  4. Tab – It should move the selection to the next nested editable (and cycle).
Reinmar commented 4 years ago

Related tickets: