platform/upstream/qtdeclarative.git
12 years agoremove dead files
Oswald Buddenhagen [Mon, 9 Jul 2012 19:02:36 +0000 (21:02 +0200)]
remove dead files

apparently these qml1 plugins moved out even before the patch adding
these files landed ...

Change-Id: Ie1cdd558787fedc9abe57ee8f2324f873b983cab
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoFix warnings about multiple rules for install_targets.
Friedemann Kleint [Tue, 10 Jul 2012 12:05:34 +0000 (14:05 +0200)]
Fix warnings about multiple rules for install_targets.

- Remove the accessility scope from the profile since
  the parent plugins.pro already does that
- Remove the target lines since they are also in
  ../shared/qaccessiblebase.pri.

Change-Id: I6d95bf43b4dd9de8627713df2eecac5cd526cd79
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
12 years agoDon't cache visual data model v8 handles.
Andrew den Exter [Tue, 5 Jun 2012 06:43:57 +0000 (16:43 +1000)]
Don't cache visual data model v8 handles.

The external resource is reference counted and resused irregardless of
whether the handles are cached, and the reduction in the number of
handles allocated needs to be comes at the cost of keeping  persistent
handle which have a negative impact on garbage collection.

Change-Id: I92996faab08a0ff76d21e56dbdafdd7522882d2c
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAdd option to use native rasterizer for SceneGraph text
Eskil Abrahamsen Blomfeldt [Wed, 4 Jul 2012 12:56:38 +0000 (14:56 +0200)]
Add option to use native rasterizer for SceneGraph text

For old-style (desktop components) apps using QML 2 on regular density
displays, distance field text will look out of place. We introduce
an option to use the native rasterizer instead if you would rather
have native look and feel than scalable text items.

Change-Id: Idb38e3c89f2deab9ae1963357c6c5fb235ddeab8
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
12 years agoStabilize Loader test.
Michael Brasser [Tue, 10 Jul 2012 03:10:28 +0000 (13:10 +1000)]
Stabilize Loader test.

Wait for Loader to load its item, rather than using
a fixed timeout value.

Change-Id: I97ee56d0d7161c9c71a5524f108b0f56d92cc3f3
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
12 years agoRemove unwanted whitespace from test URLs
Matthew Vogt [Tue, 10 Jul 2012 05:01:19 +0000 (15:01 +1000)]
Remove unwanted whitespace from test URLs

Change-Id: Ia39c7bc458f46a8a32c1e54a8963b1f89dbbf271
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoFix warning about assigned/unused variable.
Friedemann Kleint [Mon, 9 Jul 2012 12:51:43 +0000 (14:51 +0200)]
Fix warning about assigned/unused variable.

Change-Id: I0c9a7c4bf52e5a1a81d5ac85fc594ad197e3b811
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoUse qWaitForWindowActive() where it is required.
Friedemann Kleint [Fri, 6 Jul 2012 12:10:38 +0000 (14:10 +0200)]
Use qWaitForWindowActive() where it is required.

Prepare a change in qtbase in which the implementation
of qWaitForWindowShown() will be changed to
qWaitForWindowExposed() instead of qWaitForWindowActive().
Try to stabilize further tests by introduing
wait functions instead of calls to qApp->processEvents().

Change-Id: I9825885430d78be1610a3fe20023fad24aaacba9
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoSpeed up Text construction with RichText
Andrew den Exter [Thu, 5 Jul 2012 02:40:13 +0000 (12:40 +1000)]
Speed up Text construction with RichText

Setting the page size to empty can short cut some unnecessary layouts
triggered by QTextDocument/QTextDocumentLayout prior to the Text item
requiring a layout.

This rougly halves the construction time a Text item with RichText.

Task-number: QTBUG-19728
Change-Id: I03e6d293d8e5ac40046aef41171ca5009b718546
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoSpeed up TextEdit construction time.
Andrew den Exter [Thu, 5 Jul 2012 00:18:43 +0000 (10:18 +1000)]
Speed up TextEdit construction time.

Defer setting content on the QTextDocument until componentComplete()
to avoid unnecessary layouts and move one time setup for the
text document from setContent to the constructor.

Reduces the construction time of a TextEdit with RichText textFormat
by about a third.

Change-Id: Idde0772063bf769cde984efddd68589c55a7431a
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoDo not permit excessive recursion in component creation
Matthew Vogt [Thu, 5 Jul 2012 23:53:03 +0000 (09:53 +1000)]
Do not permit excessive recursion in component creation

Limit recursion during component creation to prevent infinite
recursion resulting in a crash.  Recursion results from invoking
createObject() in the Component.onCompleted handler.

Task-number: QTBUG-25439
Change-Id: Ica2ba099d82b5747c938501af04e67f7ace8402e
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoUse V4 binding for non-final properties where possible
Matthew Vogt [Mon, 4 Jun 2012 04:43:38 +0000 (14:43 +1000)]
Use V4 binding for non-final properties where possible

When a property referenced in a binding is not marked as final, do not
automatically abort optimization.  Instead generate both V4 and V8
binidngs, and only fall back to the V8 binding if necessary at run time.

Change-Id: I1bcc7e2b495935c5d519a9a223f640c1972cdb4e
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoReduce the number of unnecessary layouts on geometry changes.
Andrew den Exter [Thu, 7 Jun 2012 05:56:16 +0000 (15:56 +1000)]
Reduce the number of unnecessary layouts on geometry changes.

