diff options
author | Oz Linden <oz@lindenlab.com> | 2012-05-26 17:06:07 -0400 |
---|---|---|
committer | Oz Linden <oz@lindenlab.com> | 2012-05-26 17:06:07 -0400 |
commit | a4913246770b58ed569021c484c213231aaae549 (patch) | |
tree | 0878deeaa86b2c3a28cbf325566e8489111523c1 /indra/llui/llscrollcontainer.cpp | |
parent | 80c2abddcfbcb578e70d220baa95aebdee3d529c (diff) | |
parent | b2b446aed7f7f32151bc152ba25d44253ebf864f (diff) |
merge up to latest viewer-release
Diffstat (limited to 'indra/llui/llscrollcontainer.cpp')
-rw-r--r-- | indra/llui/llscrollcontainer.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/indra/llui/llscrollcontainer.cpp b/indra/llui/llscrollcontainer.cpp index 20bed050ad..9b7e30bb04 100644 --- a/indra/llui/llscrollcontainer.cpp +++ b/indra/llui/llscrollcontainer.cpp @@ -389,10 +389,17 @@ void LLScrollContainer::calcVisibleSize( S32 *visible_width, S32 *visible_height { *show_h_scrollbar = TRUE; *visible_height -= scrollbar_size; - // Note: Do *not* recompute *show_v_scrollbar here because with - // the (- scrollbar_size) we just did we will always add a vertical scrollbar - // even if the height of the items is actually less than the visible size. - // Fear not though: there's enough calcVisibleSize() calls to add a vertical slider later. + + // The view inside the scroll container should not be extended + // to container's full height to ensure the correct computation + // of *show_v_scrollbar after subtracting horizontal scrollbar_size. + + // Must retest now that visible_height has changed + if( !*show_v_scrollbar && ((doc_height - *visible_height) > 1) ) + { + *show_v_scrollbar = TRUE; + *visible_width -= scrollbar_size; + } } } } |