diff options
author | callum <none@none> | 2012-06-15 14:17:21 -0700 |
---|---|---|
committer | callum <none@none> | 2012-06-15 14:17:21 -0700 |
commit | 0ff6275a654eda55662fab8d89d9ff4d278438d8 (patch) | |
tree | cc9bee7b3aae707870405fa5ee58589c8d6161f3 /indra/llui/llscrollcontainer.cpp | |
parent | 4985938269a91387e481731d469a0f1ca34e22a8 (diff) | |
parent | a1d0d67e05c45bdc1a7a8bb0aad79772a2a94f6e (diff) |
Merge with tip
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; + } } } } |