Shawn Rutledge [Wed, 22 May 2013 13:17:56 +0000 (15:17 +0200)]
qmlscene: don't call show() on the window if it's already showing
That way Component.onCompleted() can optionally do showMaximized()
without being overridden.
Task-number: QTBUG-31260
Change-Id: I6f5c3025efd3b38809be85da4172241695168a6c
Reviewed-by: Nikita Krupenko <krnekit@gmail.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Alan Alpert [Wed, 15 May 2013 19:53:11 +0000 (12:53 -0700)]
Partial fix for deferred properties when combined with components
Current deferred properties implementation did not store context
or compiled data pointers correctly. Those pointers are now stored
when the defer is reached, so as to avoid confusion (confusion leads
to asserts or crashes).
Does not extend the deferred property support to allow multiple
deferred blocks per item. This now prints and error and the side
effect is only that one of the deferred blocks is lost. This use
case is sufficiently rare that it may not be worth the cost.
Task-number: QTBUG-30325
Change-Id: I80cb074ed4452e95020208a0142a91e721bced7d
Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
J-P Nurmi [Tue, 14 May 2013 17:27:20 +0000 (19:27 +0200)]
Fix TextEdit content size calculation
Task-number: QTBUG-31154
Change-Id: I9d3e31352967b99b4bbb38f5819d3d093438ee37
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Gunnar Sletta [Sat, 18 May 2013 06:31:54 +0000 (08:31 +0200)]
Avoid redundant QColor::alphaF() calls.
Change-Id: I3694b075e98eab9f3eacf7758881a9473999b46e
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Gunnar Sletta [Sat, 18 May 2013 06:24:45 +0000 (08:24 +0200)]
Avoid using QColor::xxxF functions.
In our usecase, the color is always used as a float so using QColor
(which is ushort) internally adds a lot of pointless conversion.
Enough so that it shows up in profiles as 1-2% each. Not a lot,
but easy to fix.
The compare function is also somewhat simplified. For colors we're
primarily searching for equallity. If that fails, we just need to
provide consistent values, so use the address instead of doing
any fancy calculation.
Change-Id: Icae7e78ed767e802c137bab7fcacff66e9a4bc66
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Gunnar Sletta [Wed, 22 May 2013 08:35:27 +0000 (10:35 +0200)]
Disable textureinthread example when threaded gl is not available.
Task-number: QTBUG-30077
Change-Id: I8b6e4b8a33819fe84c843e85d863b582cfd69439
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Liang Qi [Tue, 21 May 2013 08:19:37 +0000 (10:19 +0200)]
Re-enable qmltest on Mac
Only tst_fontloader.qml fails on Mac, and we have useful Qt.platform.os.
Task-number: QTBUG-25306
Change-Id: I6f4082028a188453378ad7ef73f51b1df2d89f11
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
J-P Nurmi [Mon, 13 May 2013 16:14:34 +0000 (18:14 +0200)]
QQuickTextControl: emit cursorPositionChanged() only if it changed
Change-Id: Id6fe03677e93119a63bfe87ade3cd333bf4890a1
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
Eskil Abrahamsen Blomfeldt [Tue, 14 May 2013 09:35:02 +0000 (11:35 +0200)]
Android: Make Qt5QuickParticles a dependency of Qt Quick
Since we don't have any way of parsing QML to find out which
imports will be used, we need to always load Qt5QuickParticles
library when using Qt Quick, since this is a dependency of the
particles import itself. Otherwise, apps that use particles
would crash.
Task-number: QTBUG-30848
Change-Id: I24326e2d59fc05f7867233fe503b2708d50eee78
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Caroline Chao [Thu, 16 May 2013 07:28:40 +0000 (09:28 +0200)]
Autotest: fix misuses of tryCompare
Change-Id: Ia06527a0a3c3cfd68ecb3372316de476e02e6c26
Reviewed-by: Albert Astals Cid <albert.astals@canonical.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Albert Astals Cid [Tue, 21 May 2013 14:44:59 +0000 (16:44 +0200)]
Fix comment: Signal is actually createdItem not itemCreated
Change-Id: Ie2a259a02becdf6fb0c21d93013e0e3148187ed8
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Alan Alpert [Fri, 17 May 2013 17:48:28 +0000 (10:48 -0700)]
Fix PropertyAnimation doc
Task-number: QTBUG-31063
Change-Id: I2329f5c92c5985ed4a65a896521ddd3f6649ce2c
Reviewed-by: Bea Lam <bea.lam@jollamobile.com>
Liang Qi [Wed, 8 May 2013 17:22:29 +0000 (19:22 +0200)]
Tools: unnecessary to make qmlplugindump a bundle
Embed Info.plist in qmlplugindump executable in a special way.
Change-Id: I7eb73d0f832ab53d352c1fd2275f77e853269c2c
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Sze Howe Koh [Thu, 16 May 2013 15:53:02 +0000 (23:53 +0800)]
Doc: Fix some broken links
Change-Id: I1385a8947107a7c80b32306fc587aff45536a4ec
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Matt Vogt [Fri, 17 May 2013 00:14:26 +0000 (10:14 +1000)]
Prefer qFatal to assert for failure condition
Otherwise the explanatory message won't be seen in release mode.
Change-Id: I5c9fbc86753ac5ecea3d0714b8f17207f6b713d6
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Alan Alpert [Thu, 16 May 2013 21:32:05 +0000 (14:32 -0700)]
Respond appropriately to textFormat changed
If the text has not changed when textFormat changes between states other
than RichText, the text was not re-laid-out. This is necessary if the
text includes control tags.
Task-number: QTBUG-31191
Change-Id: I3c6f5343aa85e8337b90cf86748a696d5742e906
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Liang Qi [Wed, 15 May 2013 12:18:59 +0000 (05:18 -0700)]
Fix a warning when setActiveFocusOnTab(false) for root item
Task-number: QTBUG-31114
Change-Id: I4d6aac534fbc1e84593e4d7084e6a892eea4256c
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
J-P Nurmi [Thu, 16 May 2013 11:09:51 +0000 (13:09 +0200)]
Fix a crash in QQuickRepeater::clear()
Change-Id: Iedf45862323ca8233be155ce65cd3348abd0a8e5
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>
Alan Alpert [Wed, 15 May 2013 22:50:22 +0000 (15:50 -0700)]
Assert instead of crashing
Using a singleton (at least a QJSValue one) improperly leads to a crash.
Assert with an explanatory comment is a low-cost improvement until
better capitalization checking is implemented.
Task-number: QTBUG-30090
Change-Id: I237a1dd2aab743ae1f09e8d653aa5aeb4bd0240f
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Gunnar Sletta [Thu, 16 May 2013 07:56:01 +0000 (09:56 +0200)]
improve docs of QSGGeometry::set[Vertex|Index]DataPattern
Change-Id: I6ca0d8549891302cc9d71bdfac11704752caaf60
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Sze Howe Koh [Wed, 15 May 2013 13:16:31 +0000 (21:16 +0800)]
Doc: Inline a short snippet
An indirect way of fixing a broken snippet path.
The entire (but very short) file is included as a snippet in only one
place, and the license text takes far more space than the snippet.
Change-Id: I6f4bf588b8701b655d418a71f83a2f9263d6b532
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Sze Howe Koh [Wed, 15 May 2013 14:10:08 +0000 (22:10 +0800)]
Doc: Move snippet into correct module
The snippet belongs to Qt Quick's "QML Basic Type: color"
(src/quick/doc/src/qmltypereference.qdoc)
Change-Id: I47defee04c34f9c98ec57d840c377c680d114d71
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Mitch Curtis [Tue, 14 May 2013 15:04:45 +0000 (17:04 +0200)]
Document Flickable.pixelAligned.
Change-Id: I8ea85269c2666d18bf3c3815d2de0f90e9e0a3f4
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Gunnar Sletta [Wed, 15 May 2013 09:32:54 +0000 (11:32 +0200)]
Make Canvas respect smooth: true/false
Change-Id: I6e68fcfc534aca139484a9b2970e61fb22688c58
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Alan Alpert [Tue, 14 May 2013 17:22:44 +0000 (10:22 -0700)]
Doc fix
Task-number: QTBUG-31155
Change-Id: I4f1ac7c31ce6d4529c368d796706aa5f93a78d1a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Friedemann Kleint [Mon, 6 May 2013 08:57:53 +0000 (10:57 +0200)]
Fix warnings about unused parameters.
Change-Id: I091a0369f2026ae820d623aadd13a3190d40a56b
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Thiago Macieira [Wed, 8 May 2013 09:19:51 +0000 (11:19 +0200)]
Do not use an export macro in the function definition
qmlExecuteDeferred is exported using Q_QML_EXPORT in
qqml.h, so we don't need to use one here. Better not have any
than have the wrong one, which can cause problems.
Cherry picked from
d6d2074ff in qtquick1
Change-Id: Ief978feb503b7381ed462f71ebbd7986bd6862c3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
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>