profile/ivi/qtdeclarative.git
12 years agoChange the default renderTarget and renderStrategy
Charles Yin [Tue, 6 Mar 2012 23:28:27 +0000 (09:28 +1000)]
Change the default renderTarget and renderStrategy

As we always use OpenGL and scenegraph render thread now, the best default
render target should be FBO and the best render strategy should be
cooperative mode (use the render thread).

Task-number:QTBUG-23956
Change-Id: I64b070dec566e359d27c84680fef1c691d6ce411
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoRepaint the canvas item properly when canvas resized
Charles Yin [Tue, 6 Mar 2012 23:34:18 +0000 (09:34 +1000)]
Repaint the canvas item properly when canvas resized

Task-number:QTBUG-23594
Change-Id: I703a5190b5b306666ffd61001ff94f296399465f
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoprepareTransition() must cancel current transition
Bea Lam [Mon, 5 Mar 2012 23:28:56 +0000 (09:28 +1000)]
prepareTransition() must cancel current transition

If it does not, itemX() or itemY() will still return the current
transition's 'to' position instead of the nextTransitionTo pos that was
scheduled for the next transition (which the item now has moved to
using the direct setPos() method).

Also refactor prepareTransition() to always move the item directly to
the nextTransitionTo if transition is not going ahead.

Also fix some broken test code.

Task-number: QTBUG-24523
Change-Id: I2e536fbc0da2acbf96fdf2d177190a8968f7fdb1
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix texture leaks in QQuickCanvasItem
Charles Yin [Wed, 7 Mar 2012 00:20:06 +0000 (10:20 +1000)]
Fix texture leaks in QQuickCanvasItem

In commit be4c74948371ddf6f1ed260783b43b5a3d9e60a7 we removed the
QQuickCanvasItemNode, but textures are not automatically deleted with
QSGSimpleTextureNode, so add a very thin sub class of QSGSimpleTextureNode
to just cleanup canvas texture to avoid texture leaks.

Change-Id: I31aac1068e8218a75129b52afbbf30fb66e4bbf7
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoCheck for parent item before calling functions on it.
Frederik Gladhorn [Tue, 6 Mar 2012 10:26:55 +0000 (11:26 +0100)]
Check for parent item before calling functions on it.

Change-Id: Ic4066d133ef16ce8cf11fcb9fb5ddcc19599e85d
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
12 years agoFix missing glyphs when using shared distance-field cache
Eskil Abrahamsen Blomfeldt [Mon, 5 Mar 2012 16:25:50 +0000 (17:25 +0100)]
Fix missing glyphs when using shared distance-field cache

When using a shared distance field cache, signals such as
itemsMissing() and itemsUpdated() can be triggered in the
server process by external requests. This, in turn, can
lead to unnecessary storeGlyphs() calls (performance hit)
and, even worse, calls to setGlyphPositions() for glyphs
which have not previously been requested through populate().
The latter could cause missing glyphs when the same
characters were requested later, as they would then be
stored in the cache with the bounding rect of a default
constructed QPainterPath (in setGlyphPositions()).

To fix this, we ignore all glyphs which have no been requested
in this process, thus filtering out all events for glyphs which
have only been used externally so far. I've also added an
assert to the setGlyphPositions() to help us catch this case
early if it should return.

Change-Id: Ief333f612e4affea768d9c60409d43ce29fe3f60
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
12 years agoCleanup QQuickCanvas and QQuickView docs.
Martin Jones [Mon, 5 Mar 2012 23:45:58 +0000 (09:45 +1000)]
Cleanup QQuickCanvas and QQuickView docs.

Mark reimplemented protected methods.

Change-Id: I544d68e16d82a37f5612fd72cd185a23c70157a7
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoContinue refactor of Canvas rendering.
Justin McPherson [Fri, 2 Mar 2012 06:28:16 +0000 (16:28 +1000)]
Continue refactor of Canvas rendering.

- Remove sync() - not necessary
- Queue buffer before flush

Change-Id: If7dea8e56a612d241c67a82eae265febc45059a8
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoUse NPOT support if available.
Justin McPherson [Tue, 28 Feb 2012 05:08:43 +0000 (15:08 +1000)]
Use NPOT support if available.

In QQuickContext2DTexture.

Change-Id: If0311450658a837b7e2665c041ec2846e3c8c2dd
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoRemove QQuickCanvasItemNode.
Justin McPherson [Fri, 2 Mar 2012 06:24:04 +0000 (16:24 +1000)]
Remove QQuickCanvasItemNode.

A custom SGNode is not necessary.

Change-Id: Ibde71dd502bc782503dbd7d98e6ad8b811b7aedb
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoRemove incorrect line from performance docs
Chris Adams [Tue, 28 Feb 2012 07:38:35 +0000 (17:38 +1000)]
Remove incorrect line from performance docs

V8 does not use a single map-transition-graph for all types, and thus
the line about ordering of properties in constructor functions is
incorrect.

