Browse Source

Fix the issue preventing dragging in the 2D and visual shader editor

Fredia Huya-Kouadio 2 years ago
parent
commit
2c7633dce5
1 changed files with 6 additions and 1 deletions
  1. 6 1
      scene/gui/view_panner.cpp

+ 6 - 1
scene/gui/view_panner.cpp

@@ -130,7 +130,12 @@ bool ViewPanner::gui_input(const Ref<InputEvent> &p_event, Rect2 p_canvas_rect)
 
 	Ref<InputEventScreenDrag> screen_drag = p_event;
 	if (screen_drag.is_valid()) {
-		callback_helper(pan_callback, varray(screen_drag->get_relative(), p_event));
+		if (Input::get_singleton()->is_emulating_mouse_from_touch() || Input::get_singleton()->is_emulating_touch_from_mouse()) {
+			// This set of events also generates/is generated by
+			// InputEventMouseButton/InputEventMouseMotion events which will be processed instead.
+		} else {
+			callback_helper(pan_callback, varray(screen_drag->get_relative(), p_event));
+		}
 	}
 
 	Ref<InputEventKey> k = p_event;