fix dragging cursor off-screen

This commit is contained in:
galister
2024-09-25 04:16:37 +09:00
parent 8d35b45c2b
commit a077f2dda4

View File

@@ -313,15 +313,17 @@ where
pointer = &mut app.input_state.pointers[idx]; pointer = &mut app.input_state.pointers[idx];
pointer.interaction.hovered_id = None; pointer.interaction.hovered_id = None;
} }
if let Some(clicked_id) = pointer.interaction.clicked_id.take() { if !pointer.now.click && pointer.before.click {
if let Some(clicked) = overlays.mut_by_id(clicked_id) { if let Some(clicked_id) = pointer.interaction.clicked_id.take() {
let hit = PointerHit { if let Some(clicked) = overlays.mut_by_id(clicked_id) {
pointer: pointer.idx, let hit = PointerHit {
overlay: clicked_id, pointer: pointer.idx,
mode: pointer.interaction.mode, overlay: clicked_id,
..Default::default() mode: pointer.interaction.mode,
}; ..Default::default()
clicked.backend.on_pointer(app, &hit, false); };
clicked.backend.on_pointer(app, &hit, false);
}
} }
} }
return (0.0, None); // no hit return (0.0, None); // no hit