Change-Id: Iaf4ac02dcfc53dd7254af1a40a3c66852a78a320
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoFixed QQuickCanvas header with QT_NO_KEYWORDS
Rohan McGovern [Mon, 5 Mar 2012 06:12:48 +0000 (16:12 +1000)]
Fixed QQuickCanvas header with QT_NO_KEYWORDS

slots -> Q_SLOTS

Change-Id: I971a0077a2606e197e9542ccb864e57d0b0e9f4f
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
12 years agoFix renaming merge with examples
Alan Alpert [Mon, 5 Mar 2012 05:40:59 +0000 (15:40 +1000)]
Fix renaming merge with examples

Some examples were duplicated a few times. Removing the excess.

Change-Id: I6fa59f79de63ac952103421ba1c063f5912b702b
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoHandle MouseArea.enabled = false after mouse is pressed.
Martin Jones [Mon, 5 Mar 2012 05:07:27 +0000 (15:07 +1000)]
Handle MouseArea.enabled = false after mouse is pressed.

Currently this leaves the MouseArea in a broken state,
i.e. still in pressed state, and the next press after
it is re-enabled is ignored.

In this case we now allow subsequent mouse move or
release events to continue. Following the release,
no further press will be accepted.

Change-Id: I65a890da90e2166ad568505fffdbd3db6c97165b
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoDo not store an explicit QImage in the declarative pixmap cache.
Gunnar Sletta [Mon, 5 Mar 2012 09:11:16 +0000 (10:11 +0100)]
Do not store an explicit QImage in the declarative pixmap cache.

This opens up for the scene graph adaptation only storing textures which
effectively halves the memory usage for textures and images.

Change-Id: I3452a15844ceeb4fc3a465865f99ee16e3e05607
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
12 years agoMade QQuickWindowManager pluggable via QSGContext.
Gunnar Sletta [Mon, 5 Mar 2012 08:28:10 +0000 (09:28 +0100)]
Made QQuickWindowManager pluggable via QSGContext.

Also rename paint() to exposureChanged() as that is what the function
actually means. The implementation of paint() has been removed in both
trivial and threaded version as it is superflous as show() already
triggers rendering.

Change-Id: I7e53f42786efaf961921f10a39977de511965d71
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
12 years agoFix crash with AnimatedImage caused by race condition.
Gunnar Sletta [Mon, 5 Mar 2012 08:44:46 +0000 (09:44 +0100)]
Fix crash with AnimatedImage caused by race condition.

In QDeclarativePixmap::setImage() we deleted a QDeclPixmapData
and recreated a new one in a very short timespan and the new
texture factory was the same pointer as the deleted one, yet a
queued destroyed signal was still emitted. Depending on when the
queued connection was handled in the rendering thread, this would
cause problems with the value returned from textureForFactory.

Change-Id: Ibd785ca12667c99efb88b92689ae7ac4fa87c7ee
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
12 years agoUse premultiplied format because it's faster
Alan Alpert [Mon, 5 Mar 2012 03:31:56 +0000 (13:31 +1000)]
Use premultiplied format because it's faster

Change-Id: I4d78830d2cf03f2deba70c29c2fc221eeec9d63c
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoChange bugreports.qt.nokia.com -> bugreports.qt-project.org
Sergio Ahumada [Fri, 2 Mar 2012 12:34:21 +0000 (13:34 +0100)]
Change bugreports.qt.nokia.com -> bugreports.qt-project.org

Change-Id: Icafc7b49e7c42368fe10939b8a134632276c0671
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
12 years agoMerge remote branch 'gerrit/api_changes' into merge-master
Matthew Vogt [Mon, 5 Mar 2012 03:20:58 +0000 (13:20 +1000)]
Merge remote branch 'gerrit/api_changes' into merge-master

Change-Id: I9c54ff2a8aadb2bf95667eb3cf0a48f8291ce927

12 years agoMerge master <-> api_changes
Matthew Vogt [Mon, 5 Mar 2012 01:39:24 +0000 (11:39 +1000)]
Merge master <-> api_changes

Change-Id: Iad2f07b989b25349fd2d4fff010e24dcd5a1688f

12 years agoMore documentation about importing LocalStorage module from Javascript
Charles Yin [Wed, 29 Feb 2012 00:10:11 +0000 (10:10 +1000)]
More documentation about importing LocalStorage module from Javascript

Task-number:QTBUG-24478
Change-Id: Iad0fe15e8b2f1fcfa82b1654c3fd606d08563457
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoProfiler: Use RAII helper structs for ranges
Kai Koehne [Wed, 29 Feb 2012 13:59:49 +0000 (14:59 +0100)]
Profiler: Use RAII helper structs for ranges

Exclusively use RAII helper structs for ranges.

Change-Id: Ief9ab25a9e49e1b2c3c091e5d9de6479e36eaa50
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
12 years agoFix when animating items that are already moving
Bea Lam [Mon, 27 Feb 2012 06:26:05 +0000 (16:26 +1000)]
Fix when animating items that are already moving

The view must transition displaced/moved items that are currently
transitioning to another position; check against the current
transition-to position, not just the current item position.

Task-number: QTBUG-24522
Change-Id: Icf1c290f76ceb8c93716f1562ae0bc5a75445b78
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUse view transitions in drag'n'drop example
Bea Lam [Tue, 28 Feb 2012 02:00:26 +0000 (12:00 +1000)]
Use view transitions in drag'n'drop example

Change-Id: Idc661225acf9e517d26928cafba650ac48ca880a
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoUse velocity from touch events only when they are valid
Laszlo Agocs [Thu, 1 Mar 2012 11:45:29 +0000 (13:45 +0200)]
Use velocity from touch events only when they are valid

Add the capability flags to the extended mouse events. Otherwise it is
not possible to tell if the velocity is valid.

While the original version is fine if velocity is guaranteed to be
available whenever QT_TRANSLATE_TOUCH_TO_MOUSE is set, some platform
and driver combinations, e.g.  the evdevtouch plugin that comes with
Qt, do not provide velocity data in touch events. The touch-only mode
of QML may be very useful in these cases too, we just need to fall
back to the built-in velocity calculation.

Change-Id: Iec5e7632a66380dc04c9435b09f5c173107bbe00
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoTreat parentless items as focus scopes
Alan Alpert [Fri, 2 Mar 2012 00:36:10 +0000 (10:36 +1000)]
Treat parentless items as focus scopes

The root item of a tree is implicitly a focus scope simply because it is
the root of the tree. QQuickRootItem could gain the focus scope flag in
order to solve this for most cases, but there would still be a
possiblity of a crash for disconnected trees.

Change-Id: I6e04f11df4268fb3b96660d50707d70935a5dc5e
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdd QColor support to v4.
Michael Brasser [Tue, 28 Feb 2012 06:32:45 +0000 (16:32 +1000)]
Add QColor support to v4.

Change-Id: I033e92007f894d45695ea48d7f954d534a2fadee
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoReturn correct propertyIndex for v4 bindings.
Michael Brasser [Wed, 29 Feb 2012 03:55:58 +0000 (13:55 +1000)]
Return correct propertyIndex for v4 bindings.

Change-Id: I4aa37491d36331889f6b30c4d4af8b56cef96225
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
12 years agoImproved transitions for Row, Column, Grid, Flow
Bea Lam [Mon, 27 Feb 2012 03:16:11 +0000 (13:16 +1000)]
Improved transitions for Row, Column, Grid, Flow

The view transitions functionality for ListView and GridView has been
integrated into the positioner elements. Not all of this
functionality is available for positioners, though, since they don't
have models (and thus cannot identify certain model operations) and
they don't manage the lifetime of their children.

Task-number: QTBUG-24336

Change-Id: I71588de289555d2ef5a763af11358bc0af7b31a7
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoFix if transitioner is deleted before transition job finishes
Bea Lam [Thu, 1 Mar 2012 07:37:11 +0000 (17:37 +1000)]
Fix if transitioner is deleted before transition job finishes

Don't let TransitionJob call finishedTransition() on a deleted
transitioner. Also don't use target transitions that are not
enabled.

Change-Id: I94d58e8c7b072f7f3d76533956cac2d63ac33ff6
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoCorrect QDeclarativeInspectorInterface iid
Martin Jones [Fri, 2 Mar 2012 01:54:58 +0000 (11:54 +1000)]
Correct QDeclarativeInspectorInterface iid

Change-Id: I874c501dc1839712d2da663f13e437e3c7a0e4fe
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
12 years agoV4 handles a maximum of 32 temporary registers.
Martin Jones [Thu, 1 Mar 2012 09:04:29 +0000 (19:04 +1000)]
V4 handles a maximum of 32 temporary registers.

Drop back to V8 if there are more than 32 being used.

Change-Id: I11f6e84746d897cd9b6789a5e9e4d2848909de00
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoReenable value type binding auto removal tests.
Michael Brasser [Wed, 29 Feb 2012 03:54:16 +0000 (13:54 +1000)]
Reenable value type binding auto removal tests.

Change-Id: I349017bf24f9f2f18024d1257eeaebb348cc8503
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoMore verbose compiler stats.
Michael Brasser [Thu, 1 Mar 2012 00:34:01 +0000 (10:34 +1000)]
More verbose compiler stats.

Report shared and unshared v8 bindings separately.

Change-Id: Iaa198dcc93035a778b13d7137742a7b308aa782f
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoPin to a working qtbase SHA1
Alan Alpert [Fri, 2 Mar 2012 01:53:29 +0000 (11:53 +1000)]
Pin to a working qtbase SHA1

A bug with qmake was introduced which is impeding the compilation of
modules we depend on. Use an older qtbase and qmake until this is fixed.

