From 3d44442331ba6f1ba7a5d5ad9f3834993911e288 Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Tue, 27 Nov 2018 13:42:11 +0100 Subject: Fix scroll position after resize We didn't update the position if it ended up with an invalid value. Fixes: QTBUG-63437 Change-Id: Idc4d3b0cb43fd63bdb0ff10b4162dfabe49455df Reviewed-by: Ulf Hermann --- src/controls/Private/ScrollViewHelper.qml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/controls/Private/ScrollViewHelper.qml b/src/controls/Private/ScrollViewHelper.qml index 53050108..4f1d59f0 100644 --- a/src/controls/Private/ScrollViewHelper.qml +++ b/src/controls/Private/ScrollViewHelper.qml @@ -78,6 +78,8 @@ Item { scrollHelper.availableWidth = viewport.width scrollHelper.availableHeight = viewport.height blockUpdates = false; + hscrollbar.valueChanged(); + vscrollbar.valueChanged(); } } @@ -133,8 +135,11 @@ Item { anchors.leftMargin: leftMargin anchors.bottomMargin: bottomMargin onScrollAmountChanged: { + var scrollableAmount = scrollable ? scrollAmount : 0 if (flickableItem && (flickableItem.atXBeginning || flickableItem.atXEnd)) { - value = flickableItem.contentX - flickableItem.originX + value = Math.min(scrollableAmount, flickableItem.contentX - flickableItem.originX); + } else if (value > scrollableAmount) { + value = scrollableAmount; } } onValueChanged: { -- cgit v1.2.1