diff --git a/scene/main/viewport.cpp b/scene/main/viewport.cpp index 79502c74ceb..3bb3a704682 100644 --- a/scene/main/viewport.cpp +++ b/scene/main/viewport.cpp @@ -1836,8 +1836,9 @@ void Viewport::_gui_input_event(InputEvent p_event) { Size2 pos = mpos; pos = gui.focus_inv_xform.xform(pos); - - gui.mouse_over->drop_data(pos,gui.drag_data); + if (gui.mouse_over->can_drop_data(pos,gui.drag_data)) { + gui.mouse_over->drop_data(pos,gui.drag_data); + } gui.drag_data=Variant(); _propagate_viewport_notification(this,NOTIFICATION_DRAG_END); //change mouse accordingly