Improve checks for geometry changes that don't affect layout, i.e
width increasing when the previous layout didn't wrap or elide.

Set implicit sizes just once during layout rather than setting the
implicit width during and the implicit height after to limit the when
an implicit size change can change geometry.

And if there are multiple layouts of the same text/font combination
re-use cached layout data as much as possible by guarding against
unnecessary property changes on the layout, and not creating a new
layout for calculating the implicit size of truncated text.

Change-Id: Ia05e52e9170e1f5d3364896ab119e00d8a318299
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoExpand test case for qrc:/ URLs
Matthew Vogt [Thu, 5 Jul 2012 05:00:24 +0000 (15:00 +1000)]
Expand test case for qrc:/ URLs

Change-Id: Ibf8a04efbcb9d39938201f65c1fc0f236243a287
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAllow all explicit margins to override margins.
Andrew den Exter [Fri, 29 Jun 2012 07:06:38 +0000 (17:06 +1000)]
Allow all explicit margins to override margins.

Task-number: QTBUG-24515
Change-Id: Ibfc657dec9fd0c8e71cf3686a04ea7b00ad72c11
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoRemove Qt::WindowFlags from QQuickView constructor
Alan Alpert [Thu, 5 Jul 2012 06:14:58 +0000 (16:14 +1000)]
Remove Qt::WindowFlags from QQuickView constructor

It's no longer in the constructor of QWindow. Those who wish to set it
can use the setWindowFlags function.

Change-Id: I8df57ed1ced8128723d790caaaaaaaaaaaaa787d
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoClarify jumpTo docs
Alan Alpert [Fri, 6 Jul 2012 00:38:12 +0000 (10:38 +1000)]
Clarify jumpTo docs

Task-number: QTBUG-24769
Change-Id: Ib58a47deea2706f7fd683106380d1618d8b1d2cc
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoUpdate Age affector doc references
Alan Alpert [Fri, 6 Jul 2012 00:36:12 +0000 (10:36 +1000)]
Update Age affector doc references

Task-number:  QTBUG-26240
Change-Id: Ib58a47deea2706f7fd683106380d1618d8b1d2cd
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoUse enumeration in preference to enum when referring to QML API.
Andrew den Exter [Thu, 5 Jul 2012 06:08:09 +0000 (16:08 +1000)]
Use enumeration in preference to enum when referring to QML API.

Task-number: QTBUG-24666
Change-Id: I5197d4b4d1a1b53cae2033bd86ce26ba55d08384
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoUse qFloor instead of qRound for glyph coordinates
Jiang Jiang [Wed, 4 Jul 2012 16:49:20 +0000 (18:49 +0200)]
Use qFloor instead of qRound for glyph coordinates

Like we did in raster paint engine to make sure glyphs are positioned
correctly.

Change-Id: I1327b8727bd2b5085dfb2edc11b4d049403a2fb5
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoUse unique port numbers for http servers in auto tests.
Andrew den Exter [Tue, 3 Jul 2012 04:00:25 +0000 (14:00 +1000)]
Use unique port numbers for http servers in auto tests.

Prevents conflicts when tests are run in parallel.

Change-Id: Ic1652d963da291c7c41b31e2621874824fa575cb
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
12 years agoFix QQuickApplication::activate test.
Andrew den Exter [Tue, 3 Jul 2012 06:50:40 +0000 (16:50 +1000)]
Fix QQuickApplication::activate test.

ApplicationActivate and ApplicationDeactivate events are now delivered.

Task-number: QTBUG-21573
Task-number: QTBUG-23331
Change-Id: I58e8d7c7730c66ec210f04a74a945d3eece61e01
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoRemove sections with no doc content for now
Bea Lam [Thu, 5 Jul 2012 00:41:56 +0000 (10:41 +1000)]
Remove sections with no doc content for now

Change-Id: I23566853ffebec4de3c48ce4f5cd1c4b1f2389d5
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoFix various QtQuick.* submodule docs
Bea Lam [Tue, 3 Jul 2012 05:51:04 +0000 (15:51 +1000)]
Fix various QtQuick.* submodule docs

- Create module index pages for QtQuick.Window, QtQuick.XmlListModel and
QtQuick.LocalStorage.
- Fix references to module names in docs so that docs for properties
  and methods are actually generated e.g. use "QtQuick.Window2" instead
  of "QtQuick2.Window".

There's no easy way to document Module APIs at the moment so the
QtQuick.LocalStorage documentation has been updated in a hacky way to
generate the correct method documentation.

Change-Id: I7b34e4b4ac794acffc6d198b98e2115ccf0fa9a6
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdd references between being/completeCreate in the documentation
Laszlo Papp [Wed, 4 Jul 2012 06:54:43 +0000 (07:54 +0100)]
Add references between being/completeCreate in the documentation

Change-Id: I14f1c802347c9dad86f3fd7a9e858209a15d34e6
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoReorganize "concept" pages in QtQuick docs
Bea Lam [Tue, 3 Jul 2012 01:45:26 +0000 (11:45 +1000)]
Reorganize "concept" pages in QtQuick docs

