Sze Howe Koh [Tue, 14 May 2013 16:03:18 +0000 (00:03 +0800)]
Doc: Update references to QDeclarative* classes
Change-Id: Ifbde8c1ccfc0c759da6f2204320b9170a04179eb
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Alan Alpert [Thu, 9 May 2013 22:46:43 +0000 (15:46 -0700)]
Changelog entry for not-quite-so-important behavior change
Task-number: QTBUG-30837
Change-Id: Ia39c0d85d29cf87861083e4a5170aab701fb2199
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Kai Koehne [Wed, 8 May 2013 08:24:15 +0000 (10:24 +0200)]
Move exports conflicting with QtDeclarative into namespace
Move exported qml* symbols that conflict with QtDeclarative into an
- automatically imported - namespace. This ensures apps can
link against both QtDeclarative and QtQml.
To keep the BC promise the old symbols are still exported.
Task-number: QTBUG-29584
Change-Id: I3d31c36ca4e2faaf6f5d67a77c5c5a304c0338a4
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Sérgio Martins [Mon, 13 May 2013 01:12:59 +0000 (02:12 +0100)]
Fix documentation of QtQuick2::DragEvent::accepted, it's a bool.
Change-Id: I4773b8b1c1f96279e34979534a1a53e724009e44
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
David Fries [Wed, 8 May 2013 05:14:25 +0000 (00:14 -0500)]
Doc: corrections, spelling, and ListView requirements comments
From the ListView comment I thought the model had to be derived from
QAbstractListModel, but that's not the case, QAbstractListModel will
work just fine, it just doesn't support specific cases such as trees.
Change-Id: I59305006540ddc049e276cf412571373cbfa6c67
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Jerome Pasion [Tue, 7 May 2013 10:50:39 +0000 (12:50 +0200)]
Doc: Removed pages from the "qml-features" group.
-This group is from Qt 4 and no longer relevant in Qt 5.
-The \group page in qtdoc is removed.
Change-Id: I6349a9056ae45c98b31c70fd693adecf71e2ba8c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
Jerome Pasion [Mon, 13 May 2013 11:11:05 +0000 (13:11 +0200)]
Doc: Fixed a bunch of missing snippets.
-moved delegate model related snippets from Qt Quick to Qt QML.
-corrected snippet paths
Change-Id: If688f97fb9317def16f343d5502a6a54d6761e95
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
Topi Reinio [Tue, 14 May 2013 10:41:32 +0000 (12:41 +0200)]
Doc: Define Qt global object as a QML type and fix referring docs
This change adds the Qt global object as a QML type in the Qt QML module
and fixes links to it in documentation.
Task-number: QTBUG-29353
Change-Id: I1690224091a79a3309fac7a78aa0c0c734449e4f
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Friedemann Kleint [Mon, 13 May 2013 13:30:17 +0000 (15:30 +0200)]
Fix warnings in stocqt-example.
Task-number: QTBUG-31083
Change-Id: I97d429c1a30664373478636c6b066dbdcd2a46ee
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Alan Alpert [Mon, 6 May 2013 20:55:40 +0000 (13:55 -0700)]
Changelog entry for ListView behavioural change
Task-number: QTBUG-30555
Change-Id: Idcb0b2457e761f806179f4900ea5b0c9cb811cea
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Reviewed-by: Albert Astals Cid <albert.astals@canonical.com>
Jerome Pasion [Mon, 13 May 2013 11:12:33 +0000 (13:12 +0200)]
Doc: fixed some WS issues.
-generated by git-split-ws tool
Change-Id: Icf1e85d01c818396e8dffb9b6aba2c132acfaaa1
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Josh Faust [Sat, 4 May 2013 01:36:19 +0000 (18:36 -0700)]
Fix crash in QQmlApplicationEngine when loading finishes
Task-number: QTBUG-30997
Change-Id: I10cb2c689408d1b31360095c2aa9e0943a5d9452
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Gunnar Sletta [Mon, 13 May 2013 14:02:30 +0000 (16:02 +0200)]
Fix sorting of QSGTextMaskMaterial (native glyph drawing).
It seems we were hitting the bool operator rather than the
pointer values so all text materials, regardless of size
or style would return equal.
Change-Id: I8773e5aa965035f6737920747c2cf073929ff799
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Sérgio Martins [Fri, 10 May 2013 20:14:06 +0000 (21:14 +0100)]
Fix typos in QQuickDrag documentation.
Change-Id: Iab8c537e16e9767ddfd837503a340eb708aa6814
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Liang Qi [Fri, 10 May 2013 09:54:37 +0000 (11:54 +0200)]
Mac: respect the system settings in Full Keyboard Access
Iterate all or not in nextPrevItemInTabFocusChain function.
Change-Id: I95289b042f3d9924c28ffb9c8c7124c767addf2e
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Mitch Curtis [Wed, 8 May 2013 07:55:16 +0000 (09:55 +0200)]
Fix assertion in qt_create_image_data().
Don't compare qreal against int.
Change-Id: Ic8970ed0a21a7d5d0f0ffd0ca37ee49b04f38d6c
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Alan Alpert [Fri, 26 Apr 2013 23:27:21 +0000 (16:27 -0700)]
Don't fix up x/y while initializing
Any initial values leading to content outside the Flickable are likely
to be explicitly set as initial property values. "fixing" them up will
lead to just ignoring them.
Task-number: QTBUG-30837
Change-Id: I3b2593605f16d73ba008bc6a6f067ab6020bcbe4
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Alan Alpert [Thu, 2 May 2013 00:30:53 +0000 (17:30 -0700)]
Make QQmlInstantiatorPrivate bools more space efficient
Change-Id: Ie7a4951d66763c55148f02c6c88241c8ad363a90
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Friedemann Kleint [Wed, 8 May 2013 08:29:17 +0000 (10:29 +0200)]
Fix MSVC-warning about inconsistent DLL-linkage.
Introduced by
9b5a55101d7c519446c1cf3706a235dea81ad4de .
Task-Number: QTBUG-28572
Change-Id: I5e7d012d22c701b2b15ab288d2c72f177caf904e
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
Liang Qi [Wed, 8 May 2013 15:53:34 +0000 (17:53 +0200)]
Revert "Mac: respect the system settings in Full Keyboard Access"
This breaks Qt Quick Controls activeFocusOnTab autotests.
This reverts commit
305616a60462b668c4d0b3d19302fa90469aceb5.
Change-Id: Ided59ebe99659b23e950e8269ccaa8d7d44a4fdb
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Thomas Hartmann [Tue, 7 May 2013 06:15:29 +0000 (08:15 +0200)]
ChangeLog: Document behavior change for resource property
Change-Id: Id6e157aa191aaa4e24a9cd5c76abfe902fe43d44
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Kai Koehne [Wed, 8 May 2013 12:16:56 +0000 (14:16 +0200)]
qmlplugindump: Add explanation why it needs to be an app bundle
Since this is popping up quite regularly, add an explanation why
we need qmlplugindump to be an application bundle.
Change-Id: Iacf5ad0742aa9fb601c3be046f268764df062e81
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Thomas Hartmann [Wed, 8 May 2013 09:18:04 +0000 (11:18 +0200)]
The resources property should be independent from QObject
Resources was a direct mapping of the QObject children.
This led to problems since the QObject children can also contain
other objects from other sources like attached properties.
This patch decouples resources from QObject properties
and also does not call setParent() anymore.
The special case for QQuickWindow in data_append does rely
on the fact that QObject::setParent() is called and the
inner window becomes a QObject::child of the content item.
So we keep the setParent for this special case.
The children property does not take QObject ownership either.
QObject ownership is handled by the VME.
None of the documented QML use cases should be touched by this change.
This is a cleaner solution then the ad hoc fix provided by
https://codereview.qt-project.org/#change,54677
I changed also the test. The list count now has to be exactly 4.
Change-Id: I5c119e333ee82e888aaac1da559fd63a875d08ee
Reviewed-by: Liang Qi <liang.qi@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Oswald Buddenhagen [Thu, 25 Apr 2013 18:02:44 +0000 (20:02 +0200)]
adjust to new "configure -nomake tools" semantics
Change-Id: I34ea6a8ea5f6f2641bf5deaf2a7136e5ed51a8ba
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
Oswald Buddenhagen [Fri, 3 May 2013 17:42:05 +0000 (19:42 +0200)]
fix debug/release library name mixup on mac/win
Task-number: QTBUG-30676
Change-Id: I5c5869ee3050e67390607f94054127bd62ab2ea4
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Liang Qi <liang.qi@digia.com>
Shawn Rutledge [Mon, 6 May 2013 12:40:28 +0000 (14:40 +0200)]
Add QQuickWindow::closing signal, and ability to ignore the event
An application can implement onClosing() and set
closeEvent.accepted = false to delay the closing (for example to
prompt the user to save changes). Depends on change
I9abed47fca02a002b78727f98d678a824854adfc in qtbase.
Task-number: QTBUG-31019
Change-Id: Icfd4a03ecef3621bdbbee2e2c3157b897a9b6524
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
Liang Qi [Tue, 7 May 2013 06:41:50 +0000 (08:41 +0200)]
Mac: respect the system settings in Full Keyboard Access
Iterate all or not in nextPrevItemInTabFocusChain function.
Change-Id: I14d40dbeda01ca470efe23886789383ff1d30c0f
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Jan Arve Saether [Tue, 7 May 2013 13:08:17 +0000 (15:08 +0200)]
Move xmlrole.qml to the correct location
The snippets that qqmlxmllistmodel.cpp referred to could not be found.
xmlrole.qml is only referenced from
src/imports/xmllistmodel/qqmlxmllistmodel.cpp
Change-Id: I95f962927097cd9d3295fbc2b376a9ab27ae6e5c
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Alan Alpert [Thu, 2 May 2013 00:22:14 +0000 (17:22 -0700)]
Fix Instantiator response to model change
Objects were not being created correctly when the model changed after
componentComplete. After correcting that the model change can lead to
an intermediate count change when the old model is cleared, so a flag
is set to ignore intermediate changes fom the QQmlDelegateModel when
the model changes.
Task-number: QTBUG-30379
Change-Id: I55519c9ee378a1b0569567137ebd378f32a6c85c
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Alan Alpert [Thu, 24 Jan 2013 22:07:29 +0000 (14:07 -0800)]
Add qmlClearRegisteredTypes Function
Registered types are stored in a global static variable, not on an
engine instance. For applications managing multiple engines over their
lifetime, there needs to be a way to clear the existing types so they
can register new ones and avoid memory leaks.
Task-Number: QTBUG-28572
Change-Id: Ic70a4dd1e29d99399b21fb42eaf10d4a52bf2adf
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
Alan Alpert [Fri, 1 Mar 2013 01:03:43 +0000 (17:03 -0800)]
Add a URL interceptor to the QML engine
Allows for custom file handling to a greater extent than the
QNetworkAccessManager.
Change-Id: Ifd3946bf33530c40ca2edeeb9f441f712e4941f6
Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
Sze Howe Koh [Tue, 30 Apr 2013 15:35:41 +0000 (23:35 +0800)]
Doc: Make Qt Quick demos accessible from Qt documentation
Add screenshots and brief descriptions. Integrate source code into
documentation.
Create new group, "qtquickdemos".
Change-Id: I92715b2cdd861b1ff2bdd28a640e63d2a220499e
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Leonard Lee [Thu, 2 May 2013 10:25:25 +0000 (12:25 +0200)]
Fix canvas transformation.
Task-number: QTBUG-28711
Change-Id: Icb44359397dcd5407652ff105154124666d0306d
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Gunnar Sletta [Sun, 28 Apr 2013 17:24:59 +0000 (19:24 +0200)]
pixelIndex -> pixel since image is now 32-bit
Change-Id: Iac3c8d60d531a93ce6e862dbdfdf53e49e0d2185
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Sze Howe Koh [Sun, 5 May 2013 00:08:41 +0000 (08:08 +0800)]
Doc: Fix some broken snippet paths
Change-Id: Ib79bfbea402b86e26a503de47383522317ca906b
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Sze Howe Koh [Sat, 4 May 2013 16:31:03 +0000 (00:31 +0800)]
Doc: Make the titles of example pages consistent
Most of the example titles have either a "Qt Quick Examples -" prefix or
a "Scene Graph -" prefix.
Also fixed a typo ("Scenegraph" -> "Scene Graph")
Change-Id: Ibeb25d88d1888be3fb004a9ad95dc7ccbfeed7e3
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Christiaan Janssen [Wed, 17 Apr 2013 14:46:12 +0000 (16:46 +0200)]
QmlProfiler: SceneGraph profiling
Change-Id: Ide71b330b13fc3816ed191bd9af84e0fce0d9587
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Sze Howe Koh [Tue, 30 Apr 2013 15:38:07 +0000 (23:38 +0800)]
Doc: Move full apps from "qtquickexamples" to "qtquickdemos"
"qtquickexamples" is for illustrating code usage; "qtquickdemos" is for
showcasing fully-functional apps.
Renamed titles and screenshots to match the other demos.
Also, attempt to make the descriptions sound more interesting.
Change-Id: I2fb43c5d32f24159cd39564576d4ebd76b2cbeaa
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Shawn Rutledge [Thu, 21 Feb 2013 08:16:56 +0000 (09:16 +0100)]
Add new Item.Screen properties to screenInfo example
Also removed the rotation animation which doesn't seem useful.
(On most platforms the content will auto-rotate anyway.)
Change-Id: Ia6ca1046fc2162a13be5c26cbf5d2b698ffa2367
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Shawn Rutledge [Thu, 2 May 2013 13:57:01 +0000 (15:57 +0200)]
mouse synthesis: don't say the left button is pressed during a release
Follows the same reasoning as Iefe63cd753f9f8bb04278fd04a4d728e3deda25e
in qtbase: buttons should have only the buttons which are still pressed.
Change-Id: I894df43254eb1b1ce173fd7acc7190e9765beb48
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Liang Qi [Tue, 30 Apr 2013 10:33:16 +0000 (12:33 +0200)]
Tests: add qmlCreateWindow in tst_qqmlcomponent
Task-number: QTBUG-30919
Change-Id: I474a327e057978356a4ae395d8f59a66afaf2f7f
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Eskil Abrahamsen Blomfeldt [Thu, 2 May 2013 10:46:51 +0000 (12:46 +0200)]
Make sure correct files are bundled on Android
When we're bundling Qt inside the apk, we need to know
which extra files to bundle which might be dependencies
of the app. In this case, qml/ which contains the imports
for Qt Quick 2, and the accessible/ plugins.
Change-Id: I0782a6146a4d41d895db20d912eb6877e54ef6c8
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Alan Alpert [Mon, 29 Apr 2013 20:21:10 +0000 (13:21 -0700)]
Only use emitCap when we run into infinite particles
emitCap is intended to prevent issues with multiple emission of infinite
life particles, but it can currently prevent emission of any particles
when particleCount() changes after a reset. Tracking particleCount() on
changes would be inefficient and be more work to integrate with the
correct behavior of infinite particles, so this patch delays the impact
of emitCap until an infinite particle is discovered.
This will lead to a subtle behavior difference of limiting infinite
particle counts based on the count at the first emission, not the first
reset, which could be construed as a bug fix in some situations. This
seems reasonable as a futher subtle behavior change will be needed in
the future to properly support varying counts of infinite particles.
Task-number: QTBUG-30915
Change-Id: I4172aee1d03f00cc63ce7c9d12ace052bc41436d
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Alan Alpert [Wed, 27 Mar 2013 21:08:28 +0000 (14:08 -0700)]
Avoid rare crash
In the case where a QML type had been registered with the same
metaobject, you could dereference the c++ type union data when it hadn't
been allocated.
Change-Id: I906d68710cf88b379933eb13cf0668738f07d5f4
Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
Topi Reinio [Mon, 29 Apr 2013 13:01:32 +0000 (15:01 +0200)]
Doc: Move example docs related to QtQml under the correct module
This change moves 'Extending QML' qdoc file and the tutorials
from examples/quick to examples/qml, which is the correct
location for them.
Change-Id: I24bd9dfa75baaab7bc8efe08489f09a7b65d98a6
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Michael Brasser [Tue, 30 Apr 2013 18:06:44 +0000 (13:06 -0500)]
Better handle GL errors in EtcTexture::bind().
The scenegraph as a whole does not typically do GL error checking. That
means GL errors occurring elsewhere could cause the etcprovider to unload
textures that loaded correctly.
Change-Id: Ic8e0caa62dab50b391e226cf0a493bc7e357dc46
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Albert Astals Cid [Tue, 30 Apr 2013 21:03:03 +0000 (14:03 -0700)]
Fix crash in QQmlDelegateModel
It can happen that when the QQmlDelegateModel goes away some of the
QQmlDelegateModelItem from d->m_cache are still incubating, this
means that isReferenced() will return true and we will not delete them.
This also means that when these QQDMIncubationTask finish they may end
up calling QQDMIncubationTask::statusChanged which will try to access
the delegate model that is already gone.
This commit makes sure we set vdm to 0 in these orphaned
QQDMIncubationTask so in QQDMIncubationTask::statusChanged we know
no one cares about us anymore and don't reference the already gone
delegate model
Task-number: QTBUG-30928
Change-Id: Ief6176cec151d861dad09ca2498ca27e17ee6385
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Samuel Rødal [Tue, 30 Apr 2013 06:29:59 +0000 (08:29 +0200)]
Made Canvas blur better match the one in HTML 5 Canvas.
Fixed blur being too faint by fixing the weight to correctly match the
amount of pixels being sampled based on the blur radius, and by not
multiplying and flooring to int inside the sampling loop which leads to
excessive rounding down errors.
The "half" value in the previous implementation was also wrong due to
using integer division instead of floating point division, which caused
the blur being slightly offset down and to the right.
By not calling scanLine() and constScanline() repeatedly and by only
applying the weight once in the single-weight case we can also gain a
slight performance improvement.
Also, make sure blur radii below 2 don't get floored to 0.
Change-Id: Ibe15d0f51c919594b168923485c051d21f8d7822
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Samuel Rødal [Mon, 29 Apr 2013 13:36:09 +0000 (15:36 +0200)]
Fixed wrong rendering offset / clipping with shadowBlur in Canvas.
If the item being rendered didn't have a bounding rect starting in the
origin the shadow path would be get an additional offset equal to the
distance of the item from the origin. Also, the stroke's shadow did not
take the pen width into account, causing clipping artifacts.
Combine all the common shadow generating code into a single function,
and avoid rendering into an intermediate image that is then blitted into
a larger image.
Task-number: QTBUG-30914
Change-Id: I16c7c15897ab8e2d46f37da835f75f97fe680863
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Frederik Gladhorn [Tue, 30 Apr 2013 13:06:40 +0000 (15:06 +0200)]
Canvas: Do not apply transform to text twice
The path already has the transform,
no need to apply it a second time manually.
Task-number: QTBUG-30501
Change-Id: Iedcb2e2f85a1f9eeac8e6264e00536c43bf16ddb
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Morten Johan Sørvig [Fri, 12 Apr 2013 11:44:56 +0000 (13:44 +0200)]
Enable touch events on Mac for MultiPointTouchArea
Enabling touch events on a window causes scroll event
lag so we want to avoid avoid it as far as possible.
Enable/disable on scene changes, similar to what we
do for WA_AcceptTouchEvents for widgets.
Task-number: QTBUG-28483
Change-Id: I2e5b5e2b093cccfc5253f7228f5ec0c588c60371
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Shawn Rutledge [Fri, 3 May 2013 11:47:42 +0000 (13:47 +0200)]
Enable touch events on Mac for PinchArea
Enabling touch events on a window causes scroll event
lag so we want to avoid avoid it as far as possible.
Enable/disable on scene changes, similar to what we do with
WA_AcceptTouchEvents for widgets, and in change
I2e5b5e2b093cccfc5253f7228f5ec0c588c60371 for MultiPointTouchArea.
Change-Id: I8cd8d172ffd93cfc4ec115917cc8662202f3b069
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Alan Alpert [Wed, 1 May 2013 23:36:02 +0000 (16:36 -0700)]
Remove from hover list on destruction
When hoverEnabled is unset the item remains in a hovered state until the
mouse leaves. In this circumstance, the item could be destroyed without
cleaning up the reference in the hovered items list.
To catch this and similar circumstances, the item is removed from the
list when destroyed, regardless of hoverEnabled status.
Task-number: QTBUG-30962
Change-Id: I982ab8c9e1077fecc885fd166d70bbbbbe8fc179
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Liang Qi <liang.qi@digia.com>
Alan Alpert [Mon, 1 Apr 2013 18:07:18 +0000 (11:07 -0700)]
Document percieved memory leak
QJSEngine doesn't call collectGarbage upon deletion, because this
operation can be expensive and in most cases the JS engine is deleted
during application shutdown, when the memory can be deallocated cheaper.
This can lead to an apparent memory leak if multiple engines are created
and destroyed in the same process. Documenting how to avoid this.
Change-Id: Ie02cb8bedc8821e0bb04dfa52a5a2d65b4b085a3
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
Alan Alpert [Mon, 22 Apr 2013 22:35:28 +0000 (15:35 -0700)]
Elaborate on versioning docs
Task-number: QTBUG-30808
Change-Id: I1930bd91a6c2089047ac7e7d74da2c977c522e07
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Alan Alpert [Tue, 30 Apr 2013 22:21:26 +0000 (15:21 -0700)]
Fix VS2010 compile warning
warning C4510: 'QQmlPrivate::RegisterCompositeType' : default constructor could not be generated
Task-number: QTBUG-30454
Change-Id: I16ec8995ac1df3c92353006473ca082c4ed4e5b7
Reviewed-by: Josh Faust <jfaust@suitabletech.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Albert Astals Cid [Tue, 30 Apr 2013 19:22:36 +0000 (12:22 -0700)]
Protect against null item at QQuickItemView::destroyingItem
Change-Id: I92317d8f5a6d6f60160139f7486ffa8ec5985656
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Liang Qi [Thu, 18 Apr 2013 07:36:28 +0000 (09:36 +0200)]
Added doc and test for active and requestActivate in QQuickWindow
Autotest is included.
Change-Id: I0f8614b502f1e51cab5612fee283c929e078108b
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Liang Qi <liang.qi@digia.com>
Paul Olav Tvete [Fri, 26 Apr 2013 15:25:57 +0000 (17:25 +0200)]
Don't eat Back button in TextEdit
On Android, Key_Back is used to change to the previous state in-app,
as well as to exit the application. QTextControl does not react to the
back button, so it should not accept the event.
Task-number: QTBUG-30752
Change-Id: I010d36c93f14384b96fb0b2f0015c57a2a3d2497
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Frederik Gladhorn [Tue, 30 Apr 2013 11:24:38 +0000 (13:24 +0200)]
Fix MaskedMouseArea example
Task-number: QTBUG-30916
Change-Id: Icc73118f8d129b6c1ef285fd7a35f7a9a8e04391
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Christiaan Janssen [Wed, 24 Oct 2012 14:09:29 +0000 (16:09 +0200)]
QmlProfiler: Pixmap Cache
Change-Id: Ibc237bb162c24030438b89d54fa8802ee66b080a
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Shawn Rutledge [Mon, 29 Apr 2013 10:39:53 +0000 (12:39 +0200)]
QQuickScreen.name can change at runtime
It's generally a constant but the attached property doesn't always
have its QScreen at startup, so in practice every property needs a
notifier. (Followup to Id777caf6cef1df5bc01757605e3085151170760b )
Change-Id: Ia3a321f98dc49b7e75f6eceb8f16b153c73a3134
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Jerome Pasion [Wed, 24 Apr 2013 13:28:26 +0000 (15:28 +0200)]
Doc: Changed order of pages in QML reference.
New order:
QML Syntax Basics
QML Object Attributes
Property Binding
Signal and Handler Event System
Integrating QML and JavaScript
[etc.]
Change-Id: I19e6fc10e36963362dd862feeb697f942902aaac
Reviewed-by: Bea Lam <bea.lam@jollamobile.com>
Pierre Rossi [Mon, 25 Mar 2013 18:58:46 +0000 (19:58 +0100)]
TextEdit: Better support of QTextTable and inline images
Fix some issues with incremental updates found while
playing with the Quick Controls textedit demo.
-Grouping text blocks into a single text node is fine as
long as it doesn't cross the boundary of a child frame
(e.g. a table), otherwise all that node logic collapses.
-Text tables are hard to split in a sensible way, ensure
we treat them as one text node for the sake of simplicity.
-Inline images can cause several text nodes to have the
same apparent start position. Beef up the rewinding logic
in markDirtyNodesForRange.
Change-Id: Ib4518bcd9303035fa00d9f4b16da7ca6c88e2313
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Shawn Rutledge [Mon, 29 Apr 2013 11:51:15 +0000 (13:51 +0200)]
Don't crash if QQuickPath has less than 4 elements
When running the Qt Cinematic demo on Android, the assertion
ASSERT: "i >= 0 && i < elementCount()" in painting/qpainterpath.cpp
failed because of a zero default size at startup.
Change-Id: I2c46c43319cf71030cf03b1f7c6cdaec782ce11a
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Albert Astals Cid [Thu, 25 Apr 2013 16:10:01 +0000 (18:10 +0200)]
QQmlVMEGuard is not ok if one of the context engines is gone
Task-number: QTBUG-30632
Change-Id: Idff323f5b29688477e31030111d4f49f644115cd
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Jerome Pasion [Fri, 19 Apr 2013 14:01:37 +0000 (16:01 +0200)]
Doc: Moved "QML Application Developer Resources" to qtdoc repository.
The guide is more relevant to Qt, not just Qt QML and Qt Quick. It
would need to include information about the tools and other Qt modules
which provide QML types.
Change-Id: I0cab0db015022dd27f08811a88ea4a6c3c6e917d
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
Topi Reinio [Mon, 29 Apr 2013 10:51:14 +0000 (12:51 +0200)]
Doc: Fix example path for Qt Quick scenegraph examples
Base path (examples/quick) is now defined in qdocconf file, example
docs need to adjust their paths for \example command.
Change-Id: I18412c4adf73691903ee58c9a056b6a4998d4d6a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Sze Howe Koh [Sun, 28 Apr 2013 02:59:06 +0000 (10:59 +0800)]
Doc: Remove "qmldemos" group
The group is a remnant of Qt Quick 1, and currently only contains 1
member. Move it to the "qtquickexamples" group.
Change-Id: I211b9b769274e139321760f4b52220449e03a6ad
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Shawn Rutledge [Fri, 26 Apr 2013 12:46:05 +0000 (14:46 +0200)]
Add more geometry properties to the Screen attached property
desktopAvailableHeight is useful for positioning windows, and
logicalPixelDensity is useful for ensuring that touch controls are
a reasonable size even on very high-resolution displays.
Change-Id: Id777caf6cef1df5bc01757605e3085151170760b
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Frederik Gladhorn [Wed, 3 Apr 2013 20:03:09 +0000 (22:03 +0200)]
Be more strict about accessible text selection
Change-Id: I0eda4c29235035824105992f3db2d9a0c06dc6b5
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Frederik Gladhorn [Fri, 26 Apr 2013 14:18:54 +0000 (16:18 +0200)]
Fix hover after press event
When a mouse press event was rejected,
we would unconditionally cancel the hover
and claim that the mouse is not contained any more.
Instead check if the mouse left and only then cancel
the hover state.
Task-number: QTBUG-30783
Change-Id: I5fac6f3a1f2807ef03e07982c603492d40d2a249
Reviewed-by: Florian Boucault <florian@boucault.net>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Alan Alpert [Thu, 11 Apr 2013 23:57:19 +0000 (16:57 -0700)]
No longer apply pending changes when accessing ItemView properties
Applying changes in the getters can lead to binding loops, and is
currently inconsistently applied. Removing the applyPendingChanges calls
from remaining getters, and adding a forceLayout() function for cases
where the immediate-apply behavior is needed.
Task-number: QTBUG-30555
Parts-of-patch-by: Albert Astals Cid
Change-Id: I64632601e02f2a53060296ab7739577a749d916f
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Reviewed-by: Albert Astals Cid <albert.astals@canonical.com>
Alan Alpert [Fri, 12 Apr 2013 17:30:51 +0000 (10:30 -0700)]
Avoid modifying cacheCount while iterating over it
Because the cache items can be referenced in bindings, the last ref for
the item can be cleared at any time due to JS ownership. This could
modify the cache count while iterating over it. The removal from the
cache list is now postponed until iteration is finished. All iteration
cases can already handle an invalid cache item being found in the list.
Task-number: QTBUG-30555
Change-Id: I1c0721b4d7e0dd69ce7a73824c1aa7b50d2c32a2
Reviewed-by: Albert Astals Cid <albert.astals@canonical.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Gunnar Sletta [Thu, 18 Apr 2013 15:02:24 +0000 (17:02 +0200)]
Implement QQuickWindow::grabWindow() for isVisible=false
Webkit uses this for testing.
Change-Id: I4539e169a02592fb6c0062903917d4dd23a4303c
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Gunnar Sletta [Fri, 26 Apr 2013 12:54:04 +0000 (14:54 +0200)]
Optimize particle mask extruder
Change-Id: Ideed246f49301f826935d3fe4a25a3b593ee6b07
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Frederik Gladhorn [Fri, 26 Apr 2013 14:11:56 +0000 (16:11 +0200)]
Simplify setting of hover
Change-Id: I620dad5a07749a25c97f5c17e8f7f552593cfd2d
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Samuel Rødal [Fri, 26 Apr 2013 10:40:18 +0000 (12:40 +0200)]
Fixed segmentation fault when setting shadowBlur in Canvas element.
Task-number: QTBUG-30882
Change-Id: I6c941394527bac62c0d2792acf5cf223279babc7
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Nico Vertriest [Thu, 25 Apr 2013 11:32:47 +0000 (13:32 +0200)]
Doc: corrections (Writing Guidelines) and language edits
Corrected punctuation issues.
Task-number: QTBUG-30774
Change-Id: I144d2487d4f7c248c60bf824b909145416d356fa
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Shawn Rutledge [Thu, 25 Apr 2013 09:16:40 +0000 (11:16 +0200)]
Re-implemented itemChange must always call QQuickItem::itemChange
Documentation for that fact, and the windowChanged signal.
Fix existing QQuickItem subclasses which didn't call
QQuickItem::itemChange. Examples should rather connect to the
windowChanged() signal.
Change-Id: Ieddcdbe69f849ddb120b64be9c5e0a21393b0ed9
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Morten Johan Sørvig [Wed, 17 Apr 2013 07:04:12 +0000 (09:04 +0200)]
Fix spelling error.
Change-Id: I8f889d9c60cf4ac53fee75001efefc697c8d2076
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Frederik Gladhorn [Tue, 5 Mar 2013 00:19:42 +0000 (01:19 +0100)]
Implement a basic accessible text interface
Change-Id: Ic8a807f9de66d2d13da1193fe6e2abb7ccccb2a2
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Albert Astals Cid [Thu, 25 Apr 2013 10:41:44 +0000 (12:41 +0200)]
Initialize lastPos
I was valgrinding a scene with a flickable and i come to see
that in some ocassions we use lastPos before initializing it
in QQuickFlickablePrivate::viewportAxisMoved
Change-Id: Ibfeeefc00f62493163d5d44f676bec79a4c004c2
Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
Gunnar Sletta [Thu, 25 Apr 2013 10:34:29 +0000 (12:34 +0200)]
Mark the canvas texture dirty when we change it.
Because the texture is the same instance and the rect is the same,
the early-out checks in QSGSimpleTextureNode will abort.
Task-number: QTBUG-30666
Change-Id: I0e6a1fd3d4de33436057e8cdf62dc0e7964b5c21
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Gunnar Sletta [Thu, 25 Apr 2013 11:26:04 +0000 (13:26 +0200)]
Quote scenegraph example code from the right place.
Change-Id: I0eced5b0062aa36dc67b575615ed4c82d3ea6d3d
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Gunnar Sletta [Thu, 25 Apr 2013 13:17:40 +0000 (15:17 +0200)]
Disable native glyph rendering on embedded
Change-Id: I71769affe8f0138dd65f3b94fb27176bd069ab8d
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Nico Vertriest [Thu, 18 Apr 2013 10:07:04 +0000 (12:07 +0200)]
Doc: corrected snippet issue by changing extension snippet file.
Task-number: QTBUG-30746
Changed in deployment.qdoc
Deleted example.qrc
Created example.qdoc
Added license text to example.qdoc
Change-Id: I9699dcdb4977506c0a62d1a9e952c98babfaf03d
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Sze Howe Koh [Wed, 24 Apr 2013 14:31:41 +0000 (22:31 +0800)]
Doc: Expand example (importing multiple modules into 1 namespace)
Snippet is for the Qt QML "Import Statements" page. Show how to use the
namespace to reference types from different modules
Change-Id: I8c49703194a18657439afdef75e47ff7e97be653
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Marco Bubke [Wed, 24 Apr 2013 12:01:20 +0000 (14:01 +0200)]
Make pathElements designer ready
The append and clear case was not handled before but the designer is
changing the pathElements.
Change-Id: I373e26a7c597774c3e985a8c26a564700e9ee9de
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Marco Bubke [Wed, 24 Apr 2013 11:52:10 +0000 (13:52 +0200)]
Refactor the pathElements property in QQuickPath
A prequel to make QQuickPath pathElements designer ready.
Change-Id: I1f3e30c699c958c827fdecfb57c35f5c24cd810a
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Marco Bubke [Wed, 24 Apr 2013 11:26:51 +0000 (13:26 +0200)]
Refactor QQuickPath componentComplete
It is a prequel for the refactoring of the pathElements property.
Change-Id: I56cc4b9b419fecf96e331a6cab58b33157742e70
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
Reviewed-by: Aurindam Jana <aurindam.jana@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Sze Howe Koh [Wed, 24 Apr 2013 14:20:30 +0000 (22:20 +0800)]
Doc: Replace some references to Nokia
Link to internal QDoc pages, or to qt-project.org
Change-Id: I5d9adae711213873ab57ccfc5bb2d8f74cf5689b
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Gunnar Sletta [Tue, 16 Apr 2013 15:25:04 +0000 (17:25 +0200)]
Renderloop for Windows
The normal GUI thread render loop has several problems on windows.
It does not do vsync animations and on some hardware, where the
vsync delta is higher than the time it takes to fire a 16ms timer,
the eventloop will always contain at least one event and we never
return to processing non-client area events, like resize.
Also, threaded OpenGL seems rather unstable, so the threaded renderer
is not a stable option.
So we introduce a windows based renderloop. It is fully cross platform
but written to make the most out of the limitations which exist.
The overall goal is:
- vsync animations when allowed by the system. We get this by
using an animation driver and advancing in sync with rendering
- Keep system load low and allow for NC processing. The maybeUpdate
function will start a short timer which will let the renderloop
idle for few ms, allowing the eventloop to pick up system events.
(this is similar to what the threaded renderer also does, btw)
Change-Id: Ic192fd0ed7d5ecdaa2c887c08cbeb42c5de6b8a8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Janne Anttila [Wed, 24 Apr 2013 09:00:54 +0000 (12:00 +0300)]
Fix tst_qqmldebugjs and tst_qquickfolderlistmodel build for WinCE.
tst_qqmldebugjs:
Some WINCE header files define IN and OUT macros, and those make
the following assignments in tst_qqmldebugjs.cpp to fail later on:
const char *IN = "in"
const char *OUT = "out"
Since platform macros are not needed in the context of this file,
undef them to make build pass for WinCE.
tst_qquickfolderlistmodel:
WinCE does nothave drive letter concept, so lets execute the
changeDrive test only on desktop Windows.
Change-Id: I5c159e3b3ee82e888aeac1da559fd63a875d089e
Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Sze Howe Koh [Mon, 22 Apr 2013 11:49:30 +0000 (19:49 +0800)]
Doc: Un-overload the word "module"
"The Qt Quick module contains the QtQuick QML module and the Qt Quick
C++ module" is an odd way to describe things.
The concept of a "QML module" is deeply entrenched so this patch won't
touch it, but at least we can get rid of references to "C++ module"s.
Change-Id: Ib06f8e3152551901dc6016cb37507cb9608d7863
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Sze Howe Koh [Fri, 19 Apr 2013 17:14:53 +0000 (01:14 +0800)]
Doc: Create links to Qt Quick 1
Point to the porting guide, so that users who search for the old names
will be directed to an explanation of the name change.
Also made some new links to Qt Quick 2, and changed "favour" -> "favor"
(Sanity Bot complained)
Change-Id: If30c8d619d8fdb9df72b7b5f3efd356f1e07b23a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Pierre Rossi [Mon, 25 Mar 2013 15:52:45 +0000 (16:52 +0100)]
QQuickTextEdit: make the update logic work with multiple text frames
We can't assume that the text nodes are added in order since we're
iterating over all the blocks of a text frame before processing its child
text frames. The only way for all this not to collapse is to sort the text
nodes once we're done each time we're replacing/adding new ones.
Task-number: QTBUG-30349
Change-Id: Ia5d804f7f196b2348fd68fdd62a6585c189baaa4
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Fawzi Mohamed [Wed, 24 Apr 2013 08:46:22 +0000 (10:46 +0200)]
qtdeclarative: update .qmltypes, and use -notrelocatable option
this should fix some bugs in the code support due to incorrec/outdated
meta info
Change-Id: I90925daa5376ebdfb9a6f9d73103893065c15d64
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
Fawzi Mohamed [Tue, 23 Apr 2013 17:03:14 +0000 (19:03 +0200)]
qmlplugindump: add an explicit -relocatable switch
this will enable us to switch the default to nonrelocatable
Change-Id: Ic4bff6466ee2fb6d4d1dd89829034ad239422a7e
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Sze Howe Koh [Tue, 23 Apr 2013 14:15:47 +0000 (22:15 +0800)]
Doc: Fix module name format
Follow the conventions at
http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation
Qt3D -> Qt 3D
QtLocation -> Qt Location
QtScript -> Qt Script
Change-Id: Id59cb209e0e0407d564de0bfaab73990e64a02e6
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>