profile/ivi/qtdeclarative.git
12 years agoMerge master into api_changes
Kent Hansen [Tue, 27 Mar 2012 14:43:26 +0000 (16:43 +0200)]
Merge master into api_changes

Conflicts:
src/qml/debugger/qqmlenginedebugservice.cpp
src/qml/debugger/qqmlprofilerservice_p.h
src/qml/qml/qqmlboundsignal.cpp
src/qml/qml/qqmlpropertycache.cpp
src/quick/util/qquickimageprovider.cpp

Change-Id: I0609aa5ed54c7769f1e2773a96a7cd43a69f133c

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 agoMark tst_qquickimage as insignificant
Kent Hansen [Fri, 23 Mar 2012 17:10:18 +0000 (18:10 +0100)]
Mark tst_qquickimage as insignificant

The nullPixmapPaint() test is flaky. There are also several other
places where QQuickView::show() is called without a subsequent call
to QTest::qWaitForWindowShown(); in some of the test functions,
processEvents() is called instead (twice, even, just to be sure: see
the imageCrash_QTBUG_22125 function).

Change-Id: Icb49a36dcf968664f16c3223658ddd6189e965fc
Reviewed-by: Kent Hansen <kent.hansen@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 agoMerge master into api_changes
Kent Hansen [Fri, 23 Mar 2012 13:31:47 +0000 (14:31 +0100)]
Merge master into api_changes

Conflicts:
src/qml/qml/qqmlboundsignal.cpp
src/qml/qml/qqmlpropertycache.cpp

Change-Id: I5193a193fa301c0b518291645bf626a5fa07118f

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 agoAdapt to QMetaMethod::typeName() behavioral change for "void"
Kent Hansen [Tue, 20 Mar 2012 19:07:50 +0000 (20:07 +0100)]
Adapt to QMetaMethod::typeName() behavioral change for "void"

QMetaMethod::typeName() has been changed to return "void",
rather than an empty string, when the return type is void.

Change-Id: Ifc903ba60a06ffaefe27c94fe629698d64904d94
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@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 agoProvide imageType() from QQmlImageProviderBase
Matthew Vogt [Wed, 21 Mar 2012 07:55:07 +0000 (17:55 +1000)]
Provide imageType() from QQmlImageProviderBase

Clients who are only interested in the type of image data provided
by an image provider should not need to cast the base pointer to
a QQuickImageProvider to access this information.

Also make the QQmlImageProviderBase constructor private to prevent
unwanted inheritance; all implementors should use the
QQuickImageProvider class.

Change-Id: Ia2dd2595c2711fa7df47265c9857f45ef0f4cc41
Reviewed-by: Kent Hansen <kent.hansen@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>
12 years agoAdd additional key sequence tests.
Andrew den Exter [Fri, 9 Mar 2012 07:40:49 +0000 (17:40 +1000)]
Add additional key sequence tests.

Change-Id: Ie77a61a3ea0d1bdccd59dd519346db74bdf59c44
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoUpdate touchinteraction examples to new guidelines
Alan Alpert [Mon, 5 Mar 2012 05:02:09 +0000 (15:02 +1000)]
Update touchinteraction examples to new guidelines

Includes adding flickable examples

Change-Id: Ie1a47882bcb8b671f162b2b778dad33ce105407b
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoAdd docs for PaintedItem examples
Alan Alpert [Wed, 29 Feb 2012 08:51:23 +0000 (18:51 +1000)]
Add docs for PaintedItem examples

No launcher, because they're C++ examples

Change-Id: Icff2ad31c65d5a878c3818d54ed81cf0d6aa664b
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoUpdate Squircle example towards new guidelines
Alan Alpert [Wed, 29 Feb 2012 07:40:39 +0000 (17:40 +1000)]
Update Squircle example towards new guidelines

Doesn't work properly though. QTBUG-24566 filed for that.

Change-Id: I31a8184456add6060e65bf11323153dc7a80b306
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoUpdate MouseArea and KeyInteraction to new guidelines
Alan Alpert [Wed, 29 Feb 2012 07:21:11 +0000 (17:21 +1000)]
Update MouseArea and KeyInteraction to new guidelines

Change-Id: Icf207005a48fa2a994632a88c4238d821622133c
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoAdapt threading examples to new launcher format
Alan Alpert [Mon, 19 Mar 2012 05:45:05 +0000 (15:45 +1000)]
Adapt threading examples to new launcher format

Change-Id: Ibfe8732efb71ff49c19724abb8202ca63262150e
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoRewrite workerscript example
Alan Alpert [Mon, 19 Mar 2012 05:34:28 +0000 (15:34 +1000)]
Rewrite workerscript example

Clearer function, arguable justification for using WorkerScript, and
fits better into the standrad form factor.

Change-Id: I3f29f19961a12adc29b260b3284eb620ad63bf45
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoSprite minor fixes
Alan Alpert [Fri, 16 Mar 2012 03:12:57 +0000 (13:12 +1000)]
Sprite minor fixes

Spelling of "motivate", don't send out the message when they didn't set
duration themselves, and update TODO comment.

Change-Id: I4de055f07a1831b9d12798faeda658ff441920f4
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
12 years agoFix QQuickTextInput test failure on Windows
Charles Yin [Tue, 20 Mar 2012 00:38:55 +0000 (10:38 +1000)]
Fix QQuickTextInput test failure on Windows

Task-number: QTBUG-24790
Change-Id: I1d78df79568389f8c59f99ace9e2d7685b5d8f0d
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix tst_qquickitemlayer test failures
Charles Yin [Tue, 20 Mar 2012 01:14:23 +0000 (11:14 +1000)]
Fix tst_qquickitemlayer test failures

The minimum window width in Windows 7 requires more than 100, so make the
item width to 200 to avoid test failures.

Task-number: QTBUG-24787
Change-Id: I439528a94aed9c54eca0fa68651c84afa4f9ab13
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix FolderListModel path issue on Windows
Charles Yin [Tue, 20 Mar 2012 03:49:15 +0000 (13:49 +1000)]
Fix FolderListModel path issue on Windows

Task-number: QTBUG-24777
Change-Id: I819c2e07b23e8740f7570f117dafb2340f7c00e9
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAlways enable value type support in v4.
Michael Brasser [Thu, 8 Mar 2012 01:02:30 +0000 (11:02 +1000)]
Always enable value type support in v4.

Change-Id: Ifb4e44aa6d2f13c79319d03e0fd7a4c0c3db06d8
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
12 years agoSupport null -> QObject and QObject -> bool conversions in v4.
Michael Brasser [Tue, 13 Mar 2012 06:24:49 +0000 (16:24 +1000)]
Support null -> QObject and QObject -> bool conversions in v4.

Change-Id: I66602bf52986a388f9b6fe2bcd4630b862138906
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoRemove warning about not explicitly initializing base class.
Andrew den Exter [Fri, 16 Mar 2012 01:40:21 +0000 (11:40 +1000)]
Remove warning about not explicitly initializing base class.

Change-Id: I786f2936a4e6c813a041950a550f06951f06bada
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoPull out some duplicate focus-related code
Bea Lam [Thu, 15 Mar 2012 00:15:49 +0000 (10:15 +1000)]
Pull out some duplicate focus-related code

Change-Id: I920a9b75ccbdb3a9b169c7669121734c14d18ff9
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoLoader could leak qml contexts if interrupted
Martin Jones [Tue, 20 Mar 2012 01:58:09 +0000 (11:58 +1000)]
Loader could leak qml contexts if interrupted

If Loader was either destroyed, or its source changed while
it was incubating the itemContext could be leaked.

Change-Id: I5b749062552954d92bf2851250f942b20ebbfe68
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoFix bitfield waste in QQmlContextData
Martin Jones [Tue, 20 Mar 2012 02:45:12 +0000 (12:45 +1000)]
Fix bitfield waste in QQmlContextData

Why we do this at all, I have no idea.

Change-Id: I35c78f4603499d5bb13d4608cc4f5eba0ee342ca
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoRestore view to sensible position if grab is cancelled.
Martin Jones [Thu, 15 Mar 2012 04:58:03 +0000 (14:58 +1000)]
Restore view to sensible position if grab is cancelled.

If the mouse grab is stolen, return to allowed bounds.

Change-Id: Icc44da32ff62bed273f0ccbb5498766981cdf9a4
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoMigrate gui dependencies from QtQml to QtQuick.
Matthew Vogt [Thu, 1 Mar 2012 22:25:43 +0000 (08:25 +1000)]
Migrate gui dependencies from QtQml to QtQuick.

Ensure that users of declarative that have no need for functionality
provided by the Qt Gui module do not have to link against it.

Any use of QtGui functionality is delegated to providers that can
be installed by another library; QtQuick adds default providers
for this functionality when linked against QtQml.

Task-number: QTBUG-24559
Change-Id: I5e6a58a4198732dc2f8f52f71abfa1152b871aa7
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAllow parent to be specified for Qt.createComponent
Matthew Vogt [Mon, 19 Mar 2012 05:56:22 +0000 (15:56 +1000)]
Allow parent to be specified for Qt.createComponent

Add an optional parameter to the Qt.createComponent function which
allows the caller to specify the object that will become the parent
for the created component.

If the parent is not specified by the caller, it becomes the QML
engine; this behavior will change in the near future to allow
these component objects to be collected when no longer referenced.

Task-number: QTBUG-24840
Change-Id: I2742133fe8ab8cbc80d8012a9d9b9fc2e4596fca
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix the build & docs after QQmlImageProvider was renamed
Kent Hansen [Thu, 15 Mar 2012 12:40:43 +0000 (13:40 +0100)]
Fix the build & docs after QQmlImageProvider was renamed

The class was renamed to QQuickImageProvider in commit
3bc907d155034fe64efc8cb6056b48f0c6401bfb.

Change-Id: I91ff38244cee3ab651ed6caa4140a58cb742f1c9
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoRemove include of QStringBuilder header
Matthew Vogt [Mon, 19 Mar 2012 23:53:24 +0000 (09:53 +1000)]
Remove include of QStringBuilder header

Th contents of this file should be implicitly included via the
QString header, and the forwarding header no longer exists in the
api_changes branch.

Change-Id: Id567456554f15823e4eeedbcf566af0da64f49ee
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoEnsure JS files imported inside modules work correctly
Matthew Vogt [Wed, 14 Mar 2012 02:49:36 +0000 (12:49 +1000)]
Ensure JS files imported inside modules work correctly

When a module exports functionality provided by a script, ensure
that imported script modules inside that script resolve correctly.

Task-number: QTBUG-24596
Change-Id: I3885dcc56946423f0d7cf00afdcdfaa0cb11967a
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoFix compiler warnings in QQmlType
Kent Hansen [Mon, 12 Mar 2012 18:34:16 +0000 (19:34 +0100)]
Fix compiler warnings in QQmlType

clang said:

warning: expression result unused; should this cast be to 'void'?
 [-Wunused-value]

Change-Id: I51f9e2165f3ed550f599f4e3e7693f8e7eebbe1e
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix typo in QQmlXMLHttpRequest::readEncoding()
Kent Hansen [Wed, 7 Mar 2012 13:15:44 +0000 (14:15 +0100)]
Fix typo in QQmlXMLHttpRequest::readEncoding()

Change-Id: I266de531c12a4b88db722f220d7693f0b6bae7ff
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoRemove refence to declarative in the docs
Lars Knoll [Sat, 17 Mar 2012 21:50:31 +0000 (22:50 +0100)]
Remove refence to declarative in the docs

Change-Id: I328edc6deee302440cf65de9f87e6b68c93f42b7
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUse a single distance-field cache instance for all sizes of a given font.
Yoann Lopes [Fri, 16 Mar 2012 11:09:29 +0000 (12:09 +0100)]
Use a single distance-field cache instance for all sizes of a given font.

Previously we had a different cache instance for each font size, but
they all shared the same textures and positions. Only the glyph metrics
were specific to each font size.
The metrics for each font sizes are now calculated by scaling the metrics
of the distance-field size (54px).

Change-Id: I0d9016990dedd93318893506afb1dba7a5249e2e
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoClean up dangling pointers in the particle system
Gunnar Sletta [Thu, 15 Mar 2012 15:14:45 +0000 (16:14 +0100)]
Clean up dangling pointers in the particle system

When the scenegraph has been invalidated all node
pointers have been deleted. In the image particle case
the material is managed by the nodes and must also
be reset.

Change-Id: I867f0d36a3ea281a58c21f04c937b16b042ef373
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoReset all node pointers when item is cleaned up
Gunnar Sletta [Thu, 15 Mar 2012 15:10:35 +0000 (16:10 +0100)]
Reset all node pointers when item is cleaned up

Change-Id: I5878e1d39eca3fa640f16d153924968f72bc9ffc
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
12 years agoSkip warning on perfectly valid usecase
Gunnar Sletta [Sun, 11 Mar 2012 08:41:28 +0000 (09:41 +0100)]
Skip warning on perfectly valid usecase

Change-Id: I83fdd2e7c569ebdfea0d21439b4db6d37c1eafa2
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoFix possible crash in QSGContext::invalidate()
Yoann Lopes [Mon, 19 Mar 2012 13:55:12 +0000 (14:55 +0100)]
Fix possible crash in QSGContext::invalidate()

In some cases QSGContext::invalidate() was called without any current
GL context when the render thread was terminated.

Change-Id: Ia5295c89fe13f2473115c736e328e386d6d4d183
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoQmlEngineDebug: Simplify the utility classes
Aurindam Jana [Tue, 6 Mar 2012 16:25:58 +0000 (17:25 +0100)]
QmlEngineDebug: Simplify the utility classes

Change-Id: Ie0e1b6e9edd6a09fef565635cc793f8bdb6c42e7
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoQmlEngineDebug: Rename to QmlEngineDebugClient in AutoTest
Aurindam Jana [Tue, 13 Mar 2012 16:16:16 +0000 (17:16 +0100)]
QmlEngineDebug: Rename to QmlEngineDebugClient in AutoTest

Change-Id: If20b53d2e47cdc4ed54df0d9360ae1b0566489c6
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoFix failed rebase
Alan Alpert [Mon, 19 Mar 2012 06:46:49 +0000 (16:46 +1000)]
Fix failed rebase

Change-Id: I5d6c6bb50baaa4c1ba986de779bad04ba45947fa
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>