diff options
author | Don Kjer <don@lindenlab.com> | 2011-07-09 14:58:31 -0700 |
---|---|---|
committer | Don Kjer <don@lindenlab.com> | 2011-07-09 14:58:31 -0700 |
commit | 121c4034db2de1b73bdab6777f49f302d89af3ca (patch) | |
tree | 0e0cf941c3838a899d4a31433773e974eb9b4fd4 /indra/llui/llview.cpp | |
parent | 7029c8ff534419a3bcfd0e5fc39a4739e4cdc19c (diff) | |
parent | 961d5b1d65fffff7075d0afbce003586b1f3b197 (diff) |
Merge
Diffstat (limited to 'indra/llui/llview.cpp')
-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(); { |