Reject stale drawing packets before retiring Allocation gestures
This commit is contained in:
@@ -1308,6 +1308,18 @@ impl App {
|
||||
let preview_read_only = self.process_preview_primary().is_some();
|
||||
let selection_boundary = self.multiselect_boundary();
|
||||
// Reject delayed gestures before they can retire newer input ownership.
|
||||
if let Message::Connection(
|
||||
crate::connection_edit::Event::Endpoint(captured, _)
|
||||
| crate::connection_edit::Event::Restart(captured),
|
||||
) = &message
|
||||
&& (self.route_context() != Some(*captured)
|
||||
|| self
|
||||
.connection
|
||||
.as_ref()
|
||||
.is_none_or(|session| session.context != *captured))
|
||||
{
|
||||
return Task::none();
|
||||
}
|
||||
if let Message::DiagramSelection(event)
|
||||
| Message::StateDiagram(crate::behavior::state_edit::Event::Selection(event)) = &message
|
||||
&& !self.multiselect_envelope(event)
|
||||
|
||||
Reference in New Issue
Block a user