mirror of
https://github.com/Drezil/imgui.git
synced 2025-07-13 16:29:54 +02:00
Merge branch 'master' into docking
# Conflicts: # docs/CHANGELOG.txt # examples/example_win32_directx11/main.cpp # examples/example_win32_directx9/main.cpp # examples/imgui_impl_win32.cpp # examples/imgui_impl_win32.h # imgui.cpp
This commit is contained in:
10
imgui.cpp
10
imgui.cpp
@ -1,4 +1,4 @@
|
||||
// dear imgui, v1.75
|
||||
// dear imgui, v1.76 WIP
|
||||
// (main code and documentation)
|
||||
|
||||
// Help:
|
||||
@ -3387,6 +3387,9 @@ void ImGui::StartMouseMovingWindowOrNode(ImGuiWindow* window, ImGuiDockNode* nod
|
||||
|
||||
// Handle mouse moving window
|
||||
// Note: moving window with the navigation keys (Square + d-pad / CTRL+TAB + Arrows) are processed in NavUpdateWindowing()
|
||||
// FIXME: We don't have strong guarantee that g.MovingWindow stay synched with g.ActiveId == g.MovingWindow->MoveId.
|
||||
// This is currently enforced by the fact that BeginDragDropSource() is setting all g.ActiveIdUsingXXXX flags to inhibit navigation inputs,
|
||||
// but if we should more thoroughly test cases where g.ActiveId or g.MovingWindow gets changed and not the other.
|
||||
void ImGui::UpdateMouseMovingWindowNewFrame()
|
||||
{
|
||||
ImGuiContext& g = *GImGui;
|
||||
@ -9772,6 +9775,11 @@ bool ImGui::BeginDragDropSource(ImGuiDragDropFlags flags)
|
||||
return false;
|
||||
source_parent_id = window->IDStack.back();
|
||||
source_drag_active = IsMouseDragging(mouse_button);
|
||||
|
||||
// Disable navigation and key inputs while dragging
|
||||
g.ActiveIdUsingNavDirMask = ~(ImU32)0;
|
||||
g.ActiveIdUsingNavInputMask = ~(ImU32)0;
|
||||
g.ActiveIdUsingKeyInputMask = ~(ImU64)0;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Reference in New Issue
Block a user