aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/controls/data
Commit message (Collapse)AuthorAgeFilesLines
* SwipeDelegate: fix animations when releasing from a drag5.7Mitch Curtis2016-11-301-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | 9812a9c changed the order in which the pressed and position state is set. Before, when releasing after swiping, it would be: set pressed to false => set position After 9812a9c, it became: set position => set pressed to false The original order is necessary to ensure that animations can rely on being enabled *before* position changes, as their enabled expression typically looks something like this: enabled: !control.down This patch duplicates the contents of QQuickAbstractButton::mouseUngrabEvent() for now, with a TODO comment to ensure that it's moved into a private helper that we can call later on. Task-number: QTBUG-57350 Change-Id: I31af7a665fb2d0e37548df31560ed7bbb0c3cadb Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* SwipeDelegate: don't emit clicked when released outsideMitch Curtis2016-11-231-3/+43
| | | | | | | | | | | | | | | | | If there are no delegates and hence the mouse hasn't been grabbed, we should clear the pressed state when the mouse is dragged outside the control. We can do so by falling back to the event handling of the base class (QQuickItemDelegate) when we have no delegates. This also ensures that the canceled() signal is emitted. A similar thing is done for controls with delegates, except that only the vertical position of the mouse is checked, as we still want to initiate swipes horizontally. Change-Id: I7738f5b9e8e8b6ce4a733008fa4ff73596e854ea Task-number: QTBUG-56312 Task-number: QTBUG-57285 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* QQuickSpinBox: fix auto-repeatJ-P Nurmi2016-11-171-0/+62
| | | | | | | | | | | | | | Don't cancel auto-repeat on the tiniest mouse/touch move, but keep repeating until moved outside the button. The test has been written so that the exact amount of repeats does not matter, as long as it repeats. This is because waits are not reliable in a busy CI environment. Sometimes waits can take longer, timer events get queued, and we get an unexpected burst of repeats. Change-Id: Ibdcdd9e684bbcda032abfabb8a33ed892c7778df Task-number: QTBUG-57085 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickAbstractButton: fix auto-repeatJ-P Nurmi2016-11-171-33/+58
| | | | | | | | | | | | | | Don't cancel auto-repeat on the tiniest mouse/touch move, but keep repeating until moved outside the button. The test has been changed so that the exact amount of repeats does not matter, as long as it repeats. This is because waits are not reliable in a busy CI environment. Sometimes waits can take longer, timer events get queued, and we get an unexpected burst of repeats. Change-Id: Ic473e04c4d15a0826c8adf460c69507e64590d99 Task-number: QTBUG-57085 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Tests: de-couple SignalSequenceSpy from the testable controlsJ-P Nurmi2016-11-163-134/+158
| | | | | | | | | | This change allows running tests without the signal sequence spy, which expects an exact sequence of signals. It can create problems when combined with wait/tryCompare(), which may take longer than expected in a busy CI environment, and result to unexpected signals. Change-Id: I390aa3ddafed9122deaa822b241b3b9bba7841f6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickComboBox: key searchJ-P Nurmi2016-11-031-0/+43
| | | | | | | | | [ChangeLog][Controls][ComboBox] Added missing keyboard search functionality. Change-Id: If132f2ca0bca8cdb09de03f584c07eec6fb384f6 Task-number: QTBUG-56884 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickComboBox: handle Home and End keysJ-P Nurmi2016-11-031-2/+115
| | | | | | | | [ChangeLog][Controls][ComboBox] Added handling for Home and End keys. Change-Id: I79ec0644f169503ab38a8e2bee18621a1f671478 Task-number: QTBUG-56884 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickPopup: use QShortcutMap to grab Back & Escape keysJ-P Nurmi2016-11-011-1/+0
| | | | | | | | | | | | | | | | | | | | | | | This makes CloseOnEscape play well together with QML Shortcut, as illustrated by the Gallery example. For example, navigate to any control page, open the options menu, and hit escape twice. First, the options menu closes, and then the stackview navigates back. Another nice example is to open the style combobox in the settings dialog, while being navigated to one of the control pages, and hit escape three times. First, the combobox closes, then the settings dialog closes, and finally, the stackview navigates back. NOTE: tst_combobox had to be updated, because it was assuming that the popup is closed when escape is released. Now that the system is based on shortcut overrides, it gets closed on press instead. Task-number: QTBUG-56562 Change-Id: I8b8901bcba7deebd82b181af42f335d95a7cb469 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Scrollers: give control over layouting if parent != flickableJ-P Nurmi2016-10-282-0/+32
| | | | | | | | | This allows utilizing the convenient attached properties of ScrollBar and ScrollIndicator, but positioning the scrollers outside of a clipping Flickable. Change-Id: I46fe79110658f4797469d042c56f51548eef6c70 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickPopup: fix binding loops with size-dependent positioningJ-P Nurmi2016-10-271-0/+31
| | | | | | | | | | Dependencies between popup's size and position easily lead to recursion into reposition(). Blocking recursive reposition() calls messes up the positioning, so schedule polish events instead. Task-number: QTBUG-56755 Change-Id: I72afd14573e5cd57f8162df04e193d4c42fd7236 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix tst_swipedelegateJ-P Nurmi2016-10-241-4/+4
| | | | | | | | These tests did not pass on my Chromebook Pixel 2. The value of Qt.styleHints.startDragDistance is 19. Change-Id: I8843803608fc4c8ca2f2c42790d648eb17c141fd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* ScrollBar::increase/decrease(): remember the previous active statusJ-P Nurmi2016-10-171-0/+25
| | | | | | | | | These methods toggle the active status to flash the scrollbar. The active status must not be inactivated if the scrollbar was already active while increasing or decreasing eg. via buttons. Change-Id: I2902f58a26ab5e56ff89aa921cae7a7ae8404ee3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Clear hover when moved outside while pressingJ-P Nurmi2016-10-171-2/+19
| | | | | | | | | | As noticed in QTBUG-56269, QEvent::HoverLeave is not sent while there is an active mouse grabber item. Therefore we must hit test move events to figure out if the control is still effectively hovered. Task-number: QTBUG-56556 Change-Id: I8a5e3dbd77375aace7fc5594e4315288304d852f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* auto tests: prefer creating signal spies locally where neededJ-P Nurmi2016-10-0713-282/+92
| | | | | | | | | | | It is tedious to always add new static SignalSpy instances for each tested signal. Just create signal spies locally in the same place where they are used. This makes it much more convenient to create more signal spies to achieve better coverage. This practice has been already used in newly written tests. Change-Id: I7f56c4b3cea0c55c34b85254f69a88ec73b8607f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Move line number-dependent tests to the top of tst_swipedelegate.qmlMitch Curtis2016-10-041-100/+100
| | | | | | | | | We should try to limit the amount of changes that happen above these functions, so that the tests don't keep failing due to line numbers changing. Change-Id: If74ac88bfca99a343f8ddbb31374578b5e977012 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Fix ComboBox to scroll to the highlighted itemJ-P Nurmi2016-10-021-3/+60
| | | | | | Change-Id: I57fefd8ba47796118e71902c6882e9918d462920 Tasl-number: QTBUG-55030 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Fix QQuickToolTip's delay and visibilityJ-P Nurmi2016-10-021-5/+20
| | | | | | | | | | | | | | | | | | | | The imperative open() and close() methods used to be the only ways to open and close popups, but the visible-property was later made writable to allow declarative visibility bindings. Since then, it is no longer sufficient for QQuickToolTip to overshadow open() and close() in QML, because setting the visible-property would bypass these overshadowed method. There was a bit of duplicate code between setVisible(), open(), and close(). This change moves the logic to one place by changing open() and close() to call setVisible(). Furthermore, setVisible() has been made virtual to make it possible for QQuickToolTip to apply its delay properly. QQuickToolTip needs to control the delay and timeout timers before the effective visibility is applied on the popup. Task-number: QTBUG-55572 Change-Id: I5a109157f9ec5d0db145e710426665a9a8d7e870 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Make a plain AbstractButton calculate suitable implicit sizeJ-P Nurmi2016-10-021-0/+36
| | | | | | | | | | | | | | | | Just like commit 87b21a57 made Control do it, this applies the same logic to AbstractButton. The simple reasoning is that when customizing both the contentItem and the background, it is much better to use the AbstractButton type that does not have any default building blocks. Previously you would have to supply implicit size calculation as well, but this makes it much more convenient to use. [ChangeLog][Controls][AbstractButton] A plain AbstractButton now calculates its implicit size based on the implicit size of the content item plus paddings, and the implicit size of the background item. Change-Id: Ic380366b25940fbb9f28882c4622d58f4c042a07 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Cancel exit transition when the same tooltip is shown againMitch Curtis2016-09-301-0/+48
| | | | | | | Task-number: QTBUG-54206 Task-number: QTBUG-54532 Change-Id: I7e4d993e3b1e30d7d7956629604f948dd1c85e32 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Improve tst_tumblerMitch Curtis2016-09-301-30/+69
| | | | | | | | | | | | | | | | | - Don't create a tumbler indiscriminately in init(). Some tests don't use the tumbler, and it just creates more headaches for debugging, as there is extra, unrelated qDebug output for the unused tumbler. - Don't create the tumbler with createQmlObject(). Having code in a string is difficult to maintain and doesn't have the benefit of e.g. the static error checking that Creator can do. - Instead of only automatically cleaning up the tumbler item in cleanup(), introduce a "cleanupItem" that all dynamically created items can use as their parent so that they too can benefit from automatic cleanup. - Comment out incomplete test and mention that it's a TODO. Change-Id: I070fbb018bc9270555774bb0de2d72b7889edb35 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* TabButton: use Text's implicit size instead of content sizeJ-P Nurmi2016-09-301-0/+6
| | | | | | | | | | | | | | | | | | | Using content size was a workaround (applied in 5f5654f) that helped with mis-aligned tab labels, but broke the implicit size calculation of TabButton itself. Now that the mis-alignment issue in QQuickText has been fixed in qtdeclarative commit 79cfc87, we can restore the correct implicit size calculation. This makes it possible to create tabs that are not squeezed to fit in TabBar: TabBar { TabButton { text: "Foo"; width: implicitWidth } TabButton { text: "Bar"; width: implicitWidth } TabButton { text: "Baz"; width: implicitWidth } } Task-number: QTBUG-55129 Change-Id: If0dbb00794299e324b7a8d8ce1370fe0a3491fe8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* TabBar: fix mixing of fixed and implicitly resized tabsJ-P Nurmi2016-09-301-6/+20
| | | | | | | | | | Don't calculate the implicit item width based on the total width of the whole control, but based on the available width that is left after subtracting the items that have an explicit width and won't be resized. Change-Id: Iae18dd9c9756b6f2afa143baab7d2501ce9d4697 Task-number: QTBUG-56265 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix crash when flicking a ListView-based TumblerMitch Curtis2016-09-301-1/+44
| | | | | | | | | | | | | | This only happens in 5.7, and seemingly only when the delegate uses attached properties (like displacement). Other fixes required and/or relevant to the patch: - Fixed some instances of displacementChanged possibly not being emitted. - Use QPointer for the attached object's Tumbler pointer, as it was being accessed while null after this patch. Change-Id: I7d881d815faf57f1a8bc0ea8e73a7331523d2f9b Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Fix QQuickToolTipAttached parentJ-P Nurmi2016-09-281-1/+2
| | | | | | | | The parent must not be a null item. Change-Id: Ide71a69e8cde8114542fa97570e0e5f5d724a884 Task-number: QTBUG-56243 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* SpinBox: don't call valueFromText when non-editableJ-P Nurmi2016-09-281-0/+32
| | | | | | | | | | If there are custom values like 00:00:00 for time and valueFromText is not implemented, tab navigation sets the value to 0, because the default implementation cannot evaluate it. Change-Id: I0384a2015b2c2a4dc2ee0e57f1ece410c339838e Task-number: QTBUG-56215 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix a crash in StackView::pop()J-P Nurmi2016-09-261-0/+18
| | | | | | | | | | | | | | | | | If an item is still activating (from a previous pop) when it gets already popped out, we must not set the deactivating status before calling prepareTransition(). This method cancels and finishes the ongoing activation transition, and if the status says that the item was deactivating, the item gets destroyed in the middle of preparing for the deactivation transition. Let prepareTransition() cancel any ongoing transition first, and then set the status after the preparation. The cleanest way is to pass the target status to startTransition() and completeTransition(). Task-number: QTBUG-56158 Change-Id: Id52752200b650ea9f84659bbf43431f8a8b22f1e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Drawer: reparent to the overlay by defaultJ-P Nurmi2016-09-211-0/+1
| | | | | | | | | | | | | | Drawer is a special type of popup that always resides at one of the window edges. Therefore it makes sense for drawers to operate on window coordinates. Re-parenting drawers to the window overlay achieves that. Now that the window overlay is guaranteed to always exist and the ApplicationWindow.overlay attached property works even with plain QML Window, we can reliably use it as a parent for Drawer. Task-number: QTBUG-53168 Change-Id: I37c727001350217ea1d2d9c52d73b4cae44d7c8d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix QQuickPopup::resetWidth/Height()J-P Nurmi2016-09-211-0/+18
| | | | | | | | | | When reseting the explicit size of a popup, the popup items geometry does not necessarily change. However, it affects the positioning of the popup whether it has explicit size or not. For that reason we must ensure that the popup gets repositioned as appropriate. Change-Id: I2dcd895eb7a1adc9c6a804bed4731edac1d550ec Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickPopup: fix negative marginsJ-P Nurmi2016-09-211-0/+24
| | | | | | | | | | | | | The documentation states: A popup with negative margins is not pushed within the bounds of the enclosing window. Therefore QQuickPopupPrivate::reposition() must not subtract negative margins to calculate the available bounds. Change-Id: I626772970bf3d5d9eefbb13811ea1003a85bcf0b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Switch/Delegate: improve dragging behaviorJ-P Nurmi2016-09-202-0/+68
| | | | | | | | | Don't start dragging the handle unless the initial press was at the indicator, or the drag has reached the indicator area. This prevents unnatural jumps when dragging far outside the indicator. Change-Id: I2b31b319a347ab489f2de5c044e42d908827b425 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickSwitchDelegate: make the handle draggableJ-P Nurmi2016-09-191-0/+182
| | | | | | | | | Sync the implementation with QQuickSwitch to make it behave exactly the same way. Change-Id: I59d08f68f87d8776e4012da880ac57a99950dfe8 Task-number: QTBUG-55686 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickSwitch: fix event handlingJ-P Nurmi2016-09-191-0/+70
| | | | | | | | | | | | Switch implemented custom event handling for the indicator, and used QQuickAbstractButton's event handling for the background. This lead to inconsistent signals depending on whether interacting with the handle or the background. This change gets rid of the child mouse event filter for the indicator and makes QQuickSwitch fully utilize the base class event handlers. Change-Id: I773e2eb939cbbf4bc9086cdf2b34e876597ea08e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix Switch to stay pressed as appropriateJ-P Nurmi2016-09-191-0/+23
| | | | | | | | | | Switch is a special type of button that should stay pressed (similarly to Slider) even if the finger slips outside the bounds of the control. It was doing that only when dragged from the handle, not when dragged from the background. Change-Id: I462c66cfe2e67fc3c95215ffeafe3e5771174418 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix Popup to respect explicit sizeJ-P Nurmi2016-09-191-5/+43
| | | | | | | | | [ChangeLog][Controls][Popup] Fixed to respect explicitly set width and height. Task-number: QTBUG-56025 Change-Id: I7c8b0dcf59459a313c4c52eda44de45f1ab648ea Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickControl: clear the hovered state when hiddenJ-P Nurmi2016-09-151-0/+6
| | | | | | Task-number: QTBUG-56007 Change-Id: I6433e0ebc9570b1e9e6e149ef7f631ea6786f672 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix drawer visibility and overlay event handlingJ-P Nurmi2016-09-061-44/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | Drawers were visible all the time, lurking at the window edges to be able to catch presses and drag themselves visible when appropriate. This change moves the handling of window edge presses from QQuickDrawer to QQuickOverlay, making it possible to show and hide drawers like any other popups. Instead of having all drawers visible all the time, we just keep QQuickOverlay visible when there are any registered drawers, even hidden ones. Furthermore, this change makes modal popup/drawer background dimming items accept mouse press events just like they accept hover events to ensure that a modal overlay does not leak input events through. When the background dimming of a modal drawer has been dragged over the drag-threshold, the drawer simply steals/grabs mouse to start dragging of the drawer. Task-number: QTBUG-54794 Task-number: QTBUG-54800 Task-number: QTBUG-55022 Task-number: QTBUG-55703 Task-number: QTBUG-55713 Change-Id: I65fb38fcf1466d4e41192c4321d80fb90b49da9a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* TextField: improve the implicit size calculationJ-P Nurmi2016-09-051-0/+19
| | | | | | | | | | In general, we don't want TextField to grow while typing, but if there is no background nor placeholder, use content width as a fallback. Also take content height into account while calculating the implicit height. Task-number: QTBUG-55684 Change-Id: Iee0eff6861c3573045036a06d7e53f7fc313fbe8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Switch: fix missing pressed() and released() signalsJ-P Nurmi2016-09-051-75/+63
| | | | | Change-Id: I4bf81c06a77980ed3201b43f9d106017f236a8bd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Switch: fix Qt::ClickFocus on the indicatorJ-P Nurmi2016-09-021-0/+11
| | | | | | Task-number: QTBUG-55647 Change-Id: Ic89beaa1e6674d3f94c9a713fd9bd8e8fdfafbb6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Popup: respect dynamic dim & modal changesJ-P Nurmi2016-09-021-2/+8
| | | | | | | | | | | | | What comes to the visual background dimming, popups did not respect dynamic 'dim' or 'modal' property changes. This was half-intentional, because it was thought an unrealistic use-case to toggle these while the popup is visible. As a result, the background dimming was missing if a popup was made visible in a declarative way, and either 'dim' or 'modal' was evaluated after the popup was already visible. Task-number: QTBUG-54797 Change-Id: Icfb171e619540fef2d91908867b702790cde6c32 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Make a plain Container calculate suitable implicit sizeJ-P Nurmi2016-08-311-0/+85
| | | | | | | | | [ChangeLog][Controls][Container] A plain Container now calculates its implicit size based on the implicit size of the content item plus paddings, and the implicit size of the background item. Change-Id: I0481aef0ce713d92bee8b119bf5158dea612d598 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Make a plain Control calculate suitable implicit sizeJ-P Nurmi2016-08-311-1/+28
| | | | | | | | | [ChangeLog][Controls][Control] A plain Control now calculates its implicit size based on the implicit size of the content item plus paddings, and the implicit size of the background item. Change-Id: I086ecf8e3f564ee49df2f9d30015e127dc88db6e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* ScrollIndicator: respect the paddings when overshootingJ-P Nurmi2016-08-301-0/+34
| | | | | | Task-number: QTBUG-55620 Change-Id: I4c06a9e7fefbdbaff7f14a972ed47242c51ca8c6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix attached ToolTip propertiesJ-P Nurmi2016-08-191-0/+25
| | | | | | | | | | The attached properties should apply to the shared/global tooltip instance only when the shared tooltip is visible for the attachee item. Task-number: QTBUG-55347 Change-Id: Ia822f2d1de62d2d6dfb28519817edce674d8c2b8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Close parentless popupsJ-P Nurmi2016-08-191-1/+5
| | | | | | | | | | | | | | | A parentless popup is not visible anywhere, and is not even associated to a QML engine. Attempting to execute transitions would crash. Make sure to remove any event filters (when using a plain QML Window, like with QML TestCase) when a popup is made parentless. This ensures that if the global shared tooltip was shown on an item that was destroyed, the tooltip won't keep interfering with the window where it was last shown. Change-Id: I87bf9f8dda2fbcc5d1b83d1b83a66a6b9e718eb6 Task-number: QTBUG-55347 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.6' into 5.7" into refs/staging/5.7Liang Qi2016-08-101-0/+1
|\
| * Merge remote-tracking branch 'origin/5.6' into 5.7J-P Nurmi2016-08-101-0/+1
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/imports/controls/material/BoxShadow.qml Change-Id: I52c9f70dec9e56e2374d3ec0c135f2963cf5e833
| | * Fix tst_tumbler after Flickable changesJ-P Nurmi2016-08-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | See qtdeclarative commit ebf07c3f for more details. Task-number: QTBUG-55179 Change-Id: Ie7d855396148c892077381666e0200180dda02bd Reviewed-by: Liang Qi <liang.qi@qt.io>
* | | Dial: fix stepSize handlingMitch Curtis2016-08-101-0/+35
|/ / | | | | | | | | | | | | | | | | | | | | As was done in for Slider in c4c803ce4: The correct formula for calculating the "range" or "span" is to-from, not from+(to-from), which is used in the formula for calculating value. Task-number: QTBUG-55228 Change-Id: Ic5463ef5ac5566efc5996aadd9ae39ec108d778f Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | QQuickRangeSlider: fix snapPosition()J-P Nurmi2016-08-101-5/+11
| | | | | | | | | | | | | | | | | | The correct formula for calculating the "range" or "span" is to-from, not from+(to-from), which is used in the formula for calculating value. Task-number: QTBUG-55015 Change-Id: Ie30f7e86a10b606a59a171a4667772e446beaf39 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>