Fix offset in Viewport drag movement
The initial offset was using the mouse position when the threshold was reached instead of the initial click position. This was adding the drag threshold distance as an extra offset to the final transformation. Now the offset is calculated from the initial click position.
This commit is contained in:
parent
2681d93b8a
commit
cfacd9c057
2 changed files with 2 additions and 2 deletions
|
|
@ -2339,7 +2339,7 @@ bool CanvasItemEditor::_gui_input_select(const Ref<InputEvent> &p_event) {
|
|||
|
||||
if (selection2.size() > 0) {
|
||||
drag_type = DRAG_MOVE;
|
||||
drag_from = click;
|
||||
drag_from = drag_start_origin;
|
||||
_save_canvas_item_state(drag_selection);
|
||||
}
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -1749,7 +1749,7 @@ void Node3DEditorViewport::_sinput(const Ref<InputEvent> &p_event) {
|
|||
} else {
|
||||
const bool movement_threshold_passed = _edit.original_mouse_pos.distance_to(_edit.mouse_pos) > 8 * EDSCALE;
|
||||
if (clicked.is_valid() && movement_threshold_passed) {
|
||||
_compute_edit(_edit.mouse_pos);
|
||||
_compute_edit(_edit.original_mouse_pos);
|
||||
clicked = ObjectID();
|
||||
|
||||
_edit.mode = TRANSFORM_TRANSLATE;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue