diff options
author | Liang Qi <liang.qi@qt.io> | 2016-05-23 16:11:50 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@theqtcompany.com> | 2016-05-24 14:00:39 +0200 |
commit | 8ae479a8eac7b9ffeeba24e9e459e3e02ca20587 (patch) | |
tree | d6fdf18ddd2456835c598f40399348d247af6c97 /src/quick/items | |
parent | 1337e0d0827e86591e67a6dbaaeb3bd3f9ed733b (diff) | |
parent | 607320ca9fb2796a5f6f2578578fd314f7e8b99e (diff) |
Merge remote-tracking branch 'origin/5.7' into dev
Conflicts:
src/qml/jsruntime/qv4engine_p.h
src/qml/jsruntime/qv4runtime_p.h
src/qml/qml/qqmldelayedcallqueue.cpp
src/qml/qml/qqmlvaluetypewrapper.cpp
src/qml/qml/qqmlvmemetaobject.cpp
src/qml/qml/v8/qv8engine_p.h
tests/auto/quick/qquicktext/tst_qquicktext.cpp
Change-Id: I3f0608c7beb88088cbbef4d0db59920f56deaea9
Diffstat (limited to 'src/quick/items')
-rw-r--r-- | src/quick/items/context2d/qquickcanvasitem.cpp | 1 | ||||
-rw-r--r-- | src/quick/items/context2d/qquickcanvasitem_p.h | 1 | ||||
-rw-r--r-- | src/quick/items/context2d/qquickcontext2d.cpp | 1 | ||||
-rw-r--r-- | src/quick/items/context2d/qquickcontext2d_p.h | 1 | ||||
-rw-r--r-- | src/quick/items/qquickflickable.cpp | 8 | ||||
-rw-r--r-- | src/quick/items/qquickimage.cpp | 1 | ||||
-rw-r--r-- | src/quick/items/qquickitem.cpp | 1 | ||||
-rw-r--r-- | src/quick/items/qquickloader.cpp | 4 | ||||
-rw-r--r-- | src/quick/items/qquickloader_p_p.h | 1 | ||||
-rw-r--r-- | src/quick/items/qquicktext.cpp | 5 |
10 files changed, 19 insertions, 5 deletions
diff --git a/src/quick/items/context2d/qquickcanvasitem.cpp b/src/quick/items/context2d/qquickcanvasitem.cpp index 68f465cc5a..4abcc722d1 100644 --- a/src/quick/items/context2d/qquickcanvasitem.cpp +++ b/src/quick/items/context2d/qquickcanvasitem.cpp @@ -55,6 +55,7 @@ #include <private/qv4value_p.h> #include <private/qv4functionobject_p.h> #include <private/qv4scopedvalue_p.h> +#include <private/qv4qobjectwrapper_p.h> QT_BEGIN_NAMESPACE diff --git a/src/quick/items/context2d/qquickcanvasitem_p.h b/src/quick/items/context2d/qquickcanvasitem_p.h index b99fcf869d..4f94393a45 100644 --- a/src/quick/items/context2d/qquickcanvasitem_p.h +++ b/src/quick/items/context2d/qquickcanvasitem_p.h @@ -53,6 +53,7 @@ #include <QtQuick/qquickitem.h> #include <private/qv8engine_p.h> +#include <private/qqmlrefcount_p.h> #include <QtCore/QThread> #include <QtGui/QImage> diff --git a/src/quick/items/context2d/qquickcontext2d.cpp b/src/quick/items/context2d/qquickcontext2d.cpp index ced4d2a6c4..b2117d3eb9 100644 --- a/src/quick/items/context2d/qquickcontext2d.cpp +++ b/src/quick/items/context2d/qquickcontext2d.cpp @@ -57,6 +57,7 @@ #include <private/qv4domerrors_p.h> #include <private/qv4engine_p.h> #include <private/qv4object_p.h> +#include <private/qv4qobjectwrapper_p.h> #include <private/qquickwindow_p.h> #include <private/qv4value_p.h> diff --git a/src/quick/items/context2d/qquickcontext2d_p.h b/src/quick/items/context2d/qquickcontext2d_p.h index 818db0868c..cfb62ee052 100644 --- a/src/quick/items/context2d/qquickcontext2d_p.h +++ b/src/quick/items/context2d/qquickcontext2d_p.h @@ -66,6 +66,7 @@ #include <QtCore/QWaitCondition> #include <private/qv4value_p.h> +#include <private/qv4persistent_p.h> //#define QQUICKCONTEXT2D_DEBUG //enable this for just DEBUG purpose! diff --git a/src/quick/items/qquickflickable.cpp b/src/quick/items/qquickflickable.cpp index ae138d7ceb..1853a1d948 100644 --- a/src/quick/items/qquickflickable.cpp +++ b/src/quick/items/qquickflickable.cpp @@ -1402,15 +1402,15 @@ void QQuickFlickable::wheelEvent(QWheelEvent *event) break; case Qt::NoScrollPhase: // default phase with an ordinary wheel mouse case Qt::ScrollUpdate: - if (d->scrollingPhase) { + if (d->scrollingPhase) d->pressed = true; - d->movementEndingTimer.start(MovementEndingTimerInterval, this); - } +#ifdef Q_OS_OSX + d->movementEndingTimer.start(MovementEndingTimerInterval, this); +#endif break; case Qt::ScrollEnd: d->pressed = false; d->scrollingPhase = false; - d->movementEndingTimer.start(MovementEndingTimerInterval, this); d->draggingEnding(); event->accept(); returnToBounds(); diff --git a/src/quick/items/qquickimage.cpp b/src/quick/items/qquickimage.cpp index c04a526bd0..a168b43fd1 100644 --- a/src/quick/items/qquickimage.cpp +++ b/src/quick/items/qquickimage.cpp @@ -44,6 +44,7 @@ #include <QtQuick/private/qsgcontext_p.h> #include <private/qsgadaptationlayer_p.h> +#include <private/qnumeric_p.h> #include <QtCore/qmath.h> #include <QtGui/qpainter.h> diff --git a/src/quick/items/qquickitem.cpp b/src/quick/items/qquickitem.cpp index d6fdf5795e..d0d10a5849 100644 --- a/src/quick/items/qquickitem.cpp +++ b/src/quick/items/qquickitem.cpp @@ -71,6 +71,7 @@ #include <private/qv4engine_p.h> #include <private/qv4object_p.h> +#include <private/qv4qobjectwrapper_p.h> #include <private/qdebug_p.h> #ifndef QT_NO_CURSOR diff --git a/src/quick/items/qquickloader.cpp b/src/quick/items/qquickloader.cpp index c1126d9b12..63c9558d7a 100644 --- a/src/quick/items/qquickloader.cpp +++ b/src/quick/items/qquickloader.cpp @@ -583,6 +583,7 @@ void QQuickLoader::setSource(QQmlV4Function *args) d->disposeInitialPropertyValues(); d->initialPropertyValues.set(args->v4engine(), ipv); } + d->qmlCallingContext.set(scope.engine, scope.engine->qmlContext()); setSource(sourceUrl, false); // already cleared and set ipv above. } @@ -651,7 +652,8 @@ void QQuickLoaderPrivate::setInitialState(QObject *obj) Q_ASSERT(v4); QV4::Scope scope(v4); QV4::ScopedValue ipv(scope, initialPropertyValues.value()); - d->initializeObjectWithInitialProperties(ipv, obj); + QV4::Scoped<QV4::QmlContext> qmlContext(scope, qmlCallingContext.value()); + d->initializeObjectWithInitialProperties(qmlContext, ipv, obj); } void QQuickLoaderIncubator::statusChanged(Status status) diff --git a/src/quick/items/qquickloader_p_p.h b/src/quick/items/qquickloader_p_p.h index ad05bb00ec..9ef89a74d6 100644 --- a/src/quick/items/qquickloader_p_p.h +++ b/src/quick/items/qquickloader_p_p.h @@ -108,6 +108,7 @@ public: QQmlContext *itemContext; QQuickLoaderIncubator *incubator; QV4::PersistentValue initialPropertyValues; + QV4::PersistentValue qmlCallingContext; bool updatingSize: 1; bool active : 1; bool loadingFromSource : 1; diff --git a/src/quick/items/qquicktext.cpp b/src/quick/items/qquicktext.cpp index 65044d33d4..648929c8cd 100644 --- a/src/quick/items/qquicktext.cpp +++ b/src/quick/items/qquicktext.cpp @@ -650,6 +650,11 @@ QRectF QQuickTextPrivate::setupTextLayout(qreal *const baseline) emit q->lineCountChanged(); } + if (qFuzzyIsNull(q->width())) { + layout.setText(QString()); + textHasChanged = true; + } + QFontMetricsF fm(font); qreal height = (lineHeightMode() == QQuickText::FixedHeight) ? lineHeight() : qCeil(fm.height()) * lineHeight(); *baseline = fm.ascent(); |