瀏覽代碼

Properly handle multiple parent drag, fixes #19460

Juan Linietsky 6 年之前
父節點
當前提交
55ded6b2de
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6 0
      scene/main/viewport.cpp

+ 6 - 0
scene/main/viewport.cpp

@@ -1900,7 +1900,13 @@ void Viewport::_gui_input_event(Ref<InputEvent> p_event) {
 							if (gui.drag_data.get_type() != Variant::NIL) {
 
 								gui.mouse_focus = NULL;
+								break;
 							} else {
+								if (gui.drag_preview != NULL) {
+									ERR_PRINT("Don't set a drag preview and return null data. Preview was deleted and drag request ignored.");
+									memdelete(gui.drag_preview);
+									gui.drag_preview = NULL;
+								}
 								gui.dragging = false;
 							}