@@ -70,26 +70,32 @@ class Terminal::Widgets::HScrollBar
7070
7171 method arrow-left-scroll () {
7272 $ . scroll-target . change-x-scroll(-$ . end-arrow-scroll-inc );
73+ $ . scroll-target . refresh-for-scroll;
7374 }
7475
7576 method arrow-right-scroll () {
7677 $ . scroll-target . change-x-scroll(+ $ . end-arrow-scroll-inc );
78+ $ . scroll-target . refresh-for-scroll;
7779 }
7880
7981 method bar-left-scroll () {
8082 $ . scroll-target . change-x-scroll(-$ . bar-click-scroll-inc );
83+ $ . scroll-target . refresh-for-scroll;
8184 }
8285
8386 method bar-right-scroll () {
8487 $ . scroll-target . change-x-scroll(+ $ . bar-click-scroll-inc );
88+ $ . scroll-target . refresh-for-scroll;
8589 }
8690
8791 method home-scroll () {
8892 $ . scroll-target . set-x-scroll(0 );
93+ $ . scroll-target . refresh-for-scroll;
8994 }
9095
9196 method end-scroll () {
9297 $ . scroll-target . set-x-scroll($ . scroll-target . x-max);
98+ $ . scroll-target . refresh-for-scroll;
9399 }
94100
95101 method draw-content () {
@@ -170,12 +176,10 @@ class Terminal::Widgets::HScrollBar
170176 if $ . show-end-arrows {
171177 if $ x == 0 {
172178 self . arrow-left-scroll;
173- $ . scroll-target . refresh-for-scroll;
174179 return ;
175180 }
176181 elsif $ x == $ end {
177182 self . arrow-right-scroll;
178- $ . scroll-target . refresh-for-scroll;
179183 return ;
180184 }
181185 else {
@@ -209,26 +213,32 @@ class Terminal::Widgets::VScrollBar
209213
210214 method arrow-up-scroll () {
211215 $ . scroll-target . change-y-scroll(-$ . end-arrow-scroll-inc );
216+ $ . scroll-target . refresh-for-scroll;
212217 }
213218
214219 method arrow-down-scroll () {
215220 $ . scroll-target . change-y-scroll(+ $ . end-arrow-scroll-inc );
221+ $ . scroll-target . refresh-for-scroll;
216222 }
217223
218224 method bar-up-scroll () {
219225 $ . scroll-target . change-y-scroll(-$ . bar-click-scroll-inc );
226+ $ . scroll-target . refresh-for-scroll;
220227 }
221228
222229 method bar-down-scroll () {
223230 $ . scroll-target . change-y-scroll(+ $ . bar-click-scroll-inc );
231+ $ . scroll-target . refresh-for-scroll;
224232 }
225233
226234 method home-scroll () {
227235 $ . scroll-target . set-y-scroll(0 );
236+ $ . scroll-target . refresh-for-scroll;
228237 }
229238
230239 method end-scroll () {
231240 $ . scroll-target . set-y-scroll($ . scroll-target . y-max);
241+ $ . scroll-target . refresh-for-scroll;
232242 }
233243
234244 method draw-content () {
@@ -309,12 +319,10 @@ class Terminal::Widgets::VScrollBar
309319 if $ . show-end-arrows {
310320 if $ y == 0 {
311321 self . arrow-up-scroll;
312- $ . scroll-target . refresh-for-scroll;
313322 return ;
314323 }
315324 elsif $ y == $ end {
316325 self . arrow-down-scroll;
317- $ . scroll-target . refresh-for-scroll;
318326 return ;
319327 }
320328 else {
0 commit comments