diff options
author | Liang Qi <liang.qi@qt.io> | 2017-01-14 21:58:48 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2017-01-14 21:58:48 +0100 |
commit | 537eced61381f0ce1eabdc797bb0dacd11e11d39 (patch) | |
tree | 13ccb774329ca0214e89675e5f1d1ffa638f8ef6 /src/quicktemplates2/qquickswitch.cpp | |
parent | 698cffce2171bed322aa9d0df1fda316c379efda (diff) | |
parent | 6f7852a307c7ebbdb3b6efa00cbf7626b072bbc1 (diff) |
Merge remote-tracking branch 'origin/5.8.0' into 5.8
Change-Id: Ibad627dfcd3389aeddfe08a10d13097c88f081a1
Diffstat (limited to 'src/quicktemplates2/qquickswitch.cpp')
-rw-r--r-- | src/quicktemplates2/qquickswitch.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/quicktemplates2/qquickswitch.cpp b/src/quicktemplates2/qquickswitch.cpp index fa1b5463..c1a7d34a 100644 --- a/src/quicktemplates2/qquickswitch.cpp +++ b/src/quicktemplates2/qquickswitch.cpp @@ -186,10 +186,14 @@ void QQuickSwitch::mirrorChange() void QQuickSwitch::nextCheckState() { Q_D(QQuickSwitch); - if (keepMouseGrab()) + if (keepMouseGrab()) { setChecked(d->position > 0.5); - else + // the checked state might not change => force a position update to + // avoid that the handle is left somewhere in the middle (QTBUG-57944) + checkStateSet(); + } else { QQuickAbstractButton::nextCheckState(); + } } void QQuickSwitch::checkStateSet() |