Task-number: QTBUG-24608
Change-Id: I7f6f1f383d4c9339e5f4c699cb8900a3b1c776e3
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
12 years agoProfiler: Avoid QString->QUrl->QString conversion
Kai Koehne [Wed, 29 Feb 2012 12:29:06 +0000 (13:29 +0100)]
Profiler: Avoid QString->QUrl->QString conversion

Change-Id: Ib39b94bf6c76638dce96d6cc20a4a8f307e37878
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
12 years agoProfiler: Remove unused method
Kai Koehne [Wed, 29 Feb 2012 12:28:51 +0000 (13:28 +0100)]
Profiler: Remove unused method

Change-Id: I74ba20b495760034bc714d92bcf016feddf87c2c
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
12 years agoSet bind options before uploading to give hints to the driver
Gunnar Sletta [Thu, 1 Mar 2012 11:34:48 +0000 (12:34 +0100)]
Set bind options before uploading to give hints to the driver

This can prevent allocation of unused mipmap levels on some
drivers.

Change-Id: I2d730c04e120872367078b17a344c01b4d4aa87a
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
12 years agoAvoid unnecessary updates when using in-process cache
Eskil Abrahamsen Blomfeldt [Thu, 1 Mar 2012 10:24:57 +0000 (11:24 +0100)]
Avoid unnecessary updates when using in-process cache

Whenever an in-process cache is updated, it will emit
itemsAvailable() signals to all listening glyph caches. This will
in turn cause each of the glyph caches to update and each
of the glyph nodes to be preprocessed (the entire scene graph will
be updated.) This happens even if the changes to the in-process
cache are requested by an external client, due to a cross-process
cache sharing mechanism. However, itemsAvailable() signals are
only interesting if the items were requested by the in-process
cache.

We therefore add a mechanism now to check if the glyphs were actually
requested by the cache before updating anything.

Change-Id: I529f94b3928c2a5e06fec354014fa11d21671057
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
12 years agoNo double click event in QML_TRANSLATE_TOUCH_TO_MOUSE mode
Martin Jones [Thu, 1 Mar 2012 00:40:22 +0000 (10:40 +1000)]
No double click event in QML_TRANSLATE_TOUCH_TO_MOUSE mode

Since double clicks are delivered before the click, the initial
grab may not have been established.

Change-Id: Id9282489f0551d421da800294e88ead0915482cc
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix material compare for distance field glyph nodes.
Glenn Watson [Wed, 29 Feb 2012 22:57:32 +0000 (08:57 +1000)]
Fix material compare for distance field glyph nodes.

The compare function did not take into account the GL texture ID
when comparing materials. This could result in a renderer
merging glyph nodes into a single batch incorrectly.

Change-Id: Ib62c43f93fb1bbbc231197323dced4254ffa12aa
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoAllow styled text to be elided.
Andrew den Exter [Wed, 29 Feb 2012 01:37:42 +0000 (11:37 +1000)]
Allow styled text to be elided.

Task-number: QTBUG-24521
Change-Id: Idd451d0a8a238a60691386726e34054c0368b658
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoUpdate item position in parent change atomically.
Andrew den Exter [Tue, 28 Feb 2012 07:29:40 +0000 (17:29 +1000)]
Update item position in parent change atomically.

Changing x and y individually generates two geometry changed events,
the first of which has an invalid position as the x coordinate is
relative to the new parent and the y relative to the old parent.

This in turn causes the Drag item to send move events with incorrect
positions.

Task-number: QTBUG-24534
Change-Id: If2636a968acc0fffce21d1a7e51510426ace38a0
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoCheck item before notifying transition has finished
Bea Lam [Wed, 29 Feb 2012 05:47:03 +0000 (15:47 +1000)]
Check item before notifying transition has finished

Fixes crash when using SmoothedAnimation with view transitions

Change-Id: Ib9a201e417c34d64f8144a616e75cae8b67568e2
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoFix crash when transition finishes after view is deleted
Bea Lam [Wed, 29 Feb 2012 04:37:33 +0000 (14:37 +1000)]
Fix crash when transition finishes after view is deleted

Change-Id: I5bb525bab735536fa7ae3a7f60bf775cd93cf3c1
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUpdate ImageElement examples
Alan Alpert [Tue, 28 Feb 2012 03:20:56 +0000 (13:20 +1000)]
Update ImageElement examples

Now more consistently formed. Required a UI redesign for border image,
you now view one at a time, with a selector control.

Change-Id: Idf64119b644c1a79779ea0a46412247d6d013cb1
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoReduce size of QQuickTextPrivate
Yann Bodson [Thu, 23 Feb 2012 23:27:12 +0000 (09:27 +1000)]
Reduce size of QQuickTextPrivate

Move less used members to an extra struct lazily allocated

Change-Id: I87e464af4b9d29303705dd7e766f734309ed7763
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoFix QQuickDropArea test compilation.
Andrew den Exter [Thu, 1 Mar 2012 00:10:07 +0000 (10:10 +1000)]
Fix QQuickDropArea test compilation.

Change-Id: I5feaabe235201af842ca6bc4f3496b1861b06fb9
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoAdd autotest for QML meta-objects
Kent Hansen [Tue, 7 Feb 2012 18:37:38 +0000 (19:37 +0100)]
Add autotest for QML meta-objects

This autotest checks that the QMetaObject generated from a QML type
can be introspected from C++ (properties, class info, signals and
slots).

Change-Id: I9a50f138f911690f5c55cd28e5b49f0682450d07
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
12 years agoFolderListModel: remove widget and QDirModel use
Martin Petersson [Mon, 20 Feb 2012 13:56:12 +0000 (14:56 +0100)]
FolderListModel: remove widget and QDirModel use

FolderListModel used the obsolete QDirModel internally. Because of this
it needed widgets to work. I have made a threaded model instead that
use QDir internally.

Change-Id: Ibd1267a135ee3c6df7bcde420073866b7a76d0d1
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoQFastMetaBuilder: Generate revision 6 meta-objects
Kent Hansen [Tue, 7 Feb 2012 12:29:58 +0000 (13:29 +0100)]
QFastMetaBuilder: Generate revision 6 meta-objects

Support for old meta-object revisions (<= 6) will be dropped in Qt5.
The first, simple step towards revision 7 is to move from rev 4 to 6.

Also avoid copy/paste of the flags/types defined in qmetaobject_p.h
(in preparation of porting to revision 7).

Change-Id: I8ec3ad0811295528303abb5cce86011fc869ec30
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
12 years agoFix particle system on windows
Alan Alpert [Tue, 28 Feb 2012 07:09:14 +0000 (17:09 +1000)]
Fix particle system on windows

To preserve correctness, just use a non-point-sprite performance level
on windows until QTBUG-24540 is resolved.

Change-Id: I7608fbe21233534fb22c9d352aafae759e68c143
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoMake sure positioners remove change listeners for invisible items.
Martin Jones [Tue, 28 Feb 2012 06:49:17 +0000 (16:49 +1000)]
Make sure positioners remove change listeners for invisible items.

Children that are invisble weren't having their change listeners
removed, which showed illegal accesses on destruction in valgrind.

Change-Id: Icae798e773168323781e9ab88b3dae6a5aea0952
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoDon't round Text dimensions.
Andrew den Exter [Thu, 23 Feb 2012 03:25:58 +0000 (13:25 +1000)]
Don't round Text dimensions.

Painting issues in QtQuick1 meant drawing had to be aligned to pixel
boundaries, since this is no longer a problem we should use qreal
everywhere.

Change-Id: I58e88e10270fa603170f1cedf471bfb53bd89b73
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoAvoid unneccessary duplication of string data.
Andrew den Exter [Wed, 22 Feb 2012 08:13:29 +0000 (18:13 +1000)]
Avoid unneccessary duplication of string data.

Check for the existence of new line characters before trying to replace
them.  There's some redundancy if the characters are found but for
single line strings we avoid the detach in replace.

Change-Id: I48ccc614601a6f356b3d2e68f617e112c100bbdd
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoAdd and use a method for querying whether a property is revisioned.
Michael Brasser [Tue, 28 Feb 2012 03:03:30 +0000 (13:03 +1000)]
Add and use a method for querying whether a property is revisioned.

Accessor data and the revision are now unioned, so querying
the value directly can give incorrect results.

Change-Id: I0ba6c53d8bd6b012507bfb32d33dc414348379b0
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAdd generic "displaced" transition property
Bea Lam [Wed, 22 Feb 2012 07:23:47 +0000 (17:23 +1000)]
Add generic "displaced" transition property

This is the default displaced transition that will be applied if addDisplaced,
removeDisplaced or moveDisplaced are not specified (or are disabled).

Change-Id: I9356036dc93bd9cb26e64e0b1769228113b74273
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdd missing include
Stephen Kelly [Tue, 28 Feb 2012 10:15:03 +0000 (11:15 +0100)]
Add missing include

Change-Id: Ifb4b489bb87b7ee8fb2f758da0e00af1e95e410f
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoProperly cleanup cancelled incubation.
Martin Jones [Tue, 28 Feb 2012 02:03:46 +0000 (12:03 +1000)]
Properly cleanup cancelled incubation.

Not all allocations were being destroyed.

Change-Id: I2134bb224c58b947cfb990b0af2f6eedfd36da4a
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoSeparate view transition functionality into new file
Bea Lam [Tue, 21 Feb 2012 04:44:21 +0000 (14:44 +1000)]
Separate view transition functionality into new file

Move most of the view transition functionality from qquickitemview*
into qquickitemviewtransition*.

- Move QQuickViewTransitionAttached
- Move QQuickItemViewTransitionManager, rename to QQuickItemViewTransitionJob
- Move FxViewItem transition-specific features into new QQuickViewItem
- Move transition-specific functions like transitionNextReposition() and
  canTransition() into QQuickItemViewTransitioner which holds all the
  transition objects now

Also mention in docs that there's no defined order for choosing between
multiple matching displaced transitions.

