summaryrefslogtreecommitdiff
path: root/indra/llui/llscrollcontainer.cpp
diff options
context:
space:
mode:
authorMerov Linden <merov@lindenlab.com>2012-01-27 18:40:23 -0800
committerMerov Linden <merov@lindenlab.com>2012-01-27 18:40:23 -0800
commit2cd7a7550991df90288aa4c7e2fbe2598cc3c296 (patch)
tree4d52669e4051ee7abc51166971c811f789e30823 /indra/llui/llscrollcontainer.cpp
parentae952f2d45265baa4780de6d4a54e27b5e21ece5 (diff)
EXP-1747, EXP-1152 : Fixed visual glitches in computation of visible width in inventory.
Diffstat (limited to 'indra/llui/llscrollcontainer.cpp')
-rw-r--r--indra/llui/llscrollcontainer.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/indra/llui/llscrollcontainer.cpp b/indra/llui/llscrollcontainer.cpp
index ad4cc20d9a..20bed050ad 100644
--- a/indra/llui/llscrollcontainer.cpp
+++ b/indra/llui/llscrollcontainer.cpp
@@ -378,23 +378,21 @@ void LLScrollContainer::calcVisibleSize( S32 *visible_width, S32 *visible_height
if (!mHideScrollbar)
{
- if( *visible_height < doc_height )
+ // Note: 1 pixel change can happen on final animation and should not trigger
+ // the display of sliders.
+ if ((doc_height - *visible_height) > 1)
{
*show_v_scrollbar = TRUE;
*visible_width -= scrollbar_size;
}
-
- if( *visible_width < doc_width )
+ if ((doc_width - *visible_width) > 1)
{
*show_h_scrollbar = TRUE;
*visible_height -= scrollbar_size;
-
- // Must retest now that visible_height has changed
- if( !*show_v_scrollbar && (*visible_height < doc_height) )
- {
- *show_v_scrollbar = TRUE;
- *visible_width -= 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.
}
}
}