From 7d2479adc869819d5a435c0a97c7d8d1ef94c51f Mon Sep 17 00:00:00 2001 From: and3md Date: Tue, 22 Aug 2017 18:40:24 +0200 Subject: [PATCH] Second scrollbar bug fix - dlangide 236 ensure _pageUp/_pageDown is Visible before layout() _pageUp/_pageDown has sometime Visibility.Gone and then layout() not work. Maybe this condition should be removed from Widget.layout() --- src/dlangui/widgets/scrollbar.d | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/dlangui/widgets/scrollbar.d b/src/dlangui/widgets/scrollbar.d index 0b02b9f9..e2d3d779 100644 --- a/src/dlangui/widgets/scrollbar.d +++ b/src/dlangui/widgets/scrollbar.d @@ -470,16 +470,16 @@ class ScrollBar : AbstractSlider, OnClickHandler { if (_scrollArea.top < irc.top) { r = _scrollArea; r.bottom = irc.top; - _pageUp.layout(r); _pageUp.visibility = Visibility.Visible; + _pageUp.layout(r); } else { _pageUp.visibility = Visibility.Invisible; } if (_scrollArea.bottom > irc.bottom) { r = _scrollArea; r.top = irc.bottom; - _pageDown.layout(r); _pageDown.visibility = Visibility.Visible; + _pageDown.layout(r); } else { _pageDown.visibility = Visibility.Invisible; } @@ -488,16 +488,16 @@ class ScrollBar : AbstractSlider, OnClickHandler { if (_scrollArea.left < irc.left) { r = _scrollArea; r.right = irc.left; - _pageUp.layout(r); _pageUp.visibility = Visibility.Visible; + _pageUp.layout(r); } else { _pageUp.visibility = Visibility.Invisible; } if (_scrollArea.right > irc.right) { r = _scrollArea; r.left = irc.right; - _pageDown.layout(r); _pageDown.visibility = Visibility.Visible; + _pageDown.layout(r); } else { _pageDown.visibility = Visibility.Invisible; }