Publish DragEvent::Canceled
always when picked Pane
is dropped outside valid target area
#2654
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.
Currently a
pane_grid::DragEvent::Canceled
is not published when a pickedpane_grid::Pane
is dropped near the origin point where it was picked up (closer thanDRAG_DEADBAND_DISTANCE
) or outside the window. However in both cases in the pane grid statepane_grid::Memory
the action state gets set fromAction::Dragging
toAction::Idle
i.e. cancelling the dragging action.As such, clicking a pane title bar produces
DragEvent::Picked
event but not subsequentDragEvent::Canceled
, leaving a user who needs to track the dragging state thinking the pane is being dragged while it is not.This change adds publishing
Canceled
variant in the aforementioned cases. Thus, dropping a picked pane will always produce eitherDropped
orCanceled
variant depending whether the drop point was a validpane_grid:::Target
area.