X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fquick%2Fitems%2Fqquickcanvas.cpp;h=2e2c8725aa2192ce9b45603afd7811bda0f08b42;hb=24fb8dc27eddfdd62bd2c3a6e863cbf433762cd6;hp=a11f68f709797ae6ee8d5de322fddd45821284e3;hpb=3e6a8eca00334df344a45f09afbcf8fd8e2b7c54;p=profile%2Fivi%2Fqtdeclarative.git diff --git a/src/quick/items/qquickcanvas.cpp b/src/quick/items/qquickcanvas.cpp index a11f68f..2e2c872 100644 --- a/src/quick/items/qquickcanvas.cpp +++ b/src/quick/items/qquickcanvas.cpp @@ -389,7 +389,17 @@ void QQuickCanvasPrivate::translateTouchToMouse(QTouchEvent *event) bool doubleClick = event->timestamp() - touchMousePressTimestamp < static_cast(qApp->styleHints()->mouseDoubleClickInterval()); touchMousePressTimestamp = event->timestamp(); + QQuickMouseEventEx me = touchToMouseEvent(QEvent::MouseButtonPress, p); + me.setTimestamp(event->timestamp()); + me.setAccepted(false); + me.setCapabilities(event->device()->capabilities()); + deliverMouseEvent(&me); + if (me.isAccepted()) { + touchMouseId = p.id(); + event->setAccepted(true); + } if (doubleClick) { + touchMousePressTimestamp = 0; QQuickMouseEventEx me = touchToMouseEvent(QEvent::MouseButtonDblClick, p); me.setTimestamp(event->timestamp()); me.setAccepted(false); @@ -407,15 +417,6 @@ void QQuickCanvasPrivate::translateTouchToMouse(QTouchEvent *event) } } } - QQuickMouseEventEx me = touchToMouseEvent(QEvent::MouseButtonPress, p); - me.setTimestamp(event->timestamp()); - me.setAccepted(false); - me.setCapabilities(event->device()->capabilities()); - deliverMouseEvent(&me); - if (me.isAccepted()) { - touchMouseId = p.id(); - event->setAccepted(true); - } if (touchMouseId != -1) break; } else if (p.id() == touchMouseId) { @@ -531,7 +532,7 @@ void QQuickCanvasPrivate::setFocusInScope(QQuickItem *scope, QQuickItem *item, F if (oldActiveFocusItem) { #ifndef QT_NO_IM - qApp->inputMethod()->reset(); + qApp->inputMethod()->commit(); #endif activeFocusItem = 0; @@ -627,7 +628,7 @@ void QQuickCanvasPrivate::clearFocusInScope(QQuickItem *scope, QQuickItem *item, Q_ASSERT(oldActiveFocusItem); #ifndef QT_NO_IM - qApp->inputMethod()->reset(); + qApp->inputMethod()->commit(); #endif activeFocusItem = 0; @@ -993,6 +994,10 @@ bool QQuickCanvas::event(QEvent *e) case QEvent::WindowDeactivate: rootItem()->windowDeactivateEvent(); break; + case QEvent::FocusAboutToChange: + if (d->activeFocusItem) + qGuiApp->inputMethod()->commit(); + break; default: break; }