This removes concepts/topic.qdoc and move this content into individual
concept topic pages under individual directories for each concept to
avoid having a really long "concepts" index page.

This change also:
- Moves components.qdoc ("Defining reusable components") into the
 appdevguide/ since it's not specific to QtQuick features - it's more
 about how to use a QtQml feature to build QML apps.
- Moves the part of qtqml/doc/src/cppintegration/data.qdoc that
 discusses how to use C++ models with QtQuick views into
 quick/doc/src/concepts/modelviewsdata/data-cppmodels.qdoc.

Change-Id: Id18a1d56acaaac41714c13cbc94bb3b80f337355
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAdd some private V8ASSERT macros.
Andrew den Exter [Fri, 29 Jun 2012 03:15:33 +0000 (13:15 +1000)]
Add some private V8ASSERT macros.

Simple variation on the V8THROW macros to consilidate the normal usage
pattern of if (!condition) THROW.

Change-Id: I71aaabab705c3f73922efdaf8bb40b5dcc390101
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoLet ShaderEffectSource use same multisample count as GL context.
Kim Motoyoshi Kalland [Tue, 3 Jul 2012 14:05:13 +0000 (16:05 +0200)]
Let ShaderEffectSource use same multisample count as GL context.

Change-Id: I9b772a2c405c2fab13dfee3527212117de16e9c0
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoqmlplugindump: Add comment to file that it was auto-generated
Thomas McGuire [Tue, 3 Jul 2012 14:13:46 +0000 (16:13 +0200)]
qmlplugindump: Add comment to file that it was auto-generated

This prevents people who do not know about this tool from
accidentally changing these files by hand.

Change-Id: I8ff889b953f7c637f914f8b5b8b07a36f3cdf58f
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
12 years agoCompile without RTTI support
Eskil Abrahamsen Blomfeldt [Tue, 3 Jul 2012 12:10:20 +0000 (14:10 +0200)]
Compile without RTTI support

We need to be able to compile without RTTI support. Fortunately
QPaintEngine has built-in type info. No RTTI support is the
default configuration on Windows with MSVC2010, so this is
required to fix the build there.

Change-Id: I89b1ed4879fd0e8e0d61ef12d77f6961fd0b07e5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoDocument QQmlComponent::create(QQmlIncubator&, ...)
Martin Jones [Wed, 4 Jul 2012 02:37:38 +0000 (12:37 +1000)]
Document QQmlComponent::create(QQmlIncubator&, ...)

Task-number: QTBUG-25132
Change-Id: Ice6c75cbd7a45519ce7f38190db3fae95146269e
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoPathView needs drag events similar to Flickable
Martin Jones [Tue, 3 Jul 2012 03:57:54 +0000 (13:57 +1000)]
PathView needs drag events similar to Flickable

Added dragging property and dragStarted() and dragEnded() signals.

Task-number: QTBUG-21740
Change-Id: I718835ff7e46af615951ec5f248eba41bac31071
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoImprove mouseWheel() function
Charles Yin [Tue, 13 Mar 2012 01:47:59 +0000 (11:47 +1000)]
Improve mouseWheel() function

Use new angleDela() API and update the documentation.

Change-Id: Ie01c979d8c411e81165caedc7e020e39f9d64371
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoImprove wheel event handling.
Michael Brasser [Mon, 2 Jul 2012 00:36:35 +0000 (10:36 +1000)]
Improve wheel event handling.

Use new angleDelta() rather than deprecated event data.

Change-Id: I28d0a1ff1bc99b35e1ce3d553e5cb9bdc9362f4c
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoMark QQmlComponent::createObject() and incubateObject() as internal
Martin Jones [Wed, 4 Jul 2012 05:27:31 +0000 (15:27 +1000)]
Mark QQmlComponent::createObject() and incubateObject() as internal

These functions are for use in QML Component.  They are not part of
the C++ API.

Change-Id: I92743a3b31c2864976756e2d6d76c9057aee9c1d
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoImprove performance guide
Chris Adams [Fri, 29 Jun 2012 02:59:47 +0000 (12:59 +1000)]
Improve performance guide

This commit improves documentation about binding optimisation and
positioning.

Task-number: QTBUG-21720
Task-number: QTBUG-25844
Change-Id: Ib2c23583adee9207dfdee9f9d4ec5473fe2a7ec6
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoReport correct mouse position when made visible with hoverEnabled.
Michael Brasser [Mon, 2 Jul 2012 01:50:15 +0000 (11:50 +1000)]
Report correct mouse position when made visible with hoverEnabled.

Task-number: QTBUG-24282
Change-Id: I778b2db18c28e2b33690531ec19eb24ecf444a38
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix qmlRegisterModuleApi function linkage
Chris Adams [Mon, 2 Jul 2012 07:21:45 +0000 (17:21 +1000)]
Fix qmlRegisterModuleApi function linkage

The qdoc tag for the \fn doc was incorrect, leading to linkage errors.

Task-number: QTBUG-26236
Change-Id: Ifd407915d9a1461bb2b48a6bf54bb085425ba76b
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoRefresh the TextInput.acceptableInput property when validator changes.
Andrew den Exter [Thu, 21 Jun 2012 06:44:30 +0000 (16:44 +1000)]
Refresh the TextInput.acceptableInput property when validator changes.

