|
|
|
@ -1762,7 +1762,7 @@ bool ImGui::IsHovered(const ImRect& bb, ImGuiID id, bool flatten_childs) |
|
|
|
|
{ |
|
|
|
|
ImGuiWindow* window = GetCurrentWindowRead(); |
|
|
|
|
if (g.HoveredWindow == window || (flatten_childs && g.HoveredRootWindow == window->RootWindow)) |
|
|
|
|
if ((g.ActiveId == 0 || g.ActiveId == id || g.ActiveIdAllowOverlap) && ImGui::IsMouseHoveringRect(bb.Min, bb.Max)) |
|
|
|
|
if ((g.ActiveId == 0 || g.ActiveId == id || g.ActiveIdAllowOverlap) && IsMouseHoveringRect(bb.Min, bb.Max)) |
|
|
|
|
if (IsWindowContentHoverable(g.HoveredRootWindow)) |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
@ -5279,17 +5279,12 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool |
|
|
|
|
SetActiveID(id, window); // Hold on ID
|
|
|
|
|
FocusWindow(window); |
|
|
|
|
} |
|
|
|
|
if ((flags & ImGuiButtonFlags_PressedOnClick) && g.IO.MouseClicked[0]) |
|
|
|
|
if (((flags & ImGuiButtonFlags_PressedOnClick) && g.IO.MouseClicked[0]) || ((flags & ImGuiButtonFlags_PressedOnDoubleClick) && g.IO.MouseDoubleClicked[0])) |
|
|
|
|
{ |
|
|
|
|
pressed = true; |
|
|
|
|
SetActiveID(0); |
|
|
|
|
FocusWindow(window); |
|
|
|
|
} |
|
|
|
|
if ((flags & ImGuiButtonFlags_PressedOnDoubleClick) && g.IO.MouseDoubleClicked[0]) |
|
|
|
|
{ |
|
|
|
|
pressed = true; |
|
|
|
|
FocusWindow(window); |
|
|
|
|
} |
|
|
|
|
if ((flags & ImGuiButtonFlags_PressedOnRelease) && g.IO.MouseReleased[0]) |
|
|
|
|
{ |
|
|
|
|
pressed = true; |
|
|
|
|