fix(drag-n-drop): prevent block selection on file drop (#2980) #2981
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.
Problem:
When dropping a file (e.g., image) onto a block, the editor currently highlights the block as "Selected" (adds the .ce-block--selected class). This leaves a persistent blue background behind the dropped content, which is incorrect behavior for a drag-and-drop action.
Fix:
Removed forced caret placement: The dragNDrop module was calling Caret.setToBlock(targetBlock) upon drop. This action forces the block to be focused/selected. I removed this call to prevent the block from capturing selection during a drop event.
Ensured Selection Clearing: Added a safety check to explicitly clear block selection (BlockSelection.clearSelection()) after the drop is processed, ensuring a clean state.
Verification:
Verified manually in a reproduction environment.
Result: Dropping a file now correctly inserts/uploads the file without toggling the "Selected" state of the block. No blue background appears.
Resolves #2980