Avoid sending double CameraMotion Stop events

This commit is contained in:
Danny McGee
2024-02-28 02:55:54 -05:00
parent 04ba5bad69
commit 8293789bf6
+11 -5
View File
@@ -177,11 +177,17 @@ fn translate_dcc_camera_events(
else if (keyboard.just_released(KeyCode::AltLeft) && !keyboard.pressed(KeyCode::AltRight)) else if (keyboard.just_released(KeyCode::AltLeft) && !keyboard.pressed(KeyCode::AltRight))
|| (keyboard.just_released(KeyCode::AltRight) && !keyboard.pressed(KeyCode::AltLeft)) || (keyboard.just_released(KeyCode::AltRight) && !keyboard.pressed(KeyCode::AltLeft))
{ {
input.send(InputAction( // Stop Camera Orbit
Lifecycle::Stop, if mouse_buttons.pressed(MouseButton::Left) {
CameraMotion::Orbit(Vec2::ZERO).into(), input.send(InputAction(
)); Lifecycle::Stop,
input.send(InputAction(Lifecycle::Stop, CameraMotion::Zoom(0.).into())); CameraMotion::Orbit(Vec2::ZERO).into(),
));
}
// Stop Camera Zoom
else if mouse_buttons.pressed(MouseButton::Right) {
input.send(InputAction(Lifecycle::Stop, CameraMotion::Zoom(0.).into()));
}
} }
// Camera Rotation // Camera Rotation
else if mouse_buttons.pressed(MouseButton::Right) { else if mouse_buttons.pressed(MouseButton::Right) {