|  |  |  | @ -5844,10 +5844,18 @@ static ImVec2 CalcWindowAutoFitSize(ImGuiWindow* window, const ImVec2& size_cont | 
			
		
	
		
			
				
					|  |  |  |  |         ImVec2 size_max = ((window->Flags & ImGuiWindowFlags_ChildWindow) && !(window->Flags & ImGuiWindowFlags_Popup)) ? ImVec2(FLT_MAX, FLT_MAX) : ImGui::GetMainViewport()->WorkSize - style.DisplaySafeAreaPadding * 2.0f; | 
			
		
	
		
			
				
					|  |  |  |  |         ImVec2 size_auto_fit = ImClamp(size_desired, size_min, size_max); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         // FIXME: CalcWindowAutoFitSize() doesn't take into account that only one axis may be auto-fit when calculating scrollbars,
 | 
			
		
	
		
			
				
					|  |  |  |  |         // we may need to compute/store three variants of size_auto_fit, for x/y/xy.
 | 
			
		
	
		
			
				
					|  |  |  |  |         // Here we implement a workaround for child windows only, but a full solution would apply to normal windows as well:
 | 
			
		
	
		
			
				
					|  |  |  |  |         if ((window->ChildFlags & ImGuiChildFlags_ResizeX) && !(window->ChildFlags & ImGuiChildFlags_ResizeY)) | 
			
		
	
		
			
				
					|  |  |  |  |             size_auto_fit.y = window->SizeFull.y; | 
			
		
	
		
			
				
					|  |  |  |  |         else if (!(window->ChildFlags & ImGuiChildFlags_ResizeX) && (window->ChildFlags & ImGuiChildFlags_ResizeY)) | 
			
		
	
		
			
				
					|  |  |  |  |             size_auto_fit.x = window->SizeFull.x; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         // When the window cannot fit all contents (either because of constraints, either because screen is too small),
 | 
			
		
	
		
			
				
					|  |  |  |  |         // we are growing the size on the other axis to compensate for expected scrollbar. FIXME: Might turn bigger than ViewportSize-WindowPadding.
 | 
			
		
	
		
			
				
					|  |  |  |  |         ImVec2 size_auto_fit_after_constraint = CalcWindowSizeAfterConstraint(window, size_auto_fit); | 
			
		
	
		
			
				
					|  |  |  |  |         bool will_have_scrollbar_x = (size_auto_fit_after_constraint.x - size_pad.x - decoration_w_without_scrollbars < size_contents.x  && !(window->Flags & ImGuiWindowFlags_NoScrollbar) && (window->Flags & ImGuiWindowFlags_HorizontalScrollbar)) || (window->Flags & ImGuiWindowFlags_AlwaysHorizontalScrollbar); | 
			
		
	
		
			
				
					|  |  |  |  |         bool will_have_scrollbar_x = (size_auto_fit_after_constraint.x - size_pad.x - decoration_w_without_scrollbars < size_contents.x && !(window->Flags & ImGuiWindowFlags_NoScrollbar) && (window->Flags & ImGuiWindowFlags_HorizontalScrollbar)) || (window->Flags & ImGuiWindowFlags_AlwaysHorizontalScrollbar); | 
			
		
	
		
			
				
					|  |  |  |  |         bool will_have_scrollbar_y = (size_auto_fit_after_constraint.y - size_pad.y - decoration_h_without_scrollbars < size_contents.y && !(window->Flags & ImGuiWindowFlags_NoScrollbar)) || (window->Flags & ImGuiWindowFlags_AlwaysVerticalScrollbar); | 
			
		
	
		
			
				
					|  |  |  |  |         if (will_have_scrollbar_x) | 
			
		
	
		
			
				
					|  |  |  |  |             size_auto_fit.y += style.ScrollbarSize; | 
			
		
	
	
		
			
				
					|  |  |  | @ -6049,6 +6057,7 @@ static int ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& si | 
			
		
	
		
			
				
					|  |  |  |  |         if (held && g.IO.MouseDoubleClicked[0]) | 
			
		
	
		
			
				
					|  |  |  |  |         { | 
			
		
	
		
			
				
					|  |  |  |  |             // Double-clicking bottom or right border auto-fit on this axis
 | 
			
		
	
		
			
				
					|  |  |  |  |             // FIXME: CalcWindowAutoFitSize() doesn't take into account that only one side may be auto-fit when calculating scrollbars.
 | 
			
		
	
		
			
				
					|  |  |  |  |             // FIXME: Support top and right borders: rework CalcResizePosSizeFromAnyCorner() to be reusable in both cases.
 | 
			
		
	
		
			
				
					|  |  |  |  |             if (border_n == 1 || border_n == 3) // Right and bottom border
 | 
			
		
	
		
			
				
					|  |  |  |  |             { | 
			
		
	
	
		
			
				
					|  |  |  | 
 |