|
|
|
@ -5239,11 +5239,13 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s |
|
|
|
|
return ret_auto_fit; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static inline void ClampWindowRect(ImGuiWindow* window, const ImRect& rect, const ImVec2& padding) |
|
|
|
|
static inline void ClampWindowRect(ImGuiWindow* window, const ImRect& viewport_rect, const ImVec2& padding) |
|
|
|
|
{ |
|
|
|
|
ImGuiContext& g = *GImGui; |
|
|
|
|
ImVec2 size_for_clamping = (g.IO.ConfigWindowsMoveFromTitleBarOnly && !(window->Flags & ImGuiWindowFlags_NoTitleBar)) ? ImVec2(window->Size.x, window->TitleBarHeight()) : window->Size; |
|
|
|
|
window->Pos = ImMin(rect.Max - padding, ImMax(window->Pos + size_for_clamping, rect.Min + padding) - size_for_clamping); |
|
|
|
|
ImVec2 size_for_clamping = window->Size; |
|
|
|
|
if (g.IO.ConfigWindowsMoveFromTitleBarOnly && !(window->Flags & ImGuiWindowFlags_NoTitleBar)) |
|
|
|
|
size_for_clamping.y = window->TitleBarHeight(); |
|
|
|
|
window->Pos = ImClamp(window->Pos, viewport_rect.Min + padding - size_for_clamping, viewport_rect.Max - padding); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void ImGui::RenderWindowOuterBorders(ImGuiWindow* window) |
|
|
|
|