diff options
author | Leslie Linden <leslie@lindenlab.com> | 2011-06-30 16:26:09 -0700 |
---|---|---|
committer | Leslie Linden <leslie@lindenlab.com> | 2011-06-30 16:26:09 -0700 |
commit | e175d3357ba684281296ffb86ecb5ece196d28e7 (patch) | |
tree | 75d5487a16f7afd1530b5015b1a013b8b7e0eed6 /indra | |
parent | 6c12a5ca550e06730e06d1a909fbf43d7bda16f5 (diff) | |
parent | 0d131e0695a2db100ac0ee4fb31517581779fe13 (diff) |
Merge
Diffstat (limited to 'indra')
-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(); { |