Task-number: QTBUG-26260
Change-Id: I404640d9a2f000976887dcc2119f971c17a71c7e
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoMake Behaviors work correctly with value types.
Glenn Watson [Sun, 1 Jul 2012 23:10:49 +0000 (09:10 +1000)]
Make Behaviors work correctly with value types.

When a value type is referenced by sub-component a grouped
property is built. This code path did not handle behaviors being
declared on the entire value type. Add support for value interceptors
in this code path. Also issue an additional write to the value
type property before calling the interceptor on components
that are not being intercepted, so that the other
sub-components don't get stale values during write back.

Task-number: QTBUG-22625
Change-Id: I3365f422dfa1ab2e536e19575efcceceffb85e10
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoAdd tests for triple click text selection in TextEdit.
Andrew den Exter [Thu, 28 Jun 2012 02:23:01 +0000 (12:23 +1000)]
Add tests for triple click text selection in TextEdit.

Includes a minor behavioural fix for selectedText and getText so that
they return plain text strings for plain text content rather than the
raw text from QTextDocument which substitutes line break characters
with unicode line or paragraph separator character.  Rich text
documents still return the unicode characters.

Change-Id: I19a3a5bba2e4ebb0e6607e19c915a588a9a6c7db
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoDon't calculate selection rects unnecessarily.
Andrew den Exter [Thu, 28 Jun 2012 02:50:15 +0000 (12:50 +1000)]
Don't calculate selection rects unnecessarily.

QQuickTextEdit ignores the updateRequest QRect arguments, so don't
bother calculating them.

Change-Id: Icb9126ab799c6b216eb0c4b9e3ff3f6a4bf8f03c
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoRemove dead code from QQuickTextControl.
Andrew den Exter [Wed, 27 Jun 2012 06:37:17 +0000 (16:37 +1000)]
Remove dead code from QQuickTextControl.

Either unused functions, or code paths for signals that aren't
connected to anything.

Change-Id: Ide24f1263d05f93917a16a3c17cb06a619cd3421
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoSection headers ignore list delegate size changes when "colliding"
Martin Jones [Fri, 29 Jun 2012 01:57:02 +0000 (11:57 +1000)]
Section headers ignore list delegate size changes when "colliding"

Make section header updates part of the layout process.

Task-number: QTBUG-23298
Change-Id: I4586bc58bc195fcc47f6db79346727eb6e3d3845
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoAllow mouse interaction with 0 opacity items.
Andrew den Exter [Tue, 3 Jul 2012 02:29:57 +0000 (12:29 +1000)]
Allow mouse interaction with 0 opacity items.

Don't filter event delivery to items with 0 opacity, and update the
documentation the for opacity, visible and enabled properties and how
each affects event delivery.

Task-number: QTBUG-19193
Change-Id: Id48e4af763c9a7bbcc13b303342d303155dcadc9
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoRemove QSKIP() for polishOnCompleted() test
Bea Lam [Fri, 29 Jun 2012 06:17:43 +0000 (16:17 +1000)]
Remove QSKIP() for polishOnCompleted() test

The test passes reliably now on Mac.

Task-number: QTBUG-21590
Change-Id: I99b9d73cd8bbdd3f0b7df19e148bc02be6227289
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoSuppress QWindowSystemInterface inclusion warnings
Girish Ramakrishnan [Tue, 3 Jul 2012 05:16:13 +0000 (10:46 +0530)]
Suppress QWindowSystemInterface inclusion warnings

