From 91e39e72a3a1a2b54c1685b28438f1e5555e84d4 Mon Sep 17 00:00:00 2001 From: omar Date: Wed, 9 May 2018 22:53:32 +0200 Subject: [PATCH] Combo: Horizontally offset items using WindowPadding instead of Indent, for consistency. --- imgui.cpp | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/imgui.cpp b/imgui.cpp index f2feda711..bd71db231 100644 --- a/imgui.cpp +++ b/imgui.cpp @@ -10875,27 +10875,24 @@ bool ImGui::BeginCombo(const char* label, const char* preview_value, ImGuiComboF SetNextWindowPos(pos); } + // Horizontally align ourselves with the framed text + PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(style.FramePadding.x, style.WindowPadding.y)); + ImGuiWindowFlags window_flags = ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_Popup | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoSavedSettings; if (!Begin(name, NULL, window_flags)) { EndPopup(); + PopStyleVar(); IM_ASSERT(0); // This should never happen as we tested for IsPopupOpen() above return false; } - - // Horizontally align ourselves with the framed text - if (style.FramePadding.x != style.WindowPadding.x) - Indent(style.FramePadding.x - style.WindowPadding.x); - return true; } void ImGui::EndCombo() { - const ImGuiStyle& style = GImGui->Style; - if (style.FramePadding.x != style.WindowPadding.x) - Unindent(style.FramePadding.x - style.WindowPadding.x); EndPopup(); + PopStyleVar(); } // Old API, prefer using BeginCombo() nowadays if you can.