Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceExtern. (#143)

Amend 0c6e260f7
This commit is contained in:
ocornut 2024-06-19 13:36:58 -07:00
parent 21bda2ed99
commit 32a037c030
2 changed files with 4 additions and 0 deletions

View File

@ -60,6 +60,8 @@ Other changes:
- TabBar, Style: added ImGuiTabBarFlags_DrawSelectedOverline option to draw an horizontal
line over selected tabs to increase visibility. This is used by docking.
Added corresponding ImGuiCol_TabSelectedOverline and ImGuiCol_TabDimmedSelectedOverline colors.
- Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceExtern sets
active id so a multi-frame extern source doesn't interfere with hovered widgets. (#143)
- Examples: GLFW+Vulkan, SDL+Vulkan: handle swap chain resize even without Vulkan
returning VK_SUBOPTIMAL_KHR, which doesn't seem to happen on Wayland. (#7671)
[@AndreiNego, @ocornut]

View File

@ -13234,6 +13234,8 @@ bool ImGui::BeginDragDropSource(ImGuiDragDropFlags flags)
window = NULL;
source_id = ImHashStr("#SourceExtern");
source_drag_active = true;
KeepAliveID(source_id);
SetActiveID(source_id, NULL);
}
IM_ASSERT(g.DragDropWithinTarget == false); // Can't nest BeginDragDropSource() and BeginDragDropTarget()