Change-Id: I8701c0d40d2af152c5d432a4c8de646854c76ea2
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoExamples guidelines have changes slightly
Alan Alpert [Tue, 28 Feb 2012 01:41:50 +0000 (11:41 +1000)]
Examples guidelines have changes slightly

Update docs to current thinking.

Change-Id: Ide00240f4d779549eebdc81592f3f2104dfd759a
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoMove some toys back to examples
Alan Alpert [Tue, 28 Feb 2012 01:30:16 +0000 (11:30 +1000)]
Move some toys back to examples

tvtennis, corkboards and dynamicscene are more examples than demos.

clocks and tic-tac-toe are remaining demos for now.

Change-Id: I3d9501a4742349a9eb7efdad0d06aa6e7cb02c14
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoUpdate drag and drop examples to new guidelines
Alan Alpert [Tue, 28 Feb 2012 01:33:51 +0000 (11:33 +1000)]
Update drag and drop examples to new guidelines

Change-Id: Ib09a50015eaf7e79f21ade5df3cbd3b58b89c83d
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoRename SpriteImage to SpriteSequence
Alan Alpert [Tue, 14 Feb 2012 08:16:21 +0000 (18:16 +1000)]
Rename SpriteImage to SpriteSequence

Also rename Sprite::frames->Sprite::frameCount

Change-Id: I2e7a71adc37044fd696ffda2a5da4835725ba3a8
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoAdd AnimatedSprite
Alan Alpert [Mon, 13 Feb 2012 23:33:42 +0000 (09:33 +1000)]
Add AnimatedSprite

A simpler sprite image element for the simple usecase. Because sometimes
an engine with stochastic capabilities is overkill.

Change-Id: I2b76c5d417719e92a548f6266bffd563dc016983
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoMove distance field util functions to QtGui
Jiang Jiang [Mon, 6 Feb 2012 13:05:58 +0000 (14:05 +0100)]
Move distance field util functions to QtGui

These distance field generation functions have been moved to QtGui.

Change-Id: I78d9015c8776717ede2d1299c2ef3787d165e0b9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoFix crash in QDeclarativePixmapStore global static dtor
Chris Adams [Tue, 28 Feb 2012 04:04:38 +0000 (14:04 +1000)]
Fix crash in QDeclarativePixmapStore global static dtor

Due to the undefined ordering of global static dtors, the QDPS dtor
could run after the texture factories were deleted.  Thus, the QDPS
dtor cannot call the cost() method of the pixmap data during its
destructor, as this could cause a crash.

Change-Id: I5d23066dc57e1992cf9d1c13d514f06c431bc752
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoIncubators are not async with the threaded renderer.
Martin Jones [Mon, 27 Feb 2012 05:54:16 +0000 (15:54 +1000)]
Incubators are not async with the threaded renderer.

The threaded incubator relies on the event loop spinning to signal
item updates.  This change ensures that the event loop is processed
while items are being created and that the render loop is woken
if it is sleeping.

Also cancel delegate incubation correctly during destruction.

Change-Id: Ib5bb55c788411490e0959c75933da587fdfd4b8c
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoCorrectly set duration and easing for AnchorAnimation.
Michael Brasser [Mon, 27 Feb 2012 23:48:27 +0000 (09:48 +1000)]
Correctly set duration and easing for AnchorAnimation.

Task-number: QTBUG-24532
Change-Id: I3aad9cd8281b954896c2c1d44b2dcae68f913928
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoDon't create unnecessary shadow data
Alan Alpert [Fri, 24 Feb 2012 05:35:46 +0000 (15:35 +1000)]
Don't create unnecessary shadow data

Shadow data was being made by accident for uninitialized datums, because
they had not yet had the ImageParticle set as the datum owner.

Change-Id: Ia1d55610d845627cdb9c83bfda1d7ed4c024f703
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoExamples refactor rebase
Alan Alpert [Sun, 26 Feb 2012 22:40:31 +0000 (08:40 +1000)]
Examples refactor rebase

Automatic rebase did not move some new files to where they should have
gone.

Change-Id: I25515d29d8992acde15db0df1bb5972e35573e60
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoSkip c++ examples in sgexamples test
Alan Alpert [Mon, 27 Feb 2012 00:19:01 +0000 (10:19 +1000)]
Skip c++ examples in sgexamples test

They should be tested separately, QTBUG-24516 has been raised to
implement this.

Change-Id: Ic90bc8327e6c07164ed34b3d02f2612561491ec0
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoQmlProfiler: send v8 profiling started signal
Christiaan Janssen [Mon, 27 Feb 2012 12:01:03 +0000 (13:01 +0100)]
QmlProfiler: send v8 profiling started signal

Change-Id: Ie26bd47c9b79a7f524b9c5bc59146be1ea93761d
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoSkip test case for now
Bea Lam [Mon, 27 Feb 2012 07:37:57 +0000 (17:37 +1000)]
Skip test case for now

Change-Id: I06128c544c1ee03d4528f6f86fc776e09be87316
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoForce to send defer deletion events before deleting QQuickCanvas
Charles Yin [Fri, 24 Feb 2012 03:33:59 +0000 (13:33 +1000)]
Force to send defer deletion events before deleting QQuickCanvas

Also change the assert in QDeclarativeEnginePrivate::~QDeclarativeEnginePrivate()
to a warning message.

Change-Id: Ic1fb7e0b7ffe4a54458a0f3a65127b1afd6dda53
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoCreate a forwarding declarative module.
Matthew Vogt [Thu, 23 Feb 2012 01:49:26 +0000 (11:49 +1000)]
Create a forwarding declarative module.

The declarative module has been replaced by the qml module.  To allow
existing projects which depend on the old declarative module to build,
add a new declarative module which forwards dependencies on to the
new qml module.

This module contains only redefinitions of old symbol names to their
new replacements, and creates forwarding headers that include the
replacement headers provided by the qml module.

This is a temporary change to prevent breaking existing projects
that depend on the declarative module. After clients have had an
opportunity to update their code to the use the new interfaces,
it can be removed.

Task-number: QTBUG-23737
Change-Id: I3cec5ceec4f9725c258e3672360a05ea87d3ca2f
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoDon't create a separate section header for currentItem
Martin Jones [Thu, 23 Feb 2012 06:57:06 +0000 (16:57 +1000)]
Don't create a separate section header for currentItem

The currentItem FxViewItem contained it's own section item,
which when created would cause the current item delegate
to be repositioned.  This change associates the section item
with the delegate item, via the attached object.

Change-Id: Ie675d545539b56d0f1cf5a9b4ea26668978a5e72
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoCheck engine equality condition inside null ptr check
Chris Adams [Fri, 24 Feb 2012 04:40:11 +0000 (14:40 +1000)]
Check engine equality condition inside null ptr check

Previously, we asserted if the engine associated with the two external
resources from the arguments to the object comparison callback were
not equal, prior to checking that the external resources were non-null.

Task-number: QTBUG-24489
Change-Id: I4b2bd2377fcf38163d1341e43e056b1405ab72ac
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoEnsure importing module API in js import works
Chris Adams [Fri, 24 Feb 2012 06:14:12 +0000 (16:14 +1000)]
Ensure importing module API in js import works

This commit adds a unit test to ensure that a property of a module
api can be accessed in a JavaScript import.

Change-Id: Iecba76a9db0400ece1777256f19803d4bad53438
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoImprove test coverage for anchors.
Michael Brasser [Mon, 27 Feb 2012 01:08:15 +0000 (11:08 +1000)]
Improve test coverage for anchors.

Change-Id: I2705407b16ef678ed5b3cbfa7116ae6b18366688
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoStabilise tests
Bea Lam [Fri, 24 Feb 2012 08:05:35 +0000 (18:05 +1000)]
Stabilise tests

Change-Id: I2227fede52f5b0d59bd0dd9b10ab0151318d61dd
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoRemove unused member.
Michael Brasser [Thu, 23 Feb 2012 00:12:52 +0000 (10:12 +1000)]
Remove unused member.

Change-Id: Ibfcc7a78e442c2be5bab6933e2e85ed39344e6c2
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
12 years agoGet script benchmark compiling and running.
Michael Brasser [Thu, 23 Feb 2012 23:46:35 +0000 (09:46 +1000)]
Get script benchmark compiling and running.

Change-Id: Ifc433f6c430d430bfb8b2d8b47a84ad2688e4cb2
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoBuild fix when use '-no-stl' option
Yuchen Deng [Wed, 15 Feb 2012 00:31:48 +0000 (08:31 +0800)]
Build fix when use '-no-stl' option

error C3861: 'toupper': identifier not found
error C2065: 'RAND_MAX' : undeclared identifier
error C3861: 'rand': identifier not found
error C2065: 'RAND_MAX' : undeclared identifier
error C3861: 'rand': identifier not found

Change-Id: Iaa0daf516c3d9f90d9119f958d79187ee2bb959c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoUpdate license headers
Aaron Kennedy [Fri, 24 Feb 2012 13:22:31 +0000 (13:22 +0000)]
Update license headers

Change-Id: Id47c6b26ee2ac2b3d30c464adaa55b7a7c3e4442
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
12 years agoThe plugin is cleaned up by the plugin loader so don't double-delete
Gunnar Sletta [Fri, 24 Feb 2012 11:23:51 +0000 (12:23 +0100)]
The plugin is cleaned up by the plugin loader so don't double-delete

Change-Id: I8bac5b6e1960cbc38575c76f02aa6c6c90700331
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoRevert resource releasing logic inside window managers.
Gunnar Sletta [Fri, 24 Feb 2012 06:28:54 +0000 (07:28 +0100)]
Revert resource releasing logic inside window managers.

This was based on the assumption that exposure and visibility
would take similar code paths, but this is not the case and
the fallout of this change (like not releasing resources at all)
is not worth it.

This reverts ef6318ae38322b5a4a0619b581924290f114fa74 and most
of 5f0013ee76605b9c7ceab168702b57e797b698e0

Change-Id: Ib2e29972502a8ec956cd6bd294a2a2bb50d8e76e
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoStart of examples refactor
Alan Alpert [Mon, 20 Feb 2012 00:34:44 +0000 (10:34 +1000)]
Start of examples refactor

This is the general reorg of the examples directory structure, plus additional
guidelines.

calculator, animations and accessibility have been updated to the new standards
and tested, as an example.

Task-number: QTBUG-24133
Change-Id: I76c3b86751d3195ba2a5474ff23afb875765e9a4
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoAdd additional autotests for signal handlers.
Michael Brasser [Fri, 24 Feb 2012 00:22:35 +0000 (10:22 +1000)]
Add additional autotests for signal handlers.

Change-Id: Ie94ce8b536347981310abeb077a88acedf44c7e6
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAllow V8 bindings to assign to value type sub properties
Aaron Kennedy [Thu, 23 Feb 2012 09:50:15 +0000 (09:50 +0000)]
Allow V8 bindings to assign to value type sub properties

This was an overly defensive change because it wasn't clear if the isAlias
check would catch aliased value type sub properties.

Change-Id: Iee2805d22f281c1fd188b14e265687fd8e7042db
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoapi_changes branch should build against qtBase/api_changes
Matthew Vogt [Thu, 23 Feb 2012 23:23:08 +0000 (09:23 +1000)]
api_changes branch should build against qtBase/api_changes

Change-Id: I1f00f21cd5acc03e8b5020a5415db28bf127ad16
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoRename QDeclarative symbols to QQuick and QQml
Matthew Vogt [Thu, 16 Feb 2012 04:43:03 +0000 (14:43 +1000)]
Rename QDeclarative symbols to QQuick and QQml

Symbols beginning with QDeclarative are already exported
by the quick1 module.

Users can apply the bin/rename-qtdeclarative-symbols.sh
script to modify client code using the previous names of the
renamed symbols.

Task-number: QTBUG-23737
Change-Id: Ifaa482663767634931e8711a8e9bf6e404859e66
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUse floating point types for position offsets and cursorRectangle.
Andrew den Exter [Thu, 23 Feb 2012 04:11:48 +0000 (14:11 +1000)]
Use floating point types for position offsets and cursorRectangle.

Rounding to align painting to pixel boundaries is no longer necessary
are largely removed.  Correct the few instances remaining in TextEdit
and TextInput.

Change-Id: Ic6ec57092d74ec43b23d85cd8868e0190acc3e09
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
12 years agoRemove use of QT_ASCII_CAST_WARN_CONSTRUCTOR.
Stephen Kelly [Wed, 22 Feb 2012 23:34:32 +0000 (00:34 +0100)]
Remove use of QT_ASCII_CAST_WARN_CONSTRUCTOR.

Fixes build after I0b4df4c99600cacbaafbf0bc4270cd4978600956

Change-Id: I9cf326b52e0e7e267b8fbc422175713cee9352f5
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoFix rewrite of multiline string literals.
Roberto Raggi [Mon, 20 Feb 2012 13:46:26 +0000 (14:46 +0100)]
Fix rewrite of multiline string literals.

This commits ensures that we don't rewrite `\'-terminated
multiline string literals. Also, it fixes the processing
of \r characters inside the string literals.

Change-Id: If3d7c1b83c7306b9ccb1be31412b6f8e76434c41
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
12 years agoFix crash in instruction dump
Aaron Kennedy [Thu, 23 Feb 2012 08:51:36 +0000 (08:51 +0000)]
Fix crash in instruction dump

Change-Id: I2cfa9da120a602b52f401dd304b44cd17c47b220
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoUse new plugin system in QtDeclarative.
Friedemann Kleint [Tue, 21 Feb 2012 09:55:34 +0000 (10:55 +0100)]
Use new plugin system in QtDeclarative.

- Use prefix "org.qt-project" for interfaces.
- Use new macros, add json files.

Change-Id: I53df83f95153c5c9c462098584606284470a5ae0
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoRemove warning produced by 'parent' reference.
Matthew Vogt [Thu, 23 Feb 2012 04:55:16 +0000 (14:55 +1000)]
Remove warning produced by 'parent' reference.

When Qt.createQmlObject is invoked from QML, any contained references
to parent produce a warning from V8.  To prevent this, move the
assignment of the parent object to before the initial execution of the
bindings.

Task-number: QTBUG-24464
Change-Id: Ib330822f1ca46ec5a6af648a56197da09669c3f2
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoClean up some of the view transition docs
Bea Lam [Thu, 23 Feb 2012 01:51:31 +0000 (11:51 +1000)]
Clean up some of the view transition docs

Fix some of the wording in the docs.

Change-Id: I07892bec06c78b73bdd93926719d609405e263b3
Reviewed-by: Bea Lam <bea.lam@nokia.com>