QWindowSystemInterface is now part of QPA API and should
be included using <qpa/*>.

Change-Id: I90c71e193d77765b4ec7b92fdbe611b387b2ae4a
Reviewed-by: Andrew Stanley-Jones <andrew.stanley-jones@nokia.com>
12 years agoAllow resetting a Rectangle gradient.
Martin Jones [Tue, 3 Jul 2012 05:04:19 +0000 (15:04 +1000)]
Allow resetting a Rectangle gradient.

If a gradient and a color are set on a rectangle, the gradient is used.
This means that if you wish to override the gradient on a component with
a color, you have to unset the gradient.

Also remove the unused QQuickGradient::gradient() method.

Task-number: QTBUG-23238
Change-Id: Ibd43cfe1bd4b867e4f6103f1d0dc0ed6176ab5c1
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFix some commented issues from the refactor merge.
Michael Brasser [Tue, 3 Jul 2012 00:51:17 +0000 (10:51 +1000)]
Fix some commented issues from the refactor merge.

Change-Id: Ied56bdfc93162b7668be7b07841948b8b5968a70
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdd nativeScanCode to KeyEvent.
Glenn Watson [Tue, 3 Jul 2012 01:04:02 +0000 (11:04 +1000)]
Add nativeScanCode to KeyEvent.

Allow the Qt nativeScanCode value to be passed through to the
QML event handler.

Task-number: QTBUG-18590
Change-Id: If598e0d65adc0e9bc29cca773a0bda2c8037b661
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdd tests for QQuickListCompositor debug output.
Andrew den Exter [Tue, 3 Jul 2012 00:03:44 +0000 (10:03 +1000)]
Add tests for QQuickListCompositor debug output.

Change-Id: I7abb00a28ad4939f95ca743cb35f6947c2ab1010
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
12 years agoRemove outdated refactor comments.
Andrew den Exter [Tue, 3 Jul 2012 00:16:08 +0000 (10:16 +1000)]
Remove outdated refactor comments.

It's not necessary to check whether the canvas has focus when gaining
active focus, as the focus of the root item follows the window focus
so an item should never gain active focus if the window doesn't have
focus.

Change-Id: I8992f673fb64467869d5fb9d23d011f19219feed
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoRemove unused private API.
Andrew den Exter [Mon, 2 Jul 2012 03:22:34 +0000 (13:22 +1000)]
Remove unused private API.

These functions may serve a future purpose but at the moment are unused
and untested.

Change-Id: If7c661f10859cc23202f90eb3c5304bf1a8dc217
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoandroid: don't unconditionally use execinfo.h
Robin Burchell [Mon, 2 Jul 2012 09:19:56 +0000 (11:19 +0200)]
android: don't unconditionally use execinfo.h

android (a superset or subset, depending on your POV) of Linux doesn't seem to
have execinfo.h, so disable it there.

also simplify the conditional a little so we don't have to alter this all over
the place if the platform support changes in the future.

Change-Id: I937b04f363dfff2b10e1696f11e67d4ba55b3b06
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoFix high CPU load for Qml TextEdit on Mac
Nils Jeisecke [Mon, 2 Jul 2012 13:38:24 +0000 (15:38 +0200)]
Fix high CPU load for Qml TextEdit on Mac

This removes a Mac workaround which causes an endless calling loop
(updatePaintNode will call markContentsDirty will call updatePaintNode) for
every TextEdit element. The only reason that
this doesn't block the application is that the signal goes through the
GUI thread's event loop.

Task-number: QTBUG-26361
Change-Id: Ia89cc123959bbfdcbfc5b0707901ac91dec47c40
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
12 years agoFix crash in QQmlXmlHttpRequest
Chris Adams [Mon, 23 Apr 2012 06:37:05 +0000 (16:37 +1000)]
Fix crash in QQmlXmlHttpRequest

If an onreadystatechange handler of a QQmlXmlHttpRequest uses code
which requires the engine->callingContext() to be valid, a crash
could previously occur (since the callingContext() would be null
if the handler was called due to a network request finishing.

This commit saves the calling context on send, so that on dispatch
we can create an activation scope from that context and use it.
Note that even in this case, if the original context had previously
been deleted (e.g., by a loader deleting the item context on source
change) the saved context could be invalid by the time the dispatch
function was invoked.  In that case, we simply do nothing as the
function call cannot succeed (invalid context).

Change-Id: Iba357829a69433c11cc279e6cc9fdc0bedaa31fb
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoUpdate glossary of terms
Bea Lam [Mon, 2 Jul 2012 01:25:44 +0000 (11:25 +1000)]
Update glossary of terms

Change-Id: Icf0a41bbcd5654a112b7979e00d7a708548808ba
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoUse QQmlDataTest to resolve qqqmlanguage test data paths.
Andrew den Exter [Thu, 17 May 2012 05:18:19 +0000 (15:18 +1000)]
Use QQmlDataTest to resolve qqqmlanguage test data paths.

Fix failures in shadow builds.

Change-Id: I008b76cfc0934e87edf07e79aec32bdeedf7d015
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
12 years agoRemove QQuickImageBase's explicitSourceSize.
Robin Burchell [Sat, 23 Jun 2012 07:15:10 +0000 (09:15 +0200)]
Remove QQuickImageBase's explicitSourceSize.

The only case where this really did anything was in resetSourceSize() to avoid
resetting if it had not been set already, but this logic is already in
setSourceSize too, so it's really not useful.

Done-with: John Brooks <john.brooks@dereferenced.net>
Change-Id: Idb86686ea5ab711ceb2390e3703e0e04f7d537bb
Reviewed-by: John Brooks <john.brooks@dereferenced.net>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agosection.property cannot deal with nested properties
Martin Jones [Mon, 2 Jul 2012 01:52:08 +0000 (11:52 +1000)]
section.property cannot deal with nested properties

Handle nested property names in section.property.

Task-number: QTBUG-24569
Change-Id: I0ea6003313108b8232bcd3a3015a4dbbd0753cec
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoUse the convential form for the selectedText notify signal name.
Andrew den Exter [Fri, 29 Jun 2012 07:20:16 +0000 (17:20 +1000)]
Use the convential form for the selectedText notify signal name.

Rename selectionChanged to selectedTextChanged to address an apparent
difference to API between TextInput and TextEdit.

Task-number: QTBUG-19732
Change-Id: Ibc589c8b43567cb8d2f8c13f7366e2859c7f09d7
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoDocument various changes to types and modules in QtQuick2
Bea Lam [Thu, 28 Jun 2012 07:05:43 +0000 (17:05 +1000)]
Document various changes to types and modules in QtQuick2

Document various properties and modules that have been added or changed
in QtQuick2.

Change-Id: I7e0aca10ee0476fbabe1ae2c88a83aba19999969
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoanchors.mirrored should not exist in QtQuick 2
Martin Jones [Fri, 29 Jun 2012 03:08:41 +0000 (13:08 +1000)]
anchors.mirrored should not exist in QtQuick 2

anchors.mirrored was removed from QtQuick 1.1 before release, however
QtQuick 2 was branched before it was removed, so it currently exists in
QtQuick 2.

Task-number: QTBUG-26369
Change-Id: Iab85f66f6c5f0ebadc5962cc6962cec15203d55d
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoWork around test failure for pixmap cache.
Glenn Watson [Thu, 28 Jun 2012 01:11:05 +0000 (11:11 +1000)]
Work around test failure for pixmap cache.

A deadlock condition can occur in the qtbase network management
code. Added a work around for the bug, and marked the test as
significant for CI on Ubuntu 10.04 LTS.

Task-number: QTBUG-25307
Change-Id: I6c11645d29dfd34b564f0a811c6f3470b8f31312
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoAdjust MouseArea autotest to check mouse events with transformations
Adriano Rezende [Sun, 26 Feb 2012 16:27:34 +0000 (17:27 +0100)]
Adjust MouseArea autotest to check mouse events with transformations

Tests mouse events with graphical transformations applied to the element.

Change-Id: I4b69e35cde4125aa047fa18357b22b898da92c20
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
12 years agoRemove QQuickItemPrivate::InitializationStatus.
Andrew den Exter [Fri, 29 Jun 2012 05:40:18 +0000 (15:40 +1000)]
Remove QQuickItemPrivate::InitializationStatus.

Unused following changes to focus handling of unparented items.

Change-Id: I18b8c1a233a62050d3e43786cc093b039697c922
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoFix memory leak when cancelling incubation of view items.
Andrew den Exter [Fri, 29 Jun 2012 01:49:33 +0000 (11:49 +1000)]
Fix memory leak when cancelling incubation of view items.

Don't cancel incubation of referenced object, but if incubation is
cancelled remove the scriptRef held by the incubator so the data object
can be released, not just when incubation has inititialized but not
finalized an object.

Change-Id: If2d6a4c4409dbd771d7131782023aa5e2d08eeed
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoMSVC: Fix warnings about struct/class mismatch.
Friedemann Kleint [Fri, 29 Jun 2012 08:01:21 +0000 (10:01 +0200)]
MSVC: Fix warnings about struct/class mismatch.

Change-Id: I7cc5b01279069229711dbdf0b28e935ab3391c08
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoremove stale references to QTDIR_build
Oswald Buddenhagen [Fri, 29 Jun 2012 12:40:24 +0000 (14:40 +0200)]
remove stale references to QTDIR_build

after the buildsystem changes, qtbase's .qmake.cache is not longer
included by other modules, thus the QTDIR_build condition will now never
trigger, causing various breakages.
and as nowadays modules can be build as part of qt or standalone without
any changes, the conditon makes no sense to start with.

Change-Id: I4a2ed6153577b6d064ab0dc407ce99f31b1263ac
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoImprove documentation for module APIs
Chris Adams [Wed, 27 Jun 2012 07:28:32 +0000 (17:28 +1000)]
Improve documentation for module APIs

Previously, it was not made clear to plugin developers why they might
wish to implement a module API. This commit adds documentation which
describes how module APIs can be useful, in the same section as the
other qml type registration explanatory documentation.

Task-number: QTBUG-25731
Change-Id: I2350ce8e5ae90598a65295fb2afb7dbd23eb7da6
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoAdd porting guide for QML apps
Bea Lam [Wed, 27 Jun 2012 06:49:20 +0000 (16:49 +1000)]
Add porting guide for QML apps

Change-Id: Ie633b5c7457a6223b49dca35b07cf1d5ad723fc7
Reviewed-by: Martin Jones
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUpdate particles examples en masse
Alan Alpert [Mon, 18 Jun 2012 04:13:31 +0000 (14:13 +1000)]
Update particles examples en masse

Change-Id: I882f59c687d790bc55cf59abf6f0ea80b65b50d9
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoRename speed -> velocity in the particle system
Alan Alpert [Mon, 25 Jun 2012 02:01:46 +0000 (12:01 +1000)]
Rename speed -> velocity in the particle system

Matches the convention set in the QtQuick module, for example by
ListView and Flickable.

Change-Id: I8df57ed1ced8128723d790c30c00cc1b2062787d
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoRemove dead code.
Michael Brasser [Thu, 28 Jun 2012 05:20:13 +0000 (15:20 +1000)]
Remove dead code.

Change-Id: I2e206d746cc48ff7bab29b2135d03b70f85e39d6
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoPropagate synthesized mouse events in parallel with touch.
Shawn Rutledge [Tue, 26 Jun 2012 16:00:59 +0000 (18:00 +0200)]
Propagate synthesized mouse events in parallel with touch.

The old way of event propagation inside QQuickCanvas was to send the
touch event through all elements, and if it was accepted along the
way, stop. Otherwise generate a mouse event and propagate it through
the items in the same way.

With this patch the behavior is changed instead to do the propagation
in parallel.  The idea is to first send a touch, then a mouse event to
each QML item (in paint order) that can potentially handle the events.
When items filter their child elements, the same logic applies.

Other changes/clarifications:
- mouse events no longer get synthesized for more than one touch point
- TouchPoints can be distributed to multiple Items
- if an item accepts a touch point, it always gets updates, even if
  the point is stationary
- events containing only stationary TouchPoints are discarded
- PinchArea must accept any initial single TouchPoint in order to
  receive subsequent updates, even though it's not pinching yet.
  This means if PA is on top, items underneath don't get touches.

New unit tests showing this behavior were added.

This patch was written by Frederik Gladhorn,
Laszlo Agocs and Shawn Rutledge.

Due to the complexity of the logic some refactoring was done.

QQuickMouseEventEx has been removed because it inherently relied on
using the QEvent d pointer.

Change-Id: If19ef687d7602e83cc11b18d2fecfbbdb4e44f5c
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
12 years agoFix exports in QtQuickParticles.
Friedemann Kleint [Thu, 28 Jun 2012 13:00:55 +0000 (15:00 +0200)]
Fix exports in QtQuickParticles.

Undo breakage introduced by
27416448a1c3259ecad80172ba35ab9aa504a78d.

Change-Id: Ia01a97688ecb91137a2649948af7479bd8323936
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoFixes for QML Basic Types docs
Bea Lam [Thu, 28 Jun 2012 01:42:41 +0000 (11:42 +1000)]
Fixes for QML Basic Types docs

- Standardize the \brief and introductory lines for each type
- Explain that some C++ types match to basic types, e.g. QFont -> font
- Explain that URL values don't match against their input string values
- Fix list type docs and don't encourage its use for custom properties
  (use var instead)
- Remove action since QAction isn't registered as a QML type anymore
- Document that color type has r,g,b,a properties
- Do some other cleaning up

Change-Id: Ie8a2886b938166938618c3a0bf47363f443ee401
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAdd basic documentation for QML translation functions.
Michael Brasser [Thu, 28 Jun 2012 01:27:23 +0000 (11:27 +1000)]
Add basic documentation for QML translation functions.

Change-Id: I50932ffd956061dd172616c4de863eb1a322394d
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoUse resolved font name for key in distance field cache.
Andrew den Exter [Mon, 25 Jun 2012 05:20:53 +0000 (15:20 +1000)]
Use resolved font name for key in distance field cache.

On windows at least multiple QRawFonts can share a family name but
have different font engines.  Prefer the faceId information when
constructing a key for the distance field cache to avoid a conflict.

Task-number: QTBUG-26201
Change-Id: I9111f22045eb35e6535039117ec4184075e778a4
Reviewed-by: Yoann Lopes <yoann.lopes@nokia.com>
12 years agoPathView element with 1 item moves in wrong direction when dragged right
Martin Jones [Wed, 27 Jun 2012 05:29:54 +0000 (15:29 +1000)]
PathView element with 1 item moves in wrong direction when dragged right

The shortest direction calculation used integer math to determine
which direction to move.  For an odd modelCount, the wrong direction
could be chosen.  For a modelCount of 1 it was particularly obvious.

Task-number: QTBUG-21337
Change-Id: I5e75c74153a5b4c62d1536226cd0703dcae04178
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoMerge "Merge branch 'buildsystem'" into refs/staging/master
Oswald Buddenhagen [Wed, 27 Jun 2012 06:26:26 +0000 (08:26 +0200)]
Merge "Merge branch 'buildsystem'" into refs/staging/master

12 years agoChanging PathView offset doesn't set currentIndex appropriately
Martin Jones [Wed, 27 Jun 2012 04:05:38 +0000 (14:05 +1000)]
Changing PathView offset doesn't set currentIndex appropriately

If the highlightRangeMode is StrictlyEnforceRange then the
currentIndex should always be updated when the path offset changes.

Task-number: QTBUG-19835
Change-Id: I2371e5abd430e770bbb8f9f9d5f4e1d17e0d8ff5
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoQQuickView doc improvements.
Martin Jones [Wed, 27 Jun 2012 01:12:20 +0000 (11:12 +1000)]
QQuickView doc improvements.

Task-number: QTBUG-23193
Change-Id: I8ae081256dabe838e88d1d11713d99ed48b5a0d5
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoDocument the concept of creation context for QML Components.
Michael Brasser [Tue, 26 Jun 2012 03:45:35 +0000 (13:45 +1000)]
Document the concept of creation context for QML Components.

Task-number: QTBUG-18011
Change-Id: I78d13df70a20fd9286a20fad4cc09f21591d3f9a
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoReorganise release notes for QtQml and QtQuick
Bea Lam [Tue, 26 Jun 2012 04:12:12 +0000 (14:12 +1000)]
Reorganise release notes for QtQml and QtQuick

This separates the "what's new" docs into different pages
under qml/ and quick/ and reorganizes the content structure.

Change-Id: I8a9c437caec75178c44b89b40507ea50f1b8faff
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoDocument the arg() function QML adds to the String prototype.
Martin Jones [Wed, 27 Jun 2012 02:51:43 +0000 (12:51 +1000)]
Document the arg() function QML adds to the String prototype.

Task-number: QTBUG-23577
Change-Id: I6279860bd3bf2d60bc394c012ea1c64bdd9be6fa
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoImplement QAbstractDeclarativeData::isSignalConnected hook
Kent Hansen [Fri, 15 Jun 2012 09:47:56 +0000 (11:47 +0200)]
Implement QAbstractDeclarativeData::isSignalConnected hook

QQml_isSignalConnected is no longer needed, since
QObjectPrivate::isSignalConnected will now call the declarativeData
hook.

Change-Id: I0685b0fa909d6c6c2d275bfa8d41100d9926a046
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoRemove qtbase pin.
Michael Brasser [Wed, 27 Jun 2012 03:05:14 +0000 (13:05 +1000)]
Remove qtbase pin.

Change-Id: Ieec75d0e4b3063000e44bfd109a92c5e79754240
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoConsistent use of syntax in V4 Register class
Matthew Vogt [Fri, 4 May 2012 01:55:00 +0000 (11:55 +1000)]
Consistent use of syntax in V4 Register class

Use the construction/destruction wrapper functions consistently.
These are required for template types because the syntax to invoke
the destructor directly confuses GCC.

Change-Id: I4a6c9239972a96f84a601b4f4a8aeebfd75044a9
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoAdd enum values from related types
Matthew Vogt [Fri, 22 Jun 2012 05:32:46 +0000 (15:32 +1000)]
Add enum values from related types

If moc marks a type as being related to another type (by using that
type's enums or properties), then include the enum values exported
by the related type in those exposed by the dependent type.

Task-number: QTBUG-22675
Change-Id: I78e72791a4f470200a9ba986a865ffac6c873725
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoFix performance issue with BorderImage element.
Glenn Watson [Tue, 26 Jun 2012 23:36:13 +0000 (09:36 +1000)]
Fix performance issue with BorderImage element.

When a small source image is used in repeat mode, a large number of
vertices and indices can be generated by the current algorithm.
Change the geometry hint to static data, so the renderer plugin will
store the data in a VBO in GPU memory.

Task-number: QTBUG-21728
Change-Id: I07b3172eef8569bec2f4acebfb7965625bb5e63b
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoactiveWindow is deprecated, use focusWindow.
Thiago Macieira [Sun, 24 Jun 2012 22:11:00 +0000 (00:11 +0200)]
activeWindow is deprecated, use focusWindow.

This complements commit 2753e9a795537df10c5a3b64ec9f6d8d81381837,
which had begun fixing this issue, but not completed the entire
module.

Change-Id: I2d167e467c5553cfa49e04410aec9a7d98c7fc6e
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoDo not depend on indirect inclusions: #include and forward-declare
Thiago Macieira [Tue, 26 Jun 2012 13:59:57 +0000 (15:59 +0200)]
Do not depend on indirect inclusions: #include and forward-declare

QObject is now no longer indirectly included by qpair.h, so let's make
sure it's forward-declared before use.

qpair.h also no longer includes qdatastream.h, so #include
"qdatastream.h" before using QDataStream.

Change-Id: I698b905cb55d9dce0637f534dc5efeffe5ff882e
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoSupport JS Date object in ListModel with static roles.
Glenn Watson [Tue, 26 Jun 2012 04:52:27 +0000 (14:52 +1000)]
Support JS Date object in ListModel with static roles.

ListModel uses static roles by default for performance reasons. Add
JS Date object to list of supported types in this mode, via implicit
conversion to QDateTime.

Task-number: QTBUG-24456
Change-Id: Ifaa1a8d16290e87b61239ed351a949d66a02990c
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoPin the qtbase SHA1
Kent Hansen [Tue, 26 Jun 2012 12:13:09 +0000 (14:13 +0200)]
Pin the qtbase SHA1

Needed in order to get through
https://codereview.qt-project.org/#change,29193 in qtbase.
https://codereview.qt-project.org/#change,29194 adapts qtdeclarative
to the change.

Change-Id: Ibc5adbaf40a94e23cffb29177fff137e79efa7da
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMerge branch 'buildsystem'
Oswald Buddenhagen [Tue, 26 Jun 2012 15:59:46 +0000 (17:59 +0200)]
Merge branch 'buildsystem'

Change-Id: I230e776290761be7c811c3aec4d915367012fc99

12 years agoinitializeGLFunctions is deprecated, replace it
Thiago Macieira [Tue, 26 Jun 2012 13:05:19 +0000 (15:05 +0200)]
initializeGLFunctions is deprecated, replace it

Change-Id: I102bf78522a0d5b14dc8ce2c1d189f10634d7905
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agobuild system cleanups
Oswald Buddenhagen [Thu, 12 Apr 2012 10:09:53 +0000 (12:09 +0200)]
build system cleanups

- load(qt_module) => load(qt_build_config)
- remove:
  - CONFIG+=module (obsolete)
  - setup of PKGCONFIG* variables (automated now)
  - code relating to module version headers (automated now)
  - %mastercontent assignment (automated now)
  - QT_BUILD_*_LIB defines (automated now)
  - pointless QPRO_PWD assignments
  - pointless and commented out include and depend paths
  - qmake -project boilerplate

Change-Id: Ib2d80a375e88bae1b50a22a274374b7e2cc2a86c
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agouse auto-defined QT_BUILD_*_LIB variables
Oswald Buddenhagen [Wed, 11 Apr 2012 19:53:15 +0000 (21:53 +0200)]
use auto-defined QT_BUILD_*_LIB variables

Change-Id: Iefe0b0982ee482bc47b4f66e514a7d0900674e42
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoauto-generate module pris
Oswald Buddenhagen [Tue, 3 Apr 2012 17:31:05 +0000 (19:31 +0200)]
auto-generate module pris

Change-Id: I90090bcf60ecc2c3fb31a38129edeae8ff0f1c55
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>