profile/ivi/qtdeclarative.git
12 years agoAllow objects created in QML with incubateObject to be destroyed.
Michael Brasser [Tue, 3 Apr 2012 01:50:05 +0000 (11:50 +1000)]
Allow objects created in QML with incubateObject to be destroyed.

Change-Id: I8a0678ea8dff6f4a40ac367395a99dd025f7f08a
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoFix QQuickTextInput test instability.
Andrew den Exter [Tue, 3 Apr 2012 04:27:09 +0000 (14:27 +1000)]
Fix QQuickTextInput test instability.

Use a QWindow to steal focus rather than a second QQuickView, as it
appears there may be some issue with shared GL resources between views.

Change-Id: I8a134e3b4a1e54f645d0071543ec8f94338ff315
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoSet cursorVisible to false when im cursor length is 0.
Andrew den Exter [Thu, 29 Mar 2012 06:34:09 +0000 (16:34 +1000)]
Set cursorVisible to false when im cursor length is 0.

If the length of the QInputMethodEvent::Cursor attribute is 0 the
cursor is supposed to be hidden.  To ensure this and any other IM
state is reverted when the input method is reset send a empty
event to the editor when preedit is cancelled or removed and
count formatting or cursor changes when determining if the
input method is composing (i.e has state that needs to be reset).

Change-Id: Ifca69aa0c18776b1aef355ed6ae9aecc40b9d475
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoFix crash when changing the grandparent of an item with focus.
Andrew den Exter [Fri, 30 Mar 2012 07:36:40 +0000 (17:36 +1000)]
Fix crash when changing the grandparent of an item with focus.

When an item was reparented it's sub focus item was cleared and those
of it's children were cleared along with those in the tree the item was
removed from.  Since we now rely on the focus state of an unparented
tree to be correct we need to restore the sub focus items of the
unparented tree.

Change-Id: I236c512751b99092c7e9a39194f4680304bfacc5
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoScattered example fixes
Alan Alpert [Wed, 28 Mar 2012 08:46:31 +0000 (18:46 +1000)]
Scattered example fixes

Some using of pixel size, some moving an image because individual
sub-examples shouldn't depend on the shared folder.

Change-Id: If0f66f805f5fc9bcbf9b870274adac404466ec08
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoirrelevant qDebug removed
Simjees Abraham [Fri, 30 Mar 2012 12:42:50 +0000 (14:42 +0200)]
irrelevant qDebug removed

syncing debugutil with the change done to remove the irrelevant qDebug
at stat of debug session.

Change-Id: I17520319684e6e213037b09550d1a97b493150cd
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoDebugger: Use "QML" also in macro names
Kai Koehne [Fri, 30 Mar 2012 11:49:33 +0000 (13:49 +0200)]
Debugger: Use "QML" also in macro names

QT_DECLARATIVE_DEBUG will be removed as soon as qtbase is
updated.

Change-Id: I9dbfe95b8bcb3bf1502319a040a758389b6977a2
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
12 years agoirrelevant qDebug removed
Simjees Abraham [Fri, 30 Mar 2012 12:21:16 +0000 (14:21 +0200)]
irrelevant qDebug removed

Irrelevant debug statement which gets printed at start of debug session
is removed. The same is removed in Auto-tests as well.

Change-Id: If8f44950952f08b55ff884c1fe42670108e2369d
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoFix exit crash when running samegame-desktop in qmlscene.
Friedemann Kleint [Thu, 29 Mar 2012 13:46:15 +0000 (15:46 +0200)]
Fix exit crash when running samegame-desktop in qmlscene.

Change-Id: Ib4c162a909eb45e99a7e5c31737587720e9e2deb
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoAllocate QQuickView on heap instead of stack
Charles Yin [Fri, 30 Mar 2012 04:25:56 +0000 (14:25 +1000)]
Allocate QQuickView on heap instead of stack

Some qpa plugin will crash when delete the QApplication instance if
QQuickView is created on stack, this is a workaround fix, the real
reason still need to be investigated further.

Change-Id: Iea75541e53a94f65454e78f8020003e6533c0bd0
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoImprove the documentation of clearComponentCache()
Matthew Vogt [Fri, 30 Mar 2012 06:27:44 +0000 (16:27 +1000)]
Improve the documentation of clearComponentCache()

Change-Id: I842632a3173632b0fca521138caffe960b752da1
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAllow V8 bindings to be assigned to aliases
Aaron Kennedy [Fri, 9 Mar 2012 11:29:51 +0000 (12:29 +0100)]
Allow V8 bindings to be assigned to aliases

V8 bindings must be able to be retargetted for them to be assignable
to aliases.

Change-Id: If72ff2a24188667113cbb46439129f8d2fcb8f90
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoLoosen shared binding tests
Aaron Kennedy [Fri, 9 Mar 2012 10:40:44 +0000 (11:40 +0100)]
Loosen shared binding tests

Previously we blocked all function calls, but only because we were trying
to prevent "eval" calls from appearing in shared bindings.  Instead this
test allows function calls as long as the identifier "eval" doesn't
appear.

This also exposed a crash with v8 bindings that is also fixed.

Change-Id: I22eefd290c7b82d9c01b2cd2907a46e560ae4db9
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix warnings in qtdeclarative.
Friedemann Kleint [Thu, 29 Mar 2012 09:16:37 +0000 (11:16 +0200)]
Fix warnings in qtdeclarative.

- QString from ASCII conversions
- Unused variables
- Pointer mismatches

Change-Id: I5f76dce4f2ba481c2c2bce8681cf8107bd629566
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoDebugger: Fix v8profiler failures on mac
Kai Koehne [Fri, 30 Mar 2012 07:42:53 +0000 (09:42 +0200)]
Debugger: Fix v8profiler failures on mac

Make the test more robust.

Change-Id: Id4e5d25e9f9cb0bdbe14670a060d7348bceeb823
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
12 years agoFix crash in QUrl-to-int conversion in v4
Chris Adams [Thu, 29 Mar 2012 05:15:23 +0000 (15:15 +1000)]
Fix crash in QUrl-to-int conversion in v4

Also adds various unit tests for other conversion operations.
Note that many of the conversion operations produce the wrong results,
and have been marked with QTBUG-24706.

Task-number: QTBUG-24706
Change-Id: Id96a7409e31f2e889dce6b501247f58b59fa6a98
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix forceActiveFocus() with multiple items having focus: true
Andrew den Exter [Wed, 28 Mar 2012 08:11:14 +0000 (18:11 +1000)]
Fix forceActiveFocus() with multiple items having focus: true

Ensure focus is cleared from an item if it is parented to an item that
already has a sub focus item.  Checking scopedFocusItem() didn't allow
for the case where an unparented item is the root of the focus tree
but not itself a focus scope, checking the unguarded subFocusItem
member will.

Change-Id: I482779e8077e9f282d22bd0090e669840764e52a
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoSize loaded item before bindings are evaluated
Martin Jones [Fri, 30 Mar 2012 00:48:50 +0000 (10:48 +1000)]
Size loaded item before bindings are evaluated

If the Loader size is set explicitly we can set the item size
before the bindings are run, and avoiding an additional
anchor layout.

Also ensure item implict size changes are propagated/notified in the
Loader.

Change-Id: Ie22b018b22be8457ccf30b907a26e44260b9cef7
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoWhen async loading a view, ensure its delegates are also async.
Martin Jones [Fri, 30 Mar 2012 01:08:07 +0000 (11:08 +1000)]
When async loading a view, ensure its delegates are also async.

We were forcing a sync incubation the second time the item was
requested synchronously, breaking nested async creation.  The
incubation should only be forced if previously the item was
requested async.

Change-Id: Id2aff97222d7b1262b502994d3f9c0f009a7a909
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoImprove Flipable element unit tests
Chris Adams [Thu, 29 Mar 2012 02:54:24 +0000 (12:54 +1000)]
Improve Flipable element unit tests

Ensure that the reported side is updated correctly due to a rotation
transform triggered by a state change.

Change-Id: I039c6bcba872c7731c810137551e760414fabc05
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix context2d transform issues
Charles Yin [Tue, 27 Mar 2012 14:06:28 +0000 (00:06 +1000)]
Fix context2d transform issues

After calling transform related methods, the current path should be transformed with the same method but in reversal mode.
So that during painting, the painter will apply the CTM to this path again, otherwise path will be transformed twice.

Change-Id: I7e12bdff82dabb408f47152ba07b608872d4093f
Task-number: QTBUG-24988
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoUse metaObjectForType in the v4 compiler.
Michael Brasser [Thu, 29 Mar 2012 04:39:35 +0000 (14:39 +1000)]
Use metaObjectForType in the v4 compiler.

Match usage in the v4 IR builder.

Change-Id: Ibc69a01d3948ab3ad0ed5c656e99b13a7edda8fc
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoFix compiling qtdeclarative without accessibility
Jerome Leclanche [Thu, 29 Mar 2012 11:23:33 +0000 (12:23 +0100)]
Fix compiling qtdeclarative without accessibility

This adds two missing QT_NO_DECLARATIVE and conditionally compiles the accessible plugins.

Change-Id: I3ae43b1e38cff0e64fea5cc06146be519ff2713d
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
12 years agoQmlDebugging: Send parent debug id with object info
Aurindam Jana [Wed, 28 Mar 2012 14:12:52 +0000 (16:12 +0200)]
QmlDebugging: Send parent debug id with object info

Change-Id: Ic197656b90a309d1d9e72b9d6648fee86164c3e1
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoUse minimal javascript expression for bound signals
Chris Adams [Tue, 27 Mar 2012 06:56:08 +0000 (16:56 +1000)]
Use minimal javascript expression for bound signals

Previously, QQmlBoundSignal used QQmlExpression internally.  This
commit adds a new, more optimal QQmlJavaScriptExpression subclass
specifically designed for QQmlBoundSignal, and converts the code
to use it instead of QQmlExpression where appropriate.

Task-number: QTBUG-24460
Change-Id: I2865a119ce840235e27a7722d8052ca61c265f69
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoRe-order imports statements to import nested imports later
Matthew Vogt [Mon, 26 Mar 2012 06:39:00 +0000 (16:39 +1000)]
Re-order imports statements to import nested imports later

Re-order the imports for a script by increasing order of URI length.
This ensures that an import of the type 'import X.Y' is processed
after the import of 'import X' which contains the type definitions for
the namespace X.Y.

Task-number: QTBUG-24369
Change-Id: I1b06e9d114a97c9f47279f8f33383a27e0efb4bb
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFixed unittests skipping for cross_compile option
Kurt Korbatits [Fri, 23 Mar 2012 03:51:06 +0000 (13:51 +1000)]
Fixed unittests skipping for cross_compile option

- qmlmin, qqmlparser, examples unittests to skip source dependent
  tests when cross_compile option used as content not available.

Change-Id: Ieaadeff0c303f0a633b8a3cc506a764ea995cf42
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoThe new QUrl has no need for the 0x100 special value.
Thiago Macieira [Thu, 20 Oct 2011 08:31:02 +0000 (10:31 +0200)]
The new QUrl has no need for the 0x100 special value.

This change is required to compile with the new QUrl.

Change-Id: I62cafa1485a90893cca427cbed839700f9579ef9
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoDon't qobject_cast an object being destructed
Kent Hansen [Wed, 28 Mar 2012 14:27:08 +0000 (16:27 +0200)]
Don't qobject_cast an object being destructed

qobject_cast will cause the object's virtual metaObject() function to
be called. Calling virtual functions in a destructor should be
avoided. (The qobject_cast fails, and the assert is triggered.)

Change-Id: I04a7604adb8884cd36731577303793c74c0a8673
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
12 years agoFixed the crash in Zoomtool when the app is exited when ZoomTool is active.
Simjees Abraham [Wed, 28 Mar 2012 13:09:28 +0000 (15:09 +0200)]
Fixed the crash in Zoomtool when the app is exited when ZoomTool is active.

Change-Id: Ibc97665ddf789bd10c5256c02b8471ec2f4e9855
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoReplace usage of QCursor, and update hoverVisible test.
Michael Brasser [Wed, 28 Mar 2012 06:46:31 +0000 (16:46 +1000)]
Replace usage of QCursor, and update hoverVisible test.

QCursor::pos() doesn't work well with mouse events generated by the test
framework.

Change-Id: I62ee2228c194f21cf17f6271c662056a90c5ef2d
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoTidy up examples documentation
Alan Alpert [Tue, 20 Mar 2012 07:57:07 +0000 (17:57 +1000)]
Tidy up examples documentation

Add missing doc images, move documentation into examples directory, and
update example doc references to the new locations (quick/qml instead of
declarative or qtquick).

Change-Id: I67a9302f2b451b8bf30f4ca6b625f54b240da429
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
12 years agoReduce assumptions in examples
Alan Alpert [Tue, 27 Mar 2012 08:00:33 +0000 (18:00 +1000)]
Reduce assumptions in examples

-dynamic scene, don't set duration on running animation (doesn't work)
-dynamic scene, just use set colors instead of system palette (in case
platform doesn't support it right, like N900)
-dynamic scene, calculator and shadereffects, don't rely on root item being
automatically in scope (possibly confusing)

Change-Id: I1eec018d5387424dc6b07bf51c1b2184b3048553
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoUse pixmapCache in sprite assembly
Alan Alpert [Tue, 27 Mar 2012 07:29:48 +0000 (17:29 +1000)]
Use pixmapCache in sprite assembly

Change-Id: Ibd4f5ea08a548e3c255db3e771b667f5850978e2
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
12 years agoWarn on incompatible v4 binding object type
Matthew Vogt [Tue, 27 Mar 2012 04:58:19 +0000 (14:58 +1000)]
Warn on incompatible v4 binding object type

For QObject-derived properties, verify that the type of the source
object is convertible to the type of the target object, and report
an error for incompatible assignment attempts.

Task-number: QTBUG-24986
Change-Id: Ieece29a017222e48351cd433c1b2f9e2d93a5fd7
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix imports in GridView test
Martin Jones [Wed, 28 Mar 2012 00:28:45 +0000 (10:28 +1000)]
Fix imports in GridView test

Were still importing QtQuick 1.0 and not checking whether the
components were created.

Change-Id: Ie42e5d1b3a134af39c62c5eb54a1d620c59cefee
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoSection comparison should be case insensitive.
Martin Jones [Tue, 27 Mar 2012 23:17:02 +0000 (09:17 +1000)]
Section comparison should be case insensitive.

Allows use of mixed case model data without having to add a
special role just for sectioning.

Change-Id: I0a747e51542b5bf0f9db8fc2732882928a6cc676
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoFix qquicktext tests to use QQmlComponent not QDeclarativeComponent
Julian de Bhal [Mon, 26 Mar 2012 05:13:54 +0000 (15:13 +1000)]
Fix qquicktext tests to use QQmlComponent not QDeclarativeComponent

Change-Id: I340e01b9fa6d77343f25180abaa021454c7a0767
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoTextInput to use password mask delay if platform style defines one
Pekka Vuorela [Fri, 16 Mar 2012 14:21:53 +0000 (16:21 +0200)]
TextInput to use password mask delay if platform style defines one

Change-Id: I05b98db2d7855f29b11749524a74e04a71178347
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
12 years agoDebugger: Allow enabling of qml debugger without startup warning
Kai Koehne [Tue, 27 Mar 2012 07:20:20 +0000 (09:20 +0200)]
Debugger: Allow enabling of qml debugger without startup warning

Add QT_DECLARATIVE_DEBUG_NO_WARNING define to support enabling
the qml debugger without printing the usual startup warning.

This should be used with care, but e.g. for qmlscene the warning
probably confuses more than it helps.

Change-Id: I33704857baebfc8bca60abbff09138e259390b49
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
12 years agoBuffer changes received during layout()
Bea Lam [Tue, 27 Mar 2012 04:34:58 +0000 (14:34 +1000)]
Buffer changes received during layout()

Otherwise, changes received by a view during layout() may
override the changes that are currently being processed.

Change-Id: Iabc4db682f85ceb7d04c3f7442fb6c98ebdb94f1
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoRelease FBOs held by the shader effect source sooner.
Kim Motoyoshi Kalland [Mon, 26 Mar 2012 08:36:25 +0000 (10:36 +0200)]
Release FBOs held by the shader effect source sooner.

Change-Id: I2bdb4a9e4da50afff6752c2c0fd7e60041ede14f
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoAdd QQmlBoundSignalNoParams qt-v5.0.0-alpha1
Michael Brasser [Thu, 22 Mar 2012 23:32:45 +0000 (09:32 +1000)]
Add QQmlBoundSignalNoParams

This class is used for signal handlers with no parameters, and is more
lightweight than QQmlBoundSignal.

Change-Id: Ie63eb989d334906657fd16fe35386df198654c28
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoUpdate documentation
Alan Alpert [Mon, 26 Mar 2012 08:56:47 +0000 (18:56 +1000)]
Update documentation

Added \inmodule tags for qml module classes which were lacking them.
Also updated the \since to 5.0.

Change-Id: Ia5d393d593fdb484893cd4e3796b6854d4c637b3
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoRemove insignification from some fixed tests
Miikka Heikkinen [Tue, 20 Mar 2012 09:25:10 +0000 (11:25 +0200)]
Remove insignification from some fixed tests

These tests no longer fail on Windows, so remove insignification from
them.

Change-Id: Ic4fd2fa83a0f706c1cbd5299d5243f65c3251f93
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoInitial checkin for ZoomTool implementation
Simjees Abraham [Mon, 19 Mar 2012 10:33:05 +0000 (11:33 +0100)]
Initial checkin for ZoomTool implementation

Change-Id: I0f2c8906a48b0c1d45fb980a349a8ffb135130b5
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoRemove tentative commit from editors
Pekka Vuorela [Wed, 29 Feb 2012 16:43:50 +0000 (18:43 +0200)]
Remove tentative commit from editors

Feature to be reimplemented simplified. Now using new
FocusAboutToChange event for using input method to commit stuff when
window is losing focus.

Change-Id: I81c96c36d9f0a1b38adb4324f3b892c33547cb50
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoFix horizontal alignment bug with rich text
Yann Bodson [Mon, 26 Mar 2012 06:04:52 +0000 (16:04 +1000)]
Fix horizontal alignment bug with rich text

Task-number: QTBUG-21473
Change-Id: I3542d7fb49ec1ea370709c799167ec01cf5ed19c
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoRemove QObject parenting from QQmlAbstractBoundSignal.
Michael Brasser [Thu, 22 Mar 2012 22:22:02 +0000 (08:22 +1000)]
Remove QObject parenting from QQmlAbstractBoundSignal.

Change-Id: If549cf57bbac18a986a2a0e63fdc76902d2dae43
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoUse QQmlAbstractBoundSignal where appropriate.
Michael Brasser [Wed, 21 Mar 2012 06:28:32 +0000 (16:28 +1000)]
Use QQmlAbstractBoundSignal where appropriate.

Prepare for the addition of another subclass.

Change-Id: I340f735503e661d9d735f3316a065f807294921b
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoMake sure window manager wakeup() can always wake up
Charles Yin [Fri, 23 Mar 2012 16:17:35 +0000 (02:17 +1000)]
Make sure window manager wakeup() can always wake up

1. Change isExternalUpdatePending to true to avoid window manager sleep again immediately
   without processing any events
2. Also wake up the window manager if wait at posting sync event

Change-Id: I184dba32a66379b688b585c27c4d01799c233e84
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoPathView was missing the maximumFlickVelocity property
Martin Jones [Sun, 25 Mar 2012 02:37:08 +0000 (12:37 +1000)]
PathView was missing the maximumFlickVelocity property

Change-Id: I0ed4ff0fe169187f7a8e03597be7407e9896100d
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoAdd templated module api registration function
Chris Adams [Wed, 21 Mar 2012 03:24:58 +0000 (13:24 +1000)]
Add templated module api registration function

This commit adds a templated module api registration function which
allows clients to provide type information at registration time.
We use this typeinformation in V4 if available, in order to allow
module APIs to be used in v4 bindings.

This commit also clarifies the ownership semantics of QObject module
apis, and updates some documentation references which were missed
during the rename of Declarative to Qml.

Task-number: QTBUG-24894
Change-Id: Iebb61ca8d8eacbb15218549eab715e22f52a1474
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoUpdate item anchors when the baseline offset changes.
Andrew den Exter [Mon, 26 Mar 2012 02:04:00 +0000 (12:04 +1000)]
Update item anchors when the baseline offset changes.

Task-number: QTBUG-24303
Change-Id: I75fb8eb8afb48a3f40fa159d914ac12ab6bc9ffe
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoSupport registered QFlags in QML methods and signal handlers.
Michael Brasser [Thu, 22 Mar 2012 00:38:00 +0000 (10:38 +1000)]
Support registered QFlags in QML methods and signal handlers.

Change-Id: I2a71122303dcf7af4f07c3ffb73456bcdce62a74
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoBasic system tests for ListView sections
Damian Jansen [Fri, 23 Mar 2012 01:09:30 +0000 (11:09 +1000)]
Basic system tests for ListView sections

Change-Id: I3f33aa77a4bbe87a832066bd1f527521dfa543ff
Reviewed-by: Natalia Shubina <natalia.shubina@nokia.com>
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoCorrect double, triple click handling in canvas when in touch mode
Laszlo Agocs [Sat, 24 Mar 2012 08:03:58 +0000 (10:03 +0200)]
Correct double, triple click handling in canvas when in touch mode

The correct MouseArea signal sequence for a triple click is press,
release, click, press, doubleclick, release, press, release, click.
However QQuickCanvas sent the doubleclick before the press and did not
reset the timestamp of the last press, resulting in a sequence with
multiple doubleclicks and missing press signals.

Change-Id: Ied5f3ea93d3ad28128ce7db5c8190ab48961da6d
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoRemove QQuickItem::sendAccessibilityUpdate
Frederik Gladhorn [Wed, 14 Mar 2012 07:26:35 +0000 (08:26 +0100)]
Remove QQuickItem::sendAccessibilityUpdate

This slot is unused and doesn't make sense
since it's too generic.

Change-Id: Idae4b7cc21a794151f87b0db6833bbd6350549fb
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
12 years agoMake sure we get a valid accessibleInterface in child_helper.
Frederik Gladhorn [Fri, 23 Mar 2012 18:28:12 +0000 (19:28 +0100)]
Make sure we get a valid accessibleInterface in child_helper.

With filtering out more items from the tree of accessibles
make sure that if we get 0 returned we don't crash.

Change-Id: I7926ab66cd037952f7042dc46092cf5e2096d7c6
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
12 years agoFilter accessible objects.
Frederik Gladhorn [Wed, 21 Mar 2012 12:10:07 +0000 (13:10 +0100)]
Filter accessible objects.

Only include objects in the hierarchy if
either they or their descendants are
accessible.

Change-Id: I4ed01ccfa2b095a5205f72af97acb6c8dbaa3e74
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
12 years agoAdd active and invisible states for accessibility.
Frederik Gladhorn [Tue, 13 Mar 2012 19:26:35 +0000 (20:26 +0100)]
Add active and invisible states for accessibility.

QQuickView should expose the right states.

Change-Id: I38c0ce8bea46a749efb0b9085fb0f646538698b2
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
12 years agoAdd accessibility updates.
Frederik Gladhorn [Tue, 20 Mar 2012 12:56:48 +0000 (13:56 +0100)]
Add accessibility updates.

Re-add all accessibility updates with new api.

Change-Id: Iec91c41a0137911ccf6e9f4fa907a378d9dd335a
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
12 years agoPrevent the root object from being garbage collected.
Michael Brasser [Fri, 23 Mar 2012 03:18:04 +0000 (13:18 +1000)]
Prevent the root object from being garbage collected.

Passing the root object as a return value from a C++ function could
cause the indestructible flag to be set to false.

Change-Id: Ib70c666f0d0ffbb48bca1996c2517fbccafa5dc1
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoFix crash issue for path animation and path interpulator
Charles Yin [Thu, 22 Mar 2012 04:07:28 +0000 (14:07 +1000)]
Fix crash issue for path animation and path interpulator

When set progress value out of [0,1], path animation and
path interpulator should make sure the value be modified
in the valid value range, otherwise the QQuickPath::backwardsPointAt()
will crash.

Task-number: QTBUG-24308
Change-Id: Icd6e9165c9f844ddb8ec84c229eac4db5246a749
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix Sprite Assembly
Alan Alpert [Thu, 22 Mar 2012 08:12:58 +0000 (18:12 +1000)]
Fix Sprite Assembly

This optimization doesn't account for the width of the assembled image
possibly being too small to fit the whole source image width. Since it
meant copying more image data than we needed, I'm no longer convinced
that it actually is an optimization over a simple cut (as this patch
implements).

Change-Id: I3fe502a75979e972f62d9dbf26f1ffec9069a102
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoChange smooth to be true by default
Gunnar Sletta [Thu, 22 Mar 2012 12:50:32 +0000 (13:50 +0100)]
Change smooth to be true by default

Change-Id: Ia74a5c76058a2822e61dfa2f7316ea0612ebc15c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoShare depth-stencil buffers between ShaderEffectSources of same size.
Kim Motoyoshi Kalland [Wed, 15 Feb 2012 16:26:48 +0000 (17:26 +0100)]
Share depth-stencil buffers between ShaderEffectSources of same size.

Change-Id: If325a38175249c3a3ffe5043d42ba35dbf90ce0c
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoUpdate samegame demo to new layout
Alan Alpert [Tue, 20 Mar 2012 06:06:37 +0000 (16:06 +1000)]
Update samegame demo to new layout

Change-Id: Ib9cf4fb29022c63ce24f7b8c7ca4ff17c149a9cb
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoCheck for null pointer dereference
Alan Alpert [Thu, 22 Mar 2012 03:17:11 +0000 (13:17 +1000)]
Check for null pointer dereference

Standard defensive programming

Change-Id: Ic2b89cacf06812441a2b8f02c6b22de431c50b4a
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAdd move comprehensive tests for TextInput input mask.
Andrew den Exter [Mon, 12 Mar 2012 01:36:28 +0000 (11:36 +1000)]
Add move comprehensive tests for TextInput input mask.

This was previously covered by tests for QLineEdit but since the two
implementations have diverged we also need to test individually.

Change-Id: I00ae7bfd96302d08af4364f577925e99882117a0
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoFix text wrapping and eliding with implicitWidth.
Andrew den Exter [Thu, 22 Mar 2012 02:04:16 +0000 (12:04 +1000)]
Fix text wrapping and eliding with implicitWidth.

Update the implicitWidth of the item before continuing with the layout
rather than after it's completed this gives any bindings dependent on
the implicitWidth the opportunity to update the width before the layout
continues.

Task-number: QTBUG-22680
Task-number: QTBUG-24251
Change-Id: I61cd96ad9891b22d8b83937ad2c06719f88976b6
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUpdate model view examples to common launcher format.
Andrew den Exter [Thu, 8 Mar 2012 00:50:11 +0000 (10:50 +1000)]
Update model view examples to common launcher format.

Change-Id: I8dc30a9ade3cbbfa91d51d85617975ad7d46ee15
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoUpdate tutorial
Alan Alpert [Tue, 20 Mar 2012 08:36:12 +0000 (18:36 +1000)]
Update tutorial

Updated paths, and updated arbitrary form factor

Change-Id: I10ffedd6978fbe62050987a4e0e5ab8b120edfce
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoFix doAction with custom functions.
Frederik Gladhorn [Wed, 21 Mar 2012 12:06:59 +0000 (13:06 +0100)]
Fix doAction with custom functions.

When calling invokeMethod, pass the function name without parentheses.

Change-Id: I5a5a28242a98bf76347450b799c1d51c293f9ef4
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoFree ShaderEffectSource FBOs when no longer needed.
Kim Motoyoshi Kalland [Wed, 8 Feb 2012 16:01:36 +0000 (17:01 +0100)]
Free ShaderEffectSource FBOs when no longer needed.

This commit also fixes handling of texture provider deletion in
ShaderEffect.

Change-Id: Ib22a9308a35325972bc545cf29de11bd625b22b2
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoAllow qmlscene to quit immediately after starting
Matthew Vogt [Wed, 21 Mar 2012 02:49:15 +0000 (12:49 +1000)]
Allow qmlscene to quit immediately after starting

Useful for running tests that have no interactive element, where all
computation is performed in the initialization phase of processing
the QML source.

Change-Id: Id3f87fc504a30eb4e351804a98fe265db8fe93c9
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoTest unregistered local enums in QML methods and signal handlers.
Michael Brasser [Wed, 21 Mar 2012 04:29:01 +0000 (14:29 +1000)]
Test unregistered local enums in QML methods and signal handlers.

Also make sure valueC and valueD are initialized.

Change-Id: I8ee78b7b779c37ca792300c7771ae9975f43d8bb
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAllow flick on press-move-release in Flickable.
Laszlo Agocs [Mon, 19 Mar 2012 10:35:45 +0000 (12:35 +0200)]
Allow flick on press-move-release in Flickable.

Right now it needs at least a press-move-move-release to start a flick
which is not ideal for touchscreens because a quick, short flick may
result in reporting only a single move.

Change-Id: I9bf2b4fea23b0eea9d9d00f0e79ce34f4d964bea
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix margins for right-to-left mode
Bea Lam [Wed, 21 Mar 2012 02:55:36 +0000 (12:55 +1000)]
Fix margins for right-to-left mode

The behaviour for considering left and right margins was inconsistent
in views with a right to left layout; these values were reversed for
extent calculations but not for general positioning. With this change
the left and right margins are never reversed in a right-to-left layout,
so minXExtent and maxXExtent calculations always use startMargin
and endMargin respectively, regardless of layout direction.

Also fixes calculation of endOffset in trackedPositionChanged() when
in horizontal orientation.

Change-Id: Ie00e3d4c2bd38d8fe6ac0213702206b88bfa895e
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoListView system tests
Damian Jansen [Wed, 21 Mar 2012 01:26:34 +0000 (11:26 +1000)]
ListView system tests

Tests:
Change of model, delegate and orientation at runtime
Use of add, move and remove view transitions
Changing of view transitions at runtime

Task-number: QTBUG-21504
Change-Id: Icaeb5c0305c7db5db4c4b8c5ad5fd1d6393cc599
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoAdd new line to last line of qquickfolderlistmodel.pro
Martin Jones [Wed, 21 Mar 2012 06:01:56 +0000 (16:01 +1000)]
Add new line to last line of qquickfolderlistmodel.pro

Change-Id: Ia4baa8258b9ad40503abc0f88cb8e887b8f996a4
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoDon't overwrite text selections made in focus handlers.
Andrew den Exter [Mon, 12 Mar 2012 05:49:26 +0000 (15:49 +1000)]
Don't overwrite text selections made in focus handlers.

Defer giving focus to TextInput or TextEdit until after other mouse
press handling has been performed, otherwise setting the cursor position
will overwrite any selection or cursor position set in the
on(Active)FocusChanged handler.

Change-Id: I6332642484de65138a444987b5a81be69c6f835f
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoContent size should not include trailing spaces.
Andrew den Exter [Thu, 15 Mar 2012 01:17:09 +0000 (11:17 +1000)]
Content size should not include trailing spaces.

Excluding trailing spaces from the content size means the cursor
position also needs to considered in determining the width used
by the text as unwrapped white space can push the cursor over
the width of the item.

Also corrects an auto scroll issue with right to left text
identified in extending the tests.

Task-number: QTBUG-24630

Change-Id: Iaab9eac03824b22f507154fa1d6e55376bd075a0
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoAdd more element qmltestrunner cases
Damian Jansen [Mon, 30 Jan 2012 05:50:02 +0000 (15:50 +1000)]
Add more element qmltestrunner cases

Added remote testing to Image, BorderImage
Added several basic element tests

Change-Id: I1a25f31bc66be6b096a6d3c217196d5625e8a2ed
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoFix qquickfolderlistmodel includes
Martin Jones [Wed, 21 Mar 2012 03:37:24 +0000 (13:37 +1000)]
Fix qquickfolderlistmodel includes

Change-Id: I74b1010207b66514d65a383db6e01d396006170f
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoAllow literal enum to int property assignments
Chris Adams [Thu, 15 Mar 2012 07:09:13 +0000 (17:09 +1000)]
Allow literal enum to int property assignments

Previously, enum to int property assignments were considered bindings.
This commit adds support for assigning enum values to int properties
as enums.

Note that to use an enum in QML, it must have been declared with
Q_ENUMS or otherwise registered as a metatype.  Enum values from the
global Qt object are also usable.

Task-number: QTBUG-23403
Change-Id: I50db6cae54a24400ea472bde43619d547e4ceb78
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix consistency of parsing ISO 8601 date strings.
Andrew den Exter [Wed, 21 Mar 2012 02:47:15 +0000 (12:47 +1000)]
Fix consistency of parsing ISO 8601 date strings.

Use the UTC timespec for strings with no time zone qualifier as V8 does
so we don't get different QDateTime in bindings depending on whether
the string was bound directly, or parsed by constructing a new JS
Date object.

Task-number: QTBUG-24895
Change-Id: I8f74dae418aaeeaf06df33fe58ab4e3e3fea791b
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoDisable module api object support in v4.
Michael Brasser [Wed, 21 Mar 2012 01:39:11 +0000 (11:39 +1000)]
Disable module api object support in v4.

We cannot create the module object during compilation as
compilation may be done in a thread. Disable this
optimization until additional type information can be
known at compile time.

Change-Id: I416ebf7595e2916a28f22fa8ebf512cbf3a8cde3
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoSupport unregistered Qt namespace enums in QML methods.
Michael Brasser [Fri, 16 Mar 2012 00:31:53 +0000 (10:31 +1000)]
Support unregistered Qt namespace enums in QML methods.

This brings the support in line with signal handlers, which should allow
us to reuse the implementation there when appropriate. Also adds tests
for both registered and unregisted Qt namespace enums.

Change-Id: I366846626fc44d6d99b51e93fc9e3cb948c748f9
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoSupport (registered) non-local enums for signal/slot params in QML.
Michael Brasser [Thu, 15 Mar 2012 01:58:58 +0000 (11:58 +1000)]
Support (registered) non-local enums for signal/slot params in QML.

It's now possible to detect whether a registered type is an enum,
allowing registered non-local enums to be used as parameters in
signals and slots from QML/C++.

Author: Glenn Watson <glenn.watson@nokia.com>
Task-number: QTBUG-20639
Change-Id: I8c439f2dcc7bfd8ec31914b0c86cd3a1de3c038c
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoDon't register sub distance field glyph nodes with the glyph cache.
Yoann Lopes [Tue, 20 Mar 2012 13:09:13 +0000 (14:09 +0100)]
Don't register sub distance field glyph nodes with the glyph cache.

The original distance field glyph node takes care of the glyphs
reference counting. The potential sub glyph nodes created when the
glyphs are in another texture are note registered anymore with the cache
and don't reference count their glyphs.
Also got rid of unnecessary data members.

Change-Id: I1544792d5d896c6de26e0838e4f80397759ea012
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoDecouple QSGDistanceFieldGlyphNode from it's cache manager.
Andrew den Exter [Mon, 5 Mar 2012 08:19:20 +0000 (18:19 +1000)]
Decouple QSGDistanceFieldGlyphNode from it's cache manager.

To implement a custom distance field glyph node currently it's
necessary to also provide a duplicate implementation of
QSGContext::createDistanceFieldGlyphCache() as the default implemention
references the cache manager created by createGlyphNode().  By isolating
references to the cache manager to just createDistanceFieldGlyph() cache
it becomes possible to just overwrite createGlyphNode() and still use
the default cache.

Change-Id: I7261bdbf247966b55512d2671e2ee85239bcca05
Reviewed-by: Yoann Lopes <yoann.lopes@nokia.com>
12 years agoAllow SG and GL resources to survive a releaseResources.
Gunnar Sletta [Mon, 19 Mar 2012 19:23:02 +0000 (20:23 +0100)]
Allow SG and GL resources to survive a releaseResources.

The presence of these functions required some documentation so I
added some.

Change-Id: Id66bb6704b3db788ed612ebd6497a5c16ee8b2ca
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoDebugger: Disable debugging for qmlprofiler, qmltest
Kai Koehne [Thu, 15 Mar 2012 15:37:33 +0000 (16:37 +0100)]
Debugger: Disable debugging for qmlprofiler, qmltest

QmlProfiler uses the debugging API as a client, but doesn't have
to be debugged itself. I don't think there's a use case to debug
qmltest either.

Change-Id: Ibc8849c77d807f96c6abec5cebc3581ab023d5ae
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoFix compilation on QNX.
Tobias Koenig [Fri, 13 Jan 2012 18:34:47 +0000 (18:34 +0000)]
Fix compilation on QNX.

Change-Id: I5e01cad23066a645c1434ce1463d370733f53e4f
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoUpdate item focus even if it doesn't have a canvas
Bea Lam [Thu, 15 Mar 2012 05:05:50 +0000 (15:05 +1000)]
Update item focus even if it doesn't have a canvas

Currently the item focus data is not updated if it is not in a canvas.
This means a subFocusItem may be deleted when the item is outside of a
canvas, creating a stale pointer when the item is moved back into a
canvas.

This change also means that the last item to set focus=true will now
consistently get activeFocus. Previously if an item did not have a
canvas and then was moved back into the canvas, the first item found
with focus=true would get activeFocus.

Task-number: QTBUG-24616
Change-Id: Ia706bd6ba6bcbccd616b5019c7c0fae4c39afa7f
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoMake QVariant conversion for JS null type symmetric
Kent Hansen [Thu, 15 Mar 2012 09:15:53 +0000 (10:15 +0100)]
Make QVariant conversion for JS null type symmetric

If you pass (void*)0 to QJSEngine::toScriptValue(), or you pass a
QVariant of type QMetaType::VoidStar containing a 0 value, you get
back a QJSValue of type null (isNull() returns true); that's fine.

However, if you called QJSValue::toVariant() on a JS null value, you
would get back an invalid QVariant. The expected result is a
QVariant of type QMetaType::VoidStar containing a 0 value. This
makes the conversion of the JS null type symmetric and avoids loss
of data.

Change-Id: Ifa6e788152118f80adf9c2d7be1283f053b44294
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
12 years agoFix unused variable warning.
Andrew den Exter [Tue, 20 Mar 2012 03:48:32 +0000 (13:48 +1000)]
Fix unused variable warning.

Change-Id: I5e10bc5e2d42bcbc641ebea8b9bb123479ea857a
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoMake TextEdit word selection behaviour consistent.
Andrew den Exter [Mon, 12 Mar 2012 03:39:23 +0000 (13:39 +1000)]
Make TextEdit word selection behaviour consistent.

Word selection initiated by a double click in QTextEdit only selects
a word if the drag point is closer to the end than the start
(assuming ltr selection) which can make it difficult to select small
words with touch input, as such the SelectWords mouseSelectionMode of
TextEdit selected a word if the drag point intersected any part of the
word.  Since we no longer have to retain compability for QTextEdit we
can settle on a single behaviour for word selection.

Change-Id: Iaabb7938a2b61b84a290a9ee41e407c83144b96f
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoRemove unused functions from QQuickTextControl.
Andrew den Exter [Mon, 12 Mar 2012 02:49:01 +0000 (12:49 +1000)]
Remove unused functions from QQuickTextControl.

Change-Id: I036a2c2ff05cd94a7c58e29bf8743fef3a550fbd
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>