Writing Flow: More reliable block clear via focus bubbling #5543
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request seeks to improve reliability of the block click-to-clear behavior. The
BlockSelectionClearer
component in use works by checking whether the target of a click is thediv
rendered by the clearer. However, since there are often many block-level elements spanning full width between the selection clearer and where the click occurs (e.g. space adjacent the post title), clicking in these areas would not clear the block.The changes proposed here instead assign the clearer as a (non-tabbable) focusable element which clears selection when the clearer
div
is the target of the focus. This way, even if the user clicks in a block-level element, if that element is not focusable, it will not be the target of the event.Testing instructions:
Edge cases to consider: