Browse Source

Make dure to only call drop_data if can_drop_data returned true, closes #4616

Juan Linietsky 9 years ago
parent
commit
0e07f49a03
1 changed files with 3 additions and 2 deletions
  1. 3 2
      scene/main/viewport.cpp

+ 3 - 2
scene/main/viewport.cpp

@@ -1836,8 +1836,9 @@ void Viewport::_gui_input_event(InputEvent p_event) {
 
 
 						Size2 pos = mpos;
 						Size2 pos = mpos;
 						pos = gui.focus_inv_xform.xform(pos);
 						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();
 						gui.drag_data=Variant();
 						_propagate_viewport_notification(this,NOTIFICATION_DRAG_END);
 						_propagate_viewport_notification(this,NOTIFICATION_DRAG_END);
 						//change mouse accordingly
 						//change mouse accordingly