When list item size varies smaller items next to larger
items may not be able to become the current item. Ensure
the snap item is found using the correct range, i.e.
half of previous item above snap pos and half of next item
below.
Change-Id: I52ae235e6b801bda48fcb636bb4150ab643715e8
Fixes: QTBUG-20745
Reviewed-on: http://codereview.qt.nokia.com/2650
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Change-Id: I81fd41433b03b13befe0b5c68ec248ea71e8c235
Reviewed-on: http://codereview.qt.nokia.com/2596
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
VisualDataModel doesn't have any way to monitor the lifetime of objects
cached other than relying on the source model to emit a changed signal.
If the model doesn't do this or a pointer property is referenced after
an item has been removed from the model then cache can return a stale
pointer. This can be avoided by querying the model directly whenever
a property is accessed.
Task-number: QTBUG-18036
Change-Id: I7688174c2337cb5c0f77eb7d31a01f4aa958071b
Reviewed-on: http://codereview.qt.nokia.com/2647
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
The example is interesting as debugging tool too.
Change-Id: I9ba69a85f21b776bbfcc65469c8a0e90426f21fd
Reviewed-on: http://codereview.qt.nokia.com/2495
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
reinitialize() was used to implement setGlobalObject()
and setScriptClass() in the QtScript/V8 port, but those
functions will not be part of the new JS API.
Change-Id: I030d371659136a407636c7a13afe7623a60a2837
Reviewed-on: http://codereview.qt.nokia.com/2623
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Avoid warning "inline function ‘QJSValuePrivate::QJSValuePrivate()’
used but never defined" when only qjsvalue_p.h is included
for a compilation unit.
Change-Id: I75bb49dedbfcedf5f71c25210371f03663572b46
Reviewed-on: http://codereview.qt.nokia.com/2620
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
When refilling, if a delegate item is positioned at the start of the
buffer, it should only be removed if its height is > 0. Otherwise
refill() will constantly remove it in removeNonVisibleItems() and
add it again in the next frame in addVisibleItems().
Regression from aa99d4f5cb
Task-number: QTBUG-20712
Change-Id: I21d25fde21e0b559a378c9e202ace58947417a4d
Reviewed-on: http://codereview.qt.nokia.com/2541
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Trim the strings (previously "state1,state2" would work, but not
"state1, state2", and document the feature.
Task-number: QTBUG-14713
Change-Id: Ie0c5f803754751008c3e1bf766f08914f743338f
Reviewed-on: http://codereview.qt.nokia.com/2592
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
QTBUG-20629 reports a crash on destruction of XmlListModel when
cleaning up the global static for the QDeclarativeXmlQuery object.
The fix restructures the internals to be like the threading structure
used for QDeclarativePixmapReader which doesn't use a global static.
Task-number: QTBUG-20629
Reviewed-by: Martin Jones
(cherry picked from commit 422f4e8ec53b917fad09a3e671fd93048dde72ed in
qt-qml-staging:master)
Change-Id: Ic26164947abab67ec9d8f1ae68c20961e7af8a2b
Reviewed-on: http://codereview.qt.nokia.com/2595
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bea Lam <bea.lam@nokia.com>
This commit ensures that correct line and column information is
provided in some cases (duplicate signal or method name, etc).
Task-number: QTBUG-15076
Change-Id: I483bdc92ef4f1d1d2ff565bb957385fd495672da
Reviewed-on: http://codereview.qt.nokia.com/1619
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Previously, alias properties were not considered isResettable even
if the property they alias is resettable. This commit ensures that
the IsResettable flag is set for alias properties iff the aliased
property is resettable, and that it is honoured during property
reset operations.
Task-number: QTBUG-18182
Change-Id: I9cab11923a952df72e976a48489a78b24a34314f
Reviewed-on: http://codereview.qt.nokia.com/1471
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
This commit ensures that we don't attempt to dereference a null
pointer in QDeclarativeProperty. It also fixes a unit test failure
by adding appropriate test files.
Related to commit 9f9b23fd79
Task-number: QTBUG-14697
Change-Id: Ic60521e46401835029e293349a00610342d0d58f
Reviewed-on: http://codereview.qt.nokia.com/2538
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
The old implementation was a hack, it had some memory leak (in case of
deleted engine) and performance problems (for example all names were
copied to separate QList instance instead of reusing v8::Array).
Change-Id: Ic70ad511127a8c05df3c627e4496083004c6452a
Reviewed-on: http://codereview.qt.nokia.com/2512
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Check the version of gcc and use -fno-strict-aliasing flag when it's
4.5.
Merge-request: 1
(This patch was cherry-pick from QtScript module)
Reviewed-by: Jedrzej Nowacki <jedrzej.nowacki@nokia.com>
Change-Id: I0086ec374c7cfd4c0842198734318c915c6cea8d
Reviewed-on: http://codereview.qt.nokia.com/2515
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Previously the callerFile() and callerLine() functions were exposed as
properties of the QtTest module, but now they are available in the
TestUtil component. TestCase was updated but SignalSpy wasn't.
Change-Id: Ic3f35e6f096b28c443e8aadaa78732a8a15dc284
Reviewed-on: http://codereview.qt.nokia.com/2528
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Charles Yin <charles.yin@nokia.com>
The test can be enabled because QJSValueIterator is back.
Change-Id: I33a84b0e584137ecff0d65c2a6152ca972e863f1
Reviewed-on: http://codereview.qt.nokia.com/2440
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
The test can be enabled because QJSValueIterator is back.
Change-Id: I81220ea17470663dab799eb818168480d2df1a54
Reviewed-on: http://codereview.qt.nokia.com/2439
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
This replaces the need for applications to explicitly make a call to
enable the debug services, and rather does it in declarative.h when the
'declarative_debug' CONFIG option is used.
Done-with: Kai Koehne
Reviewed-by: Martin Jones
Reviewed-by: Michael Brasser
(cherry picked from commit 5517cc588c39814530b8bfd957821f55be42acf2)
Change-Id: Iacfc5a9b2ca0c2610288cf86f190b4a9950cacd1
Reviewed-on: http://codereview.qt.nokia.com/2436
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
This commit ensures that the prototype chain is checked during
property Get operations on QObjects and other types in QML by
returning an empty handle from the property Get interceptor if
no valid property with the given name is found.
Task-number: QTBUG-20336
Change-Id: I670ee211c74c0fdcb68c3f91b29fcc0ea8b55d6f
Reviewed-on: http://codereview.qt.nokia.com/1477
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
This commit allows value-types to be compared with each other and
with variants. It also adds a toString() function for each value
type, to allow conversion to (and comparison with) string.
Task-number: QTBUG-14731
Change-Id: I5bde2820917b2fe19b581724977398680617de34
Reviewed-on: http://codereview.qt.nokia.com/1636
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
If a ListView had highlight ranges and StrictlyEnforceRange, but no
highlight item, the content would not move to the correct position
when incrementCurrentIndex() and decrementCurrentIndex() were invoked.
trackedPositionChanged() shouldn't take the current section pos into
account because this is already calculated by FxListItemSG::position()
(this wasn't the case when the code in trackedPositionChanged() was
originally written).
Task-number: QTBUG-20287
Change-Id: I1624b5afd1efbe27630349143b7af2b486cfa260
Reviewed-on: http://codereview.qt.nokia.com/2429
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Since d410ad364e, qtdeclarative does not
depend on qtscript.
Change-Id: I29f6eed7fa399fab16eae9493b0dae4ad4d505d7
Reviewed-on: http://codereview.qt.nokia.com/2406
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Check that we have a valid VisualModel before reacting to model
changes.
Change-Id: I6107e8fb8942a3625e501ab549a337f1affd4fbd
Fixes: QTBUG-20640
Reviewed-on: http://codereview.qt.nokia.com/2481
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Matches GV behaviour. Also fixes a bug in QSGMouseArea,
which we aren't fixing for QtQuick 1.
Task-number: QTBUG-18175
Change-Id: I4ecac7b908504f28de830732c731281407d7b0bc
Reviewed-on: http://codereview.qt.nokia.com/2422
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Regression from 9b5f9c8056 when
QSGItemView was created.
Also fixed other reimplemented methods in QSGListViewPrivate to call
their base class functions (which are currently empty) and changed
some virtual methods in QSGItemViewPrivate to non-virtual where they
didn't need to be virtual.
Task-number: QTBUG-20679
Change-Id: I489593b3eab4f5bbb4126906f170342d1e8811cd
Reviewed-on: http://codereview.qt.nokia.com/2462
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Don't stop current animation until a drag is actually initiated.
Also ensure we handle a stolen grab sensibly.
Change-Id: I0ad493595fb85e1c9bace2d805184f911341fce2
Fixes: QTBUG-19439
Reviewed-on: http://codereview.qt.nokia.com/2420
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
This happens if the currentIndex is changed
while the view is moving. The only time the highlight should
not move to the currentItem is in StrictlyEnforceRange mode when
the user is moving the view.
Change-Id: I4d04174c88cde180f9f8a01cbd33af3edbcc3d4d
Fixes: QTBUG-16936
Reviewed-on: http://codereview.qt.nokia.com/2416
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Specifically, QDeclarativeListModelParser ought to have this behaviour.
Task-number: QTBUG-19763
Change-Id: I9d6ee07d1e17a027b254b87d20d1a93795c55744
Reviewed-on: http://codereview.qt.nokia.com/2431
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Valid import statements should be at the start of a line, maybe
preceded by some white space.
Task-number: QTBUG-20649
Change-Id: I1944bce0d30e680ebdb0798f5ae4e8c91a057a13
Reviewed-on: http://codereview.qt.nokia.com/2423
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Change-Id: Ie8f9731d9f4834d8b94272ef792dc7ad0235ce78
Reviewed-on: http://codereview.qt.nokia.com/2409
Reviewed-by: Martin Jones <martin.jones@nokia.com>
This replaces the dependency to QtScript with two new builtin classes
QJSValue and QJSEngine.
This is still work in progress, development continues now in the master branch.
Change-Id: I7f5487feb45c972f25a22b10cc81b9218b9805de
Reviewed-on: http://codereview.qt.nokia.com/2299
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Defer the actual pause, in the same way we defer the actual start.
Task-number: QTBUG-19080
Change-Id: I500e5aa6678cbb5321979fda31f60d6d6e19a61e
Reviewed-on: http://codereview.qt.nokia.com/2366
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>