From f265e16b840f3352fc54f0d3a03bfb5bfd1b8b17 Mon Sep 17 00:00:00 2001 From: omar Date: Wed, 13 Dec 2017 22:05:48 +0100 Subject: [PATCH] Revert "Scrollbar: Minor simplication of the code using InnerRect data." > Introduced sheering on the scrollbar rectangle because InnerRect isn't setup at this point. This reverts commit 7ac1583411095fe8a82ccbc56d09777f87222e9d. --- imgui.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/imgui.cpp b/imgui.cpp index cf21d0e9..69f04d8c 100644 --- a/imgui.cpp +++ b/imgui.cpp @@ -5021,8 +5021,10 @@ void ImGui::Scrollbar(ImGuiLayoutType direction) const ImRect window_rect = window->Rect(); const float border_size = window->WindowBorderSize; ImRect bb = horizontal - ? ImRect(window->InnerRect.Min.x, window_rect.Max.y - style.ScrollbarSize, window->InnerRect.Max.x, window_rect.Max.y - border_size) - : ImRect(window_rect.Max.x - style.ScrollbarSize, window->InnerRect.Min.y, window_rect.Max.x - border_size, window->InnerRect.Max.y); + ? ImRect(window->Pos.x + border_size, window_rect.Max.y - style.ScrollbarSize, window_rect.Max.x - other_scrollbar_size_w - border_size, window_rect.Max.y - border_size) + : ImRect(window_rect.Max.x - style.ScrollbarSize, window->Pos.y + border_size, window_rect.Max.x - border_size, window_rect.Max.y - other_scrollbar_size_w - border_size); + if (!horizontal) + bb.Min.y += window->TitleBarHeight() + ((window->Flags & ImGuiWindowFlags_MenuBar) ? window->MenuBarHeight() : 0.0f); if (bb.GetWidth() <= 0.0f || bb.GetHeight() <= 0.0f) return;