@ -7938,10 +7938,13 @@ bool ImGui::InputTextEx(const char* label, char* buf, int buf_size, const ImVec2 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        }   
					 
					 
					 
					        }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    }   
					 
					 
					 
					    }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    // Render
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    // Select which buffer we are going to display. When ImGuiInputTextFlags_NoLiveEdit is set 'buf' might still be the old value. We set buf to NULL to prevent accidental usage from now on.
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    const  char *  buf_display  =  ( g . ActiveId  = =  id  & &  is_editable )  ?  edit_state . TempTextBuffer . Data  :  buf ;  buf  =  NULL ;  
  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    if  ( ! is_multiline )   
					 
					 
					 
					    if  ( ! is_multiline )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        RenderFrame ( frame_bb . Min ,  frame_bb . Max ,  GetColorU32 ( ImGuiCol_FrameBg ) ,  true ,  style . FrameRounding ) ;   
					 
					 
					 
					        RenderFrame ( frame_bb . Min ,  frame_bb . Max ,  GetColorU32 ( ImGuiCol_FrameBg ) ,  true ,  style . FrameRounding ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    // Render
   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    const  ImVec4  clip_rect ( frame_bb . Min . x ,  frame_bb . Min . y ,  frame_bb . Min . x  +  size . x ,  frame_bb . Min . y  +  size . y ) ;  // Not using frame_bb.Max because we have adjusted size
   
					 
					 
					 
					    const  ImVec4  clip_rect ( frame_bb . Min . x ,  frame_bb . Min . y ,  frame_bb . Min . x  +  size . x ,  frame_bb . Min . y  +  size . y ) ;  // Not using frame_bb.Max because we have adjusted size
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    ImVec2  render_pos  =  is_multiline  ?  draw_window - > DC . CursorPos  :  frame_bb . Min  +  style . FramePadding ;   
					 
					 
					 
					    ImVec2  render_pos  =  is_multiline  ?  draw_window - > DC . CursorPos  :  frame_bb . Min  +  style . FramePadding ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    ImVec2  text_size ( 0.f ,  0.f ) ;   
					 
					 
					 
					    ImVec2  text_size ( 0.f ,  0.f ) ;   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -8067,7 +8070,7 @@ bool ImGui::InputTextEx(const char* label, char* buf, int buf_size, const ImVec2 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            }   
					 
					 
					 
					            }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        }   
					 
					 
					 
					        }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        draw_window - > DrawList - > AddText ( g . Font ,  g . FontSize ,  render_pos  -  render_scroll ,  GetColorU32 ( ImGuiCol_Text ) ,  buf ,  buf + edit_state . CurLenA ,  0.0f ,  is_multiline  ?  NULL  :  & clip_rect ) ;   
					 
					 
					 
					        draw_window - > DrawList - > AddText ( g . Font ,  g . FontSize ,  render_pos  -  render_scroll ,  GetColorU32 ( ImGuiCol_Text ) ,  buf_display  ,  buf_display    +   edit_state . CurLenA ,  0.0f ,  is_multiline  ?  NULL  :  & clip_rect ) ;   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        // Draw blinking cursor
   
					 
					 
					 
					        // Draw blinking cursor
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        bool  cursor_is_visible  =  ( g . InputTextState . CursorAnim  < =  0.0f )  | |  fmodf ( g . InputTextState . CursorAnim ,  1.20f )  < =  0.80f ;   
					 
					 
					 
					        bool  cursor_is_visible  =  ( g . InputTextState . CursorAnim  < =  0.0f )  | |  fmodf ( g . InputTextState . CursorAnim ,  1.20f )  < =  0.80f ;   
				
			 
			
		
	
	
		
		
			
				
					
						
						
						
							
								 
							 
						
					 
					 
					@ -8085,8 +8088,8 @@ bool ImGui::InputTextEx(const char* label, char* buf, int buf_size, const ImVec2 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        // Render text only
   
					 
					 
					 
					        // Render text only
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        const  char *  buf_end  =  NULL ;   
					 
					 
					 
					        const  char *  buf_end  =  NULL ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        if  ( is_multiline )   
					 
					 
					 
					        if  ( is_multiline )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            text_size  =  ImVec2 ( size . x ,  InputTextCalcTextLenAndLineCount ( buf ,  & buf_end )  *  g . FontSize ) ;  // We don't need width
   
					 
					 
					 
					            text_size  =  ImVec2 ( size . x ,  InputTextCalcTextLenAndLineCount ( buf_display  ,  & buf_end )  *  g . FontSize ) ;  // We don't need width
   
				
			 
			
				
				
			
		
	
		
		
			
				
					
					 
					 
					 
					        draw_window - > DrawList - > AddText ( g . Font ,  g . FontSize ,  render_pos ,  GetColorU32 ( ImGuiCol_Text ) ,  buf ,  buf_end ,  0.0f ,  is_multiline  ?  NULL  :  & clip_rect ) ;   
					 
					 
					 
					        draw_window - > DrawList - > AddText ( g . Font ,  g . FontSize ,  render_pos ,  GetColorU32 ( ImGuiCol_Text ) ,  buf_display  ,  buf_end ,  0.0f ,  is_multiline  ?  NULL  :  & clip_rect ) ;   
				
			 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					    }   
					 
					 
					 
					    }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    if  ( is_multiline )   
					 
					 
					 
					    if  ( is_multiline )   
				
			 
			
		
	
	
		
		
			
				
					
						
						
						
							
								 
							 
						
					 
					 
					@ -8101,7 +8104,7 @@ bool ImGui::InputTextEx(const char* label, char* buf, int buf_size, const ImVec2 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    // Log as text
   
					 
					 
					 
					    // Log as text
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    if  ( g . LogEnabled  & &  ! is_password )   
					 
					 
					 
					    if  ( g . LogEnabled  & &  ! is_password )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        LogRenderedText ( render_pos ,  buf ,  NULL ) ;   
					 
					 
					 
					        LogRenderedText ( render_pos ,  buf_display  ,  NULL ) ;   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    if  ( label_size . x  >  0 )   
					 
					 
					 
					    if  ( label_size . x  >  0 )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        RenderText ( ImVec2 ( frame_bb . Max . x  +  style . ItemInnerSpacing . x ,  frame_bb . Min . y  +  style . FramePadding . y ) ,  label ) ;   
					 
					 
					 
					        RenderText ( ImVec2 ( frame_bb . Max . x  +  style . ItemInnerSpacing . x ,  frame_bb . Min . y  +  style . FramePadding . y ) ,  label ) ;