Преглед изворни кода

Merge pull request #59709 from Sauermann/fix-dragndrop-subviewport-transform

Rémi Verschelde пре 3 година
родитељ
комит
1358efde1f
1 измењених фајлова са 4 додато и 2 уклоњено
  1. 4 2
      scene/main/viewport.cpp

+ 4 - 2
scene/main/viewport.cpp

@@ -1851,8 +1851,10 @@ void Viewport::_gui_input_event(Ref<InputEvent> p_event) {
 			}
 			}
 
 
 			if (viewport_under) {
 			if (viewport_under) {
-				Transform2D ai = (viewport_under->get_final_transform().affine_inverse() * viewport_under->_get_input_pre_xform());
-				viewport_pos = ai.xform(viewport_pos);
+				if (viewport_under != this) {
+					Transform2D ai = (viewport_under->get_final_transform().affine_inverse() * viewport_under->_get_input_pre_xform());
+					viewport_pos = ai.xform(viewport_pos);
+				}
 				// Find control under at position.
 				// Find control under at position.
 				gui.drag_mouse_over = viewport_under->gui_find_control(viewport_pos);
 				gui.drag_mouse_over = viewport_under->gui_find_control(viewport_pos);
 				if (gui.drag_mouse_over) {
 				if (gui.drag_mouse_over) {