pub enum DropFeedback {
InsertionLine {
y: f32,
width: f32,
},
HighlightRect {
rect: Rect,
color: Color,
},
Accept,
NoFeedback,
}Expand description
A drop target’s response to a drag hovering over it.
The variant decides hover bubbling: a target that returns
NoFeedback does not engage the payload, so the
drag passes through to the next drop target up the tree. Any engaging
variant (Accept, InsertionLine,
HighlightRect) stops the bubble and settles the
drop target for the rest of the drag.
On release, on_drop runs once on that settled target; its returned bool
reports acceptance to the source via DropOutcome::InApp { accepted } — it
does not re-bubble to another target when it returns false (the target
was already chosen during the hover phase).
Variants§
InsertionLine
A horizontal line at the given Y coordinate, spanning the given width. Used for insertion between list items. Engages the target.
HighlightRect
A highlighted rectangle. Used for container/folder drops. Engages the target.
Accept
Accepted, but the target draws its own visual (signal-driven, e.g.
DropTarget’s is_targeted border) — the framework renders nothing
extra. Engages the target (stops bubbling), distinct from NoFeedback.
NoFeedback
The payload is not accepted by this target — the drag bubbles to the next drop target up the tree (hover phase). The framework renders nothing.
Implementations§
Source§impl DropFeedback
impl DropFeedback
Sourcepub fn is_engaged(&self) -> bool
pub fn is_engaged(&self) -> bool
Whether this response engages the payload (stops drop-target bubbling).
Everything except NoFeedback engages.
Trait Implementations§
Source§impl Clone for DropFeedback
impl Clone for DropFeedback
Source§fn clone(&self) -> DropFeedback
fn clone(&self) -> DropFeedback
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more