@ -710,6 +710,7 @@ static inline bool      IsWindowContentHoverable(ImGuiWindow* window); 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					static  void              ClearSetNextWindowData ( ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					static  void              CheckStacksSize ( ImGuiWindow *  window ,  bool  write ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					static  void              Scrollbar ( ImGuiWindow *  window ,  bool  horizontal ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					static  ImVec2            CalcNextScrollFromScrollTargetAndClamp ( ImGuiWindow *  window ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					static  void              AddDrawListToRenderList ( ImVector < ImDrawList * > &  out_render_list ,  ImDrawList *  draw_list ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					static  void              AddWindowToRenderList ( ImVector < ImDrawList * > &  out_render_list ,  ImGuiWindow *  window ) ;  
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
				 
				 
				
					@ -4539,6 +4540,19 @@ static void ApplySizeFullWithConstraint(ImGuiWindow* window, ImVec2 new_size) 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    window - > SizeFull  =  new_size ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					}  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					static  ImVec2  CalcNextScrollFromScrollTargetAndClamp ( ImGuiWindow *  window )  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					{  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImVec2  scroll  =  window - > Scroll ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    if  ( window - > ScrollTarget . x  <  FLT_MAX )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        scroll . x  =  window - > ScrollTarget . x  -  ( window - > ScrollTargetCenterRatio . x  *  window - > SizeFull . x ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    if  ( window - > ScrollTarget . y  <  FLT_MAX )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        scroll . y  =  window - > ScrollTarget . y  -  ( ( 1.0f  -  window - > ScrollTargetCenterRatio . y )  *  ( window - > TitleBarHeight ( )  +  window - > MenuBarHeight ( ) ) )  -  ( window - > ScrollTargetCenterRatio . y  *  window - > SizeFull . y ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    scroll  =  ImMax ( scroll ,  ImVec2 ( 0.0f ,  0.0f ) ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    if  ( ! window - > Collapsed  & &  ! window - > SkipItems )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        scroll  =  ImMin ( scroll ,  ImMax ( ImVec2 ( 0.0f ,  0.0f ) ,  window - > SizeContents  -  window - > SizeFull  +  window - > ScrollbarSizes ) ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    return  scroll ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					}  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// Push a new ImGui window to add widgets to.
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// - A default window called "Debug" is automatically stacked at the beginning of every frame so you can use widgets without explicitly calling a Begin/End pair.
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// - Begin/End can be called multiple times during the frame with the same window name to append content.
  
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
				 
				 
				
					@ -4858,21 +4872,8 @@ bool ImGui::Begin(const char* name, bool* p_open, const ImVec2& size_on_first_us 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        window - > FocusIdxAllRequestNext  =  window - > FocusIdxTabRequestNext  =  INT_MAX ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        // Apply scrolling
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        if  ( window - > ScrollTarget . x  <  FLT_MAX )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        {   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            float  center_ratio  =  window - > ScrollTargetCenterRatio . x ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            window - > Scroll . x  =  window - > ScrollTarget . x  -  ( center_ratio  *  window - > SizeFull . x ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            window - > ScrollTarget . x  =  FLT_MAX ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        }   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        if  ( window - > ScrollTarget . y  <  FLT_MAX )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        {   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            float  center_ratio  =  window - > ScrollTargetCenterRatio . y ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            window - > Scroll . y  =  window - > ScrollTarget . y  -  ( ( 1.0f  -  center_ratio )  *  ( window - > TitleBarHeight ( )  +  window - > MenuBarHeight ( ) ) )  -  ( center_ratio  *  window - > SizeFull . y ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            window - > ScrollTarget . y  =  FLT_MAX ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        }   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        window - > Scroll  =  ImMax ( window - > Scroll ,  ImVec2 ( 0.0f ,  0.0f ) ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        if  ( ! window - > Collapsed  & &  ! window - > SkipItems )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            window - > Scroll  =  ImMin ( window - > Scroll ,  ImMax ( ImVec2 ( 0.0f ,  0.0f ) ,  window - > SizeContents  -  window - > SizeFull  +  window - > ScrollbarSizes ) ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        window - > Scroll  =  CalcNextScrollFromScrollTargetAndClamp ( window ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        window - > ScrollTarget  =  ImVec2 ( FLT_MAX ,  FLT_MAX ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        // Modal window darkens what is behind them
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        if  ( ( flags  &  ImGuiWindowFlags_Modal )  ! =  0  & &  window  = =  GetFrontMostModalRootWindow ( ) )