diff options
| -rw-r--r-- | indra/llui/llview.cpp | 15 | 
1 files changed, 3 insertions, 12 deletions
| diff --git a/indra/llui/llview.cpp b/indra/llui/llview.cpp index 245126d178..8803d106ba 100644 --- a/indra/llui/llview.cpp +++ b/indra/llui/llview.cpp @@ -1299,15 +1299,7 @@ void LLView::drawChildren()  {  	if (!mChildList.empty())  	{ -		static const LLRect* rootRect = NULL; -		 -		if (!mParentView) -		{ -			rootRect = &mRect; -		} - -		LLRect screenRect; - +		LLView* rootp = LLUI::getRootView();		  		++sDepth;  		for (child_list_reverse_iter_t child_iter = mChildList.rbegin(); child_iter != mChildList.rend();)  // ++child_iter) @@ -1317,9 +1309,8 @@ void LLView::drawChildren()  			if (viewp->getVisible() && viewp->getRect().isValid())  			{ -				// Only draw views that are within the root view -				localRectToScreen(viewp->getRect(),&screenRect); -				if ( rootRect->overlaps(screenRect)  && LLUI::sDirtyRect.overlaps(screenRect)) +				LLRect screen_rect = viewp->calcScreenRect(); +				if ( rootp->getLocalRect().overlaps(screen_rect)  && LLUI::sDirtyRect.overlaps(screen_rect))  				{  					LLUI::pushMatrix();  					{ | 
