@ -3625,10 +3625,10 @@ void ImGui::NewFrame()
g . IO . Fonts - > Locked = true ;
SetCurrentFont ( GetDefaultFont ( ) ) ;
IM_ASSERT ( g . Font - > IsLoaded ( ) ) ;
Im Vec2 virtual_space_max ( 0 , 0 ) ;
Im Rect virtual_space ( FLT_MAX , FLT_MAX , - FLT_MAX , - FLT_MAX ) ;
for ( int n = 0 ; n < g . Viewports . Size ; n + + )
virtual_space _max = ImMax ( virtual_space_max , g . Viewports [ n ] - > Pos + g . Viewports [ n ] - > Size ) ;
g . DrawListSharedData . ClipRectFullscreen = ImVec4 ( 0.0f , 0.0f , virtual_space_max . x , virtual_space_m ax. y ) ;
virtual_space . Add ( g . Viewports [ n ] - > GetRect ( ) ) ;
g . DrawListSharedData . ClipRectFullscreen = ImVec4 ( virtual_space . Min . x , virtual_space . Min . y , virtual_space . Max . x , virtual_space . M ax. y ) ;
g . DrawListSharedData . CurveTessellationTol = g . Style . CurveTessellationTol ;
// Mark rendering data as invalid to prevent user who may have a handle on it to use it.
@ -10334,6 +10334,8 @@ ImGuiViewportP* ImGui::AddUpdateViewport(ImGuiWindow* window, ImGuiID id, const
// We normally setup for all viewports in NewFrame() but here need to handle the mid-frame creation of a new viewport.
// We need to extend the fullscreen clip rect so the OverlayDrawList clip is correct for that the first frame
g . DrawListSharedData . ClipRectFullscreen . x = ImMin ( g . DrawListSharedData . ClipRectFullscreen . x , viewport - > Pos . x ) ;
g . DrawListSharedData . ClipRectFullscreen . y = ImMin ( g . DrawListSharedData . ClipRectFullscreen . y , viewport - > Pos . y ) ;
g . DrawListSharedData . ClipRectFullscreen . z = ImMax ( g . DrawListSharedData . ClipRectFullscreen . z , viewport - > Pos . x + viewport - > Size . x ) ;
g . DrawListSharedData . ClipRectFullscreen . w = ImMax ( g . DrawListSharedData . ClipRectFullscreen . w , viewport - > Pos . y + viewport - > Size . y ) ;