Block Editor: Eliminate sibling inserter dead zone #18733
Labels
[Feature] Writing Flow
Block selection, navigation, splitting, merging, deletion...
[Status] In Progress
Tracking issues with work in progress
[Type] Enhancement
A suggestion for improvement.
Previously: #16818
As seen in the image below, there are areas between two paragraph blocks wherein clicks do not register to focus one or the other block:
In my mind, an ideal user interaction for clicks between two paragraphs is that it behave similar to continuous text of any other textarea, WYSIWYG, or word processor document; namely, that it place the text caret at the point closest to where the click occurred:
Generalizing this to all blocks, I'd argue that the area between the borders of a block and its content should be treated effectively as its padding, and as with padding of any other focusable field, transition clicks into the field. The current behavior is more akin to margin applied on the block.
Padding vs. Margin Illustration: https://codepen.io/aduth/pen/KOmLav
This may require a rethink of how the sibling inserter behaves. Currently, there is a challenge in implementing the desired behavior because the sibling inserter is meant to be shown when hovering anywhere between two blocks, not just toward the center. If the sibling inserter is to be kept the way it is, there might need to be some implementation of a
HoverableNoPointerInteraction
component, which behaves likepointer-events: none;
to allow a click pass-through, while still responding tohover
events to allow the sibling inserter to be shown (proof-of-concept).Alternatively, we could consider a more significant rethink or removal of the sibling inserter altogether.
The text was updated successfully, but these errors were encountered: