@ -9230,14 +9230,15 @@ bool ImGui::BeginCombo(const char* label, const char* preview_value, ImGuiComboF
// Peak into expected window size so we can position it
// Peak into expected window size so we can position it
if ( ImGuiWindow * popup_window = FindWindowByName ( name ) )
if ( ImGuiWindow * popup_window = FindWindowByName ( name ) )
{
if ( popup_window - > WasActive )
ImVec2 size_contents = CalcSizeContents ( popup_window ) ;
{
ImVec2 size_expected = CalcSizeAfterConstraint ( popup_window , CalcSizeAutoFit ( popup_window , size_contents ) ) ;
ImVec2 size_contents = CalcSizeContents ( popup_window ) ;
if ( flags & ImGuiComboFlags_PopupAlignLeft )
ImVec2 size_expected = CalcSizeAfterConstraint ( popup_window , CalcSizeAutoFit ( popup_window , size_contents ) ) ;
popup_window - > AutoPosLastDirection = ImGuiDir_Left ;
if ( flags & ImGuiComboFlags_PopupAlignLeft )
ImVec2 pos = FindBestWindowPosForPopup ( frame_bb . GetBL ( ) , size_expected , & popup_window - > AutoPosLastDirection , frame_bb , ImGuiPopupPositionPolicy_ComboBox ) ;
popup_window - > AutoPosLastDirection = ImGuiDir_Left ;
SetNextWindowPos ( pos ) ;
ImVec2 pos = FindBestWindowPosForPopup ( frame_bb . GetBL ( ) , size_expected , & popup_window - > AutoPosLastDirection , frame_bb , ImGuiPopupPositionPolicy_ComboBox ) ;
}
SetNextWindowPos ( pos ) ;
}
ImGuiWindowFlags window_flags = ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_Popup | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoSavedSettings ;
ImGuiWindowFlags window_flags = ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_Popup | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoSavedSettings ;
if ( ! Begin ( name , NULL , window_flags ) )
if ( ! Begin ( name , NULL , window_flags ) )