@ -4232,10 +4232,21 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        // SIZE
   
					 
					 
					 
					        // SIZE
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        // Sav e contents size from last frame for auto-fitting (unless explicitly specified)
   
					 
					 
					 
					        // Updat e contents size from last frame for auto-fitting (unless explicitly specified)
   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					        window - > SizeContents . x  =  ( float ) ( int ) ( ( window - > SizeContentsExplicit . x  ! =  0.0f )  ?  window - > SizeContentsExplicit . x  :  ( ( window_is_new  ?  0.0f  :  window - > DC . CursorMaxPos . x  -  window - > Pos . x )  +  window - > Scroll . x ) ) ;   
					 
					 
					 
					        window - > SizeContents . x  =  ( float ) ( int ) ( ( window - > SizeContentsExplicit . x  ! =  0.0f )  ?  window - > SizeContentsExplicit . x  :  ( ( window_is_new  ?  0.0f  :  window - > DC . CursorMaxPos . x  -  window - > Pos . x )  +  window - > Scroll . x ) ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        window - > SizeContents . y  =  ( float ) ( int ) ( ( window - > SizeContentsExplicit . y  ! =  0.0f )  ?  window - > SizeContentsExplicit . y  :  ( ( window_is_new  ?  0.0f  :  window - > DC . CursorMaxPos . y  -  window - > Pos . y )  +  window - > Scroll . y ) ) ;   
					 
					 
					 
					        window - > SizeContents . y  =  ( float ) ( int ) ( ( window - > SizeContentsExplicit . y  ! =  0.0f )  ?  window - > SizeContentsExplicit . y  :  ( ( window_is_new  ?  0.0f  :  window - > DC . CursorMaxPos . y  -  window - > Pos . y )  +  window - > Scroll . y ) ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        // Update scrollbar status based on the Size that was effective during last frame (and not the upcoming Size which we are updating below), so that user code consuming exactly the available size won't trigger scrollbars when e.g. manually resizing.
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        if  ( ! window - > Collapsed )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        {   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            window - > ScrollbarY  =  ( flags  &  ImGuiWindowFlags_AlwaysVerticalScrollbar )  | |  ( ( window - > SizeContents . y  >  window - > Size . y  +  style . ItemSpacing . y )  & &  ! ( flags  &  ImGuiWindowFlags_NoScrollbar ) ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            window - > ScrollbarX  =  ( flags  &  ImGuiWindowFlags_AlwaysHorizontalScrollbar )  | |  ( ( window - > SizeContents . x  >  window - > Size . x  -  ( window - > ScrollbarY  ?  style . ScrollbarSize  :  0.0f )  -  window - > WindowPadding . x )  & &  ! ( flags  &  ImGuiWindowFlags_NoScrollbar )  & &  ( flags  &  ImGuiWindowFlags_HorizontalScrollbar ) ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            if  ( window - > ScrollbarX  & &  ! window - > ScrollbarY )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					                window - > ScrollbarY  =  ( window - > SizeContents . y  >  window - > Size . y  +  style . ItemSpacing . y  -  style . ScrollbarSize )  & &  ! ( flags  &  ImGuiWindowFlags_NoScrollbar ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            window - > ScrollbarSizes  =  ImVec2 ( window - > ScrollbarY  ?  style . ScrollbarSize  :  0.0f ,  window - > ScrollbarX  ?  style . ScrollbarSize  :  0.0f ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            window - > BorderSize  =  ( flags  &  ImGuiWindowFlags_ShowBorders )  ?  1.0f  :  0.0f ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        // Hide popup/tooltip window when first appearing while we measure size (because we recycle them)
   
					 
					 
					 
					        // Hide popup/tooltip window when first appearing while we measure size (because we recycle them)
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        if  ( window - > HiddenFrames  >  0 )   
					 
					 
					 
					        if  ( window - > HiddenFrames  >  0 )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            window - > HiddenFrames - - ;   
					 
					 
					 
					            window - > HiddenFrames - - ;   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -4416,14 +4427,6 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                title_bar_rect  =  window - > TitleBarRect ( ) ;   
					 
					 
					 
					                title_bar_rect  =  window - > TitleBarRect ( ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            }   
					 
					 
					 
					            }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            // Scrollbars
   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            window - > ScrollbarY  =  ( flags  &  ImGuiWindowFlags_AlwaysVerticalScrollbar )  | |  ( ( window - > SizeContents . y  >  window - > Size . y  +  style . ItemSpacing . y )  & &  ! ( flags  &  ImGuiWindowFlags_NoScrollbar ) ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            window - > ScrollbarX  =  ( flags  &  ImGuiWindowFlags_AlwaysHorizontalScrollbar )  | |  ( ( window - > SizeContents . x  >  window - > Size . x  -  ( window - > ScrollbarY  ?  style . ScrollbarSize  :  0.0f )  -  window - > WindowPadding . x )  & &  ! ( flags  &  ImGuiWindowFlags_NoScrollbar )  & &  ( flags  &  ImGuiWindowFlags_HorizontalScrollbar ) ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            if  ( window - > ScrollbarX  & &  ! window - > ScrollbarY )   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                window - > ScrollbarY  =  ( window - > SizeContents . y  >  window - > Size . y  +  style . ItemSpacing . y  -  style . ScrollbarSize )  & &  ! ( flags  &  ImGuiWindowFlags_NoScrollbar ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            window - > ScrollbarSizes  =  ImVec2 ( window - > ScrollbarY  ?  style . ScrollbarSize  :  0.0f ,  window - > ScrollbarX  ?  style . ScrollbarSize  :  0.0f ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            window - > BorderSize  =  ( flags  &  ImGuiWindowFlags_ShowBorders )  ?  1.0f  :  0.0f ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            // Window background, Default Alpha
   
					 
					 
					 
					            // Window background, Default Alpha
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            ImU32  bg_col  =  GetColorU32 ( GetWindowBgColorIdxFromFlags ( flags ) ) ;   
					 
					 
					 
					            ImU32  bg_col  =  GetColorU32 ( GetWindowBgColorIdxFromFlags ( flags ) ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            window - > DrawList - > AddRectFilled ( window - > Pos + ImVec2 ( 0 , window - > TitleBarHeight ( ) ) ,  window - > Pos + window - > Size ,  bg_col ,  window_rounding ,  ( flags  &  ImGuiWindowFlags_NoTitleBar )  ?  ImGuiCorner_All  :  ImGuiCorner_BotLeft | ImGuiCorner_BotRight ) ;   
					 
					 
					 
					            window - > DrawList - > AddRectFilled ( window - > Pos + ImVec2 ( 0 , window - > TitleBarHeight ( ) ) ,  window - > Pos + window - > Size ,  bg_col ,  window_rounding ,  ( flags  &  ImGuiWindowFlags_NoTitleBar )  ?  ImGuiCorner_All  :  ImGuiCorner_BotLeft | ImGuiCorner_BotRight ) ;