diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2017-11-03 16:42:14 +0100 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2017-11-08 10:13:49 +0000 |
commit | f246314b21604c5fe2a2abe0aec8af89f06eb610 (patch) | |
tree | b66ed350b4a1ba96b0b1c90bc64f923b1ae74e66 /tests/auto/controls/data/tst_scrollindicator.qml | |
parent | 501d45012f746d843e0144c78202297a577758bc (diff) |
ScrollIndicator: allow configuring the minimum size
Same as 9e1b044 for ScrollBar.
The existing size and position properties cannot be changed,
because then they won't match with Flickable::visibleArea and
we get major problems connecting the two. Thus, the effective
visible position and size are provided as separate properties.
[ChangeLog][Controls][ScrollIndicator] Added minimumSize, visualSize,
and visualPosition properties.
Task-number: QTBUG-56557
Change-Id: I7deda3bea7a5a020bda79af433bfa38f326952d8
Reviewed-by: Liang Qi <liang.qi@qt.io>
Diffstat (limited to 'tests/auto/controls/data/tst_scrollindicator.qml')
-rw-r--r-- | tests/auto/controls/data/tst_scrollindicator.qml | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/auto/controls/data/tst_scrollindicator.qml b/tests/auto/controls/data/tst_scrollindicator.qml index a6275f91..9435ec3b 100644 --- a/tests/auto/controls/data/tst_scrollindicator.qml +++ b/tests/auto/controls/data/tst_scrollindicator.qml @@ -258,4 +258,52 @@ TestCase { touch.release(0, control).commit() verify(!ma.pressed) } + + function test_minimumSize() { + var container = createTemporaryObject(flickable, testCase) + verify(container) + waitForRendering(container) + + var vertical = scrollIndicator.createObject(container, {minimumSize: 0.1}) + container.ScrollIndicator.vertical = vertical + + compare(container.visibleArea.heightRatio, 0.5) + compare(vertical.size, 0.5) + compare(vertical.visualSize, 0.5) + compare(vertical.contentItem.height, 0.5 * vertical.availableHeight) + + container.contentHeight = 2000 + + compare(container.visibleArea.heightRatio, 0.05) + compare(vertical.size, 0.05) + compare(vertical.visualSize, 0.1) + compare(vertical.contentItem.height, 0.1 * vertical.availableHeight) + + verify(container.atYBeginning) + compare(container.visibleArea.yPosition, 0.0) + compare(vertical.position, 0.0) + compare(vertical.visualPosition, 0.0) + compare(vertical.contentItem.y, vertical.topPadding) + + container.contentY = 1900 + + verify(container.atYEnd) + compare(container.visibleArea.yPosition, 0.95) + compare(vertical.position, 0.95) + compare(vertical.visualPosition, 0.9) + compare(vertical.contentItem.y, vertical.topPadding + 0.9 * vertical.availableHeight) + + container.contentHeight = 125 + + compare(container.visibleArea.heightRatio, 0.8) + compare(vertical.size, 0.8) + compare(vertical.visualSize, 0.8) + compare(vertical.contentItem.height, 0.8 * vertical.availableHeight) + + verify(container.atYEnd) + compare(container.visibleArea.yPosition, 0.2) + compare(vertical.position, 0.2) + compare(vertical.visualPosition, 0.2) + compare(vertical.contentItem.y, vertical.topPadding + 0.2 * vertical.availableHeight) + } } |