profile/ivi/qtdeclarative.git
12 years agoImplement proper sprite sheet functionality
Alan Alpert [Wed, 18 Jan 2012 01:15:56 +0000 (11:15 +1000)]
Implement proper sprite sheet functionality

Uses frameX/frameY from the new Sprite API. You can now specify your
sprites as a single sprite sheet and just specify the offset for
individual animations.

Change-Id: I3a33d8329e6b9d65e5578669388e3115de992803
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUpdate Sprite API
Alan Alpert [Wed, 18 Jan 2012 00:32:33 +0000 (10:32 +1000)]
Update Sprite API

Added the following properties
frameSync (replaces duration: -1)
frameRate
frameRateVariation
frameDuration
frameDurationVariation
frameX (not yet implemented)
frameY (not yet implemented)
reverse (not yet implemented)

Started the process of duration meaning animation duration instead of
frameDuration, but some grace period is being allowed for the transition

Change-Id: I0771a55d1708ba999483f76796f0323043b8a4db
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoElaborate on engine change
Alan Alpert [Mon, 23 Jan 2012 03:03:34 +0000 (13:03 +1000)]
Elaborate on engine change

Change-Id: I962f292878e4a1c8a8502f36e59803956230b90d
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoSvelte new form for dynamic scene example
Alan Alpert [Thu, 19 Jan 2012 05:59:59 +0000 (15:59 +1000)]
Svelte new form for dynamic scene example

Change-Id: Ic6a3616ea06c8085e6ccd7e3e13566f36aadcc0f
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix updating of QML Text element
Eskil Abrahamsen Blomfeldt [Wed, 25 Jan 2012 14:36:20 +0000 (15:36 +0100)]
Fix updating of QML Text element

The negation in the test was left over from an earlier API and
would break the test and most likely cause the Text element to
always bypass its update.

Change-Id: Idc5c94a76a0477a9433305f5aba43c4bb8d67806
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
12 years agoFix breakage due to meta-type id reordering in qtbase
Kent Hansen [Thu, 26 Jan 2012 14:04:51 +0000 (15:04 +0100)]
Fix breakage due to meta-type id reordering in qtbase

Commit aee1f6cc413f56bf4962324799ee3887c3dd037f in qtbase changed the
order/IDs of the "extended" meta-types, so that they are not
bigger than QVariant::UserType (127) anymore. This caused autotests
in qtdeclarative to assert/fail.

Ths commit adapts the logic in qtdeclarative accordingly, in
particular so that QVariant/QObjectStar aren't treated as value
types.

Change-Id: I3e6c0b2c9fb04bfd7f7fd94da2741f9536229b87
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoreimplement QWindow::focusObject() on QQuickCanvas
Pekka Vuorela [Fri, 20 Jan 2012 13:38:51 +0000 (15:38 +0200)]
reimplement QWindow::focusObject() on QQuickCanvas

Change-Id: I935a303d0baa9500ab47f749eb3b3f9a11a70946
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
12 years agoRemove the work-around for avoiding possible deadlock.
Xizhi Zhu (Steven) [Wed, 25 Jan 2012 13:26:23 +0000 (14:26 +0100)]
Remove the work-around for avoiding possible deadlock.

The possible deadlock has been fixed by:
http://codereview.qt-project.org/#change,13989

Change-Id: I1238052d4452ac37dedf8939fa27c8c8f6536f16
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
12 years agoRemove QT_LICENSED_MODULE macro
Lars Knoll [Wed, 25 Jan 2012 20:35:40 +0000 (21:35 +0100)]
Remove QT_LICENSED_MODULE macro

The macro was used to check for valid commercial
licenses, and recently removed from qglobal.h

Change-Id: I20a2e02d0986429120ba2c083f9b50b1a23062f5
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
12 years agoUse QMetaType::QVariant as the type for QVariant
Kent Hansen [Mon, 9 Jan 2012 13:09:32 +0000 (14:09 +0100)]
Use QMetaType::QVariant as the type for QVariant

Change http://codereview.qt-project.org/#change,12408 in qtbase
updates moc and friends to use QMetaType::QVariant instead of the
magic -1 / 0xffffffff / QVariant::LastType. This change adapts
qtdeclarative accordingly.

Change-Id: Ifb120485a4ee1501df6ad42d8ecd590824c85e9f
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
12 years agoAdd a locale property to IntValidator and DoubleValidator.
Andrew den Exter [Thu, 19 Jan 2012 05:53:20 +0000 (15:53 +1000)]
Add a locale property to IntValidator and DoubleValidator.

Allow the locale used for interpreting numbers to be changed from the
application default.

Task-number: QTBUG-23713
Change-Id: I28463485c86236fb2586eeb703ec4b051405c5a8
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix segfault now that the signature of roleNames is changed.
Stephen Kelly [Thu, 12 Jan 2012 19:12:03 +0000 (20:12 +0100)]
Fix segfault now that the signature of roleNames is changed.

(QtBase c3ad8c1c062a972b7fb75d8b51a1f80cb371d503)

Change-Id: I037787f895f71b746c38557f6fdbfbba5813cb25
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoFix docs: wrong types of Positioner attached properties
Leonardo Sobral Cunha [Fri, 20 Jan 2012 16:10:01 +0000 (17:10 +0100)]
Fix docs: wrong types of Positioner attached properties

Change-Id: I9ec9a070dfe5fdaebd11f4b92b9f44b034f24855
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agotst_qdeclarativedebugjs: Use new QJSValue::call() overload
Kent Hansen [Fri, 20 Jan 2012 07:00:50 +0000 (08:00 +0100)]
tst_qdeclarativedebugjs: Use new QJSValue::call() overload

The old QJSValue::call() function that takes a this-object as the
first argument is going away. The new overload simply takes a list
of arguments, so that the "dummy" this-object doesn't have to be
explicitly passed.

The new function callWithInstance() can be used to call a function
where you want to use a specific this-object.

Change-Id: I2d9bd79f8e5d00a2b89568171ccc5ffcee52686c
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agotst_qdeclarativedebugjs: Don't use QJSValue::isValid()
Kent Hansen [Fri, 20 Jan 2012 06:54:06 +0000 (07:54 +0100)]
tst_qdeclarativedebugjs: Don't use QJSValue::isValid()

The QJSValue::isValid() function is being removed.
!value.isUndefined() can be used to check if a value is defined.

Change-Id: I91e96bb7f76a5c31edaa409aaf4a1b1fffbc5317
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoAdd dummy test column for data driven test in qmltest
Charles Yin [Wed, 25 Jan 2012 03:48:46 +0000 (13:48 +1000)]
Add dummy test column for data driven test in qmltest

Normally, data driven test with QTest requires add columns before
adding new data rows, otherwise QTest might results into warning
or error. However, qmltest does the data driven test in its own way
so no columns info needed. So add a dummy column here to make QTest happy.

Task-number:QTBUG-23845
Change-Id: I1bfed663fa7b58d71e0cf898db6bd8ae61dae46b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
12 years agoMove sqldatabase into a module API plugin
Charles Yin [Tue, 24 Jan 2012 06:07:24 +0000 (16:07 +1000)]
Move sqldatabase into a module API plugin

Change-Id: Icd0bbfe16804abf1bbadbabddf3a30b5b18df30c
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAllow JS API in modules
Matthew Vogt [Wed, 18 Jan 2012 07:12:25 +0000 (17:12 +1000)]
Allow JS API in modules

Allow modules to export verisoned javascript code into specified
namespaces.

Task-number: QTBUG-20857
Change-Id: Ic968c697ba36cbc4535870ed5eed2fe7f01af11d
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoFixed crash in QDeclarativeGridView
Martin Jones [Mon, 23 Jan 2012 03:58:22 +0000 (13:58 +1000)]
Fixed crash in QDeclarativeGridView

Inserting new items used a different threshold than removing items
outside the view in refill.

Change-Id: I3712837820a1e1a6af280d33d29bd9e01e559691
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoUpdate for glyphMargin() migration in qtbase
Jiang Jiang [Mon, 23 Jan 2012 14:17:21 +0000 (15:17 +0100)]
Update for glyphMargin() migration in qtbase

glyphMargin() has been moved from QTextureGlyphCache to QFontEngine
in qtbase. Update private API usage for that.

Change-Id: Ia74c1387eaad4cb961ca0fe36905254edb351258
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoAdapted QQuickScreenAttached to orientation API changes in QScreen.
Samuel Rødal [Tue, 24 Jan 2012 09:04:45 +0000 (10:04 +0100)]
Adapted QQuickScreenAttached to orientation API changes in QScreen.

Change-Id: Ic2cb008b989780e297f03ddd5bdef466bb230c74
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoAdd missing include.
Stephen Kelly [Thu, 12 Jan 2012 17:33:43 +0000 (18:33 +0100)]
Add missing include.

Fixes build after requirement for Q_DECLARE_METATYPE(T*) to
be fully defined.

In QtBase (4b8ceb41aed352f10d36db5284453f425dbc5f3f)

Change-Id: I7ea42ec45797fafdde94ea5b58c6c71640710196
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoConsole API: Add console.exception
Aurindam Jana [Tue, 17 Jan 2012 13:38:06 +0000 (14:38 +0100)]
Console API: Add console.exception

console.exception writes a message to the console
and prints the JavaScript stack trace at the point
where it is called.

Change-Id: Idd2ff5982826accae0895db44c7ecf6130338cc7
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoConsole API: Add console.assert
Aurindam Jana [Tue, 17 Jan 2012 11:37:07 +0000 (12:37 +0100)]
Console API: Add console.assert

console.assert tests if an expression is true. If it is false,
it writes a message to the console and prints the JavaScript
stack trace at that point.

Change-Id: I5487552cb8a947e1947914166834e0bdedba3354
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoAdd support for shared glyph cache
Eskil Abrahamsen Blomfeldt [Thu, 24 Nov 2011 12:48:19 +0000 (13:48 +0100)]
Add support for shared glyph cache

Use a shared graphics cache to back the distance fields if
it is available.

Change-Id: Id5e6e7a28e38e349d787e66016b2d0faebc791d7
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
12 years agoDon't hang the worker script engine
Charles Yin [Wed, 18 Jan 2012 01:22:31 +0000 (11:22 +1000)]
Don't hang the worker script engine

1. Wake up the syncDone wait condition when delete the QDeclarativeListModelWorkerAgent,
otherwise the the whole worker script engine thread will hang at the sync() call
and can't exit gracefully.
2. Call QCoreApplication::processEvents() before delete the worker script engine to
cleanup all pending events in main thread to release wait conditions which
some worker scripts/agents are waiting for (QDeclarativeListModelWorkerAgent::sync() for example)

Change-Id: Ia3712318771633e68238b4d629ba870ff7ce45b9
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoRemove Symbian specific code.
Xizhi Zhu (Steven) [Mon, 23 Jan 2012 21:02:57 +0000 (22:02 +0100)]
Remove Symbian specific code.

Change-Id: Ifbcc92f1d44d46760ac7c5be24a997384fa22266
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
12 years agoRemove deprecated QtDeclarative (now QtQuick) headers
Kent Hansen [Fri, 20 Jan 2012 13:35:29 +0000 (14:35 +0100)]
Remove deprecated QtDeclarative (now QtQuick) headers

The QtQuick module has been around for a while now, and the need to
port to it was duly announced, coupled with a qmake warning (which
has now been removed).

Users who haven't ported their includes over will have to do so as
of this commit.

The fixqt4headers script in qtbase can be used to automatically
update the stale include statements in existing projects.

Change-Id: I9745723246f65ef726e51b8551d18b378085689d
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoTextInput documentation fix
Damian Jansen [Tue, 24 Jan 2012 06:53:22 +0000 (16:53 +1000)]
TextInput documentation fix

A few instances where TextEdit is indicated

Change-Id: I6d6a6c1f92d673978856befb9c2581b657cdb0f7
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoCall new pass/fail/skip count function in QTestLog.
Jason McDonald [Mon, 16 Jan 2012 05:36:00 +0000 (15:36 +1000)]
Call new pass/fail/skip count function in QTestLog.

The passCount, failCount and skipCount functions have moved from
QTestResult to QTestLog.

Change-Id: I0dbf8b43521f81dc29e20bb7547ff9f213487007
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoAvoid using QTestResult::ignoreMessage().
Jason McDonald [Fri, 13 Jan 2012 03:13:35 +0000 (13:13 +1000)]
Avoid using QTestResult::ignoreMessage().

QTestResult::ignoreMessage() is just a wrapper around
QTestLog::ignoreMessage(). Both are private API, so just call the latter
directly so that the former can be removed from the API.

Change-Id: Icf77e2bf656afc556205ddf0dda5bb48fdbdfbbf
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoDoc fixes
Alan Alpert [Mon, 23 Jan 2012 01:48:20 +0000 (11:48 +1000)]
Doc fixes

Change-Id: Ic7cf1596b060ed1a006907d26cf6720dc8bc134d
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoConsole API: Add console.count
Kai Koehne [Mon, 16 Jan 2012 14:40:27 +0000 (15:40 +0100)]
Console API: Add console.count

console.count can be handy to check how often code snippets
are executed.

Change-Id: I0eaf17ab893c76e7b8956122aa31e218745e92bf
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
12 years agoStabalize SpriteImage test.
Andrew den Exter [Tue, 24 Jan 2012 02:31:59 +0000 (12:31 +1000)]
Stabalize SpriteImage test.

Use a QTRY_COMPARE to allow a little more time for the required frames
to be rendered as needed.

Change-Id: If60aeaa3af42476c19582c5efc3f96f7db1b148d
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoAvoid compiler warnings
Pekka Vuorela [Fri, 20 Jan 2012 12:53:22 +0000 (14:53 +0200)]
Avoid compiler warnings

Change-Id: Iedc015e4be2fe80cef7a3e26c0a0747615891f7b
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
12 years agoQQuickCanvas::event should return true if the touch event was accepted
Andras Becsi [Mon, 23 Jan 2012 16:38:25 +0000 (17:38 +0100)]
QQuickCanvas::event should return true if the touch event was accepted

If QQuickCanvas::event delivers a touch event and it is accepted
the control ends up in QWindow::event which invalidates the event.
These touch events end up as if they were unhadled which causes Qt to
automatically synthesize mouse events even for accepted touch events.

Add a unit test for testing this behavior.

Change-Id: I83d4aeafee1ea7ec5d219e4b45aae699188717c3
Reviewed-by: Zeno Albisser <zeno.albisser@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoDoc fix for QML Global Object
Yann Bodson [Tue, 24 Jan 2012 03:14:56 +0000 (13:14 +1000)]
Doc fix for QML Global Object

Change-Id: I2b55a2aeaee1012123e671ad4d854f25539231e1
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoFixed compile.
Rohan McGovern [Tue, 24 Jan 2012 00:30:57 +0000 (10:30 +1000)]
Fixed compile.

QEventLoop::DeferredDeletion was deprecated long ago, and finally has
been removed.  Replace it with
QCoreApplication::sendPostedEvents(0, QEvent::DeferredDelete)

Change-Id: Ic03f26a57efeb35aefab67a913f56001303aa3e4
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoAdd some internal docs for the particle system and sprite engine
Alan Alpert [Tue, 17 Jan 2012 10:52:35 +0000 (20:52 +1000)]
Add some internal docs for the particle system and sprite engine

They're both large internal structures with extensive logic. Should have
at least a basic attempt at documentation (beyond inline comments).

Change-Id: I7d48ebf821fa759c11fa35889dbff8971644d23e
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoPer-frame Sprites patch three
Alan Alpert [Tue, 17 Jan 2012 10:02:30 +0000 (20:02 +1000)]
Per-frame Sprites patch three

interpolation bools work with the new sprite rendering approach. Giant
sprite images that get split into multiple rows now work with the new
sprite rendering approach (or even at all).

Change-Id: I7f3e09684622f523564802c7634361b6fe363676
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoRemove unecessary asserts
Alan Alpert [Mon, 16 Jan 2012 09:01:36 +0000 (19:01 +1000)]
Remove unecessary asserts

They would also trigger when the user gives invalid input, which is not
an assert worthy circumstance.

Change-Id: Ifa5697d411793a55b6895945e751a73841b1ba3f
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoPer-frame Sprites patch two
Alan Alpert [Mon, 16 Jan 2012 05:34:52 +0000 (15:34 +1000)]
Per-frame Sprites patch two

Implements CPU sprite advancement in SpriteImage, and covers the manual
sprite advancement codepath in an autotest.

Task-number: QTBUG-22236
Change-Id: I52a8ca3f923e88232238f9e158863b1ba7c0441b
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoPer-frame Sprites patch one
Alan Alpert [Fri, 13 Jan 2012 03:54:29 +0000 (13:54 +1000)]
Per-frame Sprites patch one

To allow for sprites to be advanced by the rendering framerate, two
minor redesigns were needed.

A) Sprite texture location is now calculated on the CPU and passed to
the GPU per frame.

B) Stochastic State engine now supports states that do not advance on a
timer, and states can be advanced manually.

This patch implements B and A for ImageParticle. A for SpriteImage will
be done in a separate patch.

Task-number: QTBUG-22236
Change-Id: If1c54a6a03fa48b95bb1e672283292859656457b
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoEncode user input before insertion into URLs
Matthew Vogt [Thu, 19 Jan 2012 06:39:53 +0000 (16:39 +1000)]
Encode user input before insertion into URLs

Encode user input strings used to formulate URLs, to ensure they do not
cause the structure of the URL to be subverted.

Task-number: QTBUG-19925
Change-Id: I6173f4df67a4bc1676ac32be6072763fc16f9720
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUpdate obsolete contact address.
Jason McDonald [Fri, 20 Jan 2012 04:04:27 +0000 (14:04 +1000)]
Update obsolete contact address.

Replace Nokia contact email address with Qt Project website.

Change-Id: I6a730abc0c396fb545a48b2d6938abedac2e3f1c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoAvoid anchor/positioning loops
Alan Alpert [Fri, 20 Jan 2012 04:35:27 +0000 (14:35 +1000)]
Avoid anchor/positioning loops

Task-number: QTBUG-23740

Change-Id: I84922ac2dc6e499fc22b923298ca31eda382c622
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoAdd a simple SpriteImage example
Alan Alpert [Mon, 16 Jan 2012 08:50:16 +0000 (18:50 +1000)]
Add a simple SpriteImage example

Also shows the full framerate mode.

Task-number: QTBUG-22236
Change-Id: I42790029c4b799f916dac1a183a5cef1724448c5
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoDon't use deprecated functions in QJS benchmarks
Kent Hansen [Fri, 20 Jan 2012 07:35:06 +0000 (08:35 +0100)]
Don't use deprecated functions in QJS benchmarks

Remove benchmarks for functions that are going away.

Task-number: QTBUG-23604
Change-Id: Ia65c7981652011f89f2131ff14f63aae410013cf
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoMark deprecated functions in QJSEngine and QJSValue
Kent Hansen [Mon, 16 Jan 2012 11:47:58 +0000 (12:47 +0100)]
Mark deprecated functions in QJSEngine and QJSValue

This functionality will be removed or renamed in the final Qt 5 API.

From this commit and with deprecated warnings enabled
(DEFINES += QT_DEPRECATED_WARNINGS), it's easy to see how existing
users of this API (e.g. qtjsondb) are affected.

Task-number: QTBUG-23604
Change-Id: I242c43377bb34ddcca84b6ed5b7ef9fbf2017a83
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoAdd QJSValue::callAsConstructor() function
Kent Hansen [Wed, 18 Jan 2012 13:15:59 +0000 (14:15 +0100)]
Add QJSValue::callAsConstructor() function

The old name, construct(), was bad. This name is more descriptive
and consistent with the other callXXX() functions.

Task-number: QTBUG-23604
Change-Id: Ie205b0c52721782101e665f7dfedcac9051a00d0
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoAdd QJSValue::callWithInstance() function
Kent Hansen [Wed, 18 Jan 2012 13:01:39 +0000 (14:01 +0100)]
Add QJSValue::callWithInstance() function

With the deprecated call() overload, it was confusing what the first
argument was (the this-object or an actual argument passed to the
function). Introduce a dedicated function for the
"explicit this-object" case. This makes code more readable, and
eliminates the need to pass a "dummy" this-object to call() in the
quite common case where you don't care about the this-object.

Task-number: QTBUG-23604
Change-Id: I18f8be6592a848436351516bea266fc7e9195777
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoAdd QJSValue::call() overload
Kent Hansen [Fri, 20 Jan 2012 07:00:27 +0000 (08:00 +0100)]
Add QJSValue::call() overload

This overload takes only an argument list, not a this-object, since
that is a very common way of calling stand-alone ("non-member")
functions. Now there is no longer a need to pass a dummy value for
the this-object.

Task-number: QTBUG-23604
Change-Id: Iae952d91fce5bcaa62a05b9978c15f32802da90a
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoAdd QJSValue::isCallable() function
Kent Hansen [Wed, 18 Jan 2012 12:23:16 +0000 (13:23 +0100)]
Add QJSValue::isCallable() function

This replaces the isFunction() function. isFunction() will be
removed. It's possible that objects are callable even if they aren't
Function instances. Also, "isCallable" is consistent with call().

Task-number: QTBUG-23604
Change-Id: I42e0ab2ad9dc84e7793199254bbd89d5c9466e6a
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoAdd QJSValue::toInt() and toUInt()
Kent Hansen [Wed, 18 Jan 2012 12:12:00 +0000 (13:12 +0100)]
Add QJSValue::toInt() and toUInt()

These replace toInt32() and toUInt32(), which are obsolete and will
be removed.

Task-number: QTBUG-23604
Change-Id: I83c055dbbe399fa7242889cee8a177440a693d9a
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoAdd QJSValue::deleteProperty() function
Kent Hansen [Wed, 18 Jan 2012 09:00:02 +0000 (10:00 +0100)]
Add QJSValue::deleteProperty() function

This makes it possible to delete a property without relying on passing
a QJSValue of invalid type to setProperty() (the invalid type is going
to be removed).

Task-number: QTBUG-23604
Change-Id: I653b3349050ad1aac1cf6ccc8547c753abbb9f1d
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoAdd QJSValue::hasProperty() and hasOwnProperty() functions
Kent Hansen [Wed, 18 Jan 2012 08:50:31 +0000 (09:50 +0100)]
Add QJSValue::hasProperty() and hasOwnProperty() functions

These functions provide a way of querying whether a property exists,
without relying on the QJSValue invalid type (which will be removed).

Task-number: QTBUG-23604
Change-Id: I2efd53a1e54cc202ecc022d12730b2775384cf53
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoBuild fix.
Jędrzej Nowacki [Fri, 20 Jan 2012 20:23:45 +0000 (21:23 +0100)]
Build fix.

QBool was removed from QtBase in change I6642f43f
(Remove QBool and use bool instead)

Change-Id: Ia4c5d12fae8779d7e8c880755cd16e215f073a6d
Reviewed-by: David Faure <faure@kde.org>
12 years agoQtDeclarative Tests build fix
Anselmo L. S. Melo [Fri, 20 Jan 2012 21:00:16 +0000 (18:00 -0300)]
QtDeclarative Tests build fix

QBool was removed from QtBase in change I6642f43f: "Remove QBool and use bool instead".

Change-Id: Icc037d4201a007f9df0f7c79b19808dc174c218f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoDocument toys examples
Alan Alpert [Thu, 19 Jan 2012 06:03:13 +0000 (16:03 +1000)]
Document toys examples

Change-Id: I376c4169ffff19e06b55e578e57101a476500b04
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdhere to examples standards more consistently
Alan Alpert [Thu, 19 Jan 2012 05:14:06 +0000 (15:14 +1000)]
Adhere to examples standards more consistently

Example subfolders should be named 'content'

Change-Id: I23f5b0ef44108f54f9b1703f04faf02cafc78efb
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdded a few material flags
Gunnar Sletta [Fri, 20 Jan 2012 09:26:17 +0000 (10:26 +0100)]
Added a few material flags

Change-Id: Id324ebb82df985f1a7380761cc4923f60c7d1f20
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
12 years agoUse queryAccessibleInterface instead of new QAccessibleQuickItem
Jan-Arve Saether [Thu, 19 Jan 2012 11:01:55 +0000 (12:01 +0100)]
Use queryAccessibleInterface instead of new QAccessibleQuickItem

In some cases this could prevent us from actually returning the
expected QAccessibleQuickItemValueInterface.
This is also more future-proof in case we add more QAI subclasses.

Change-Id: Id66dc21418671a3045d93c0a44dc74aa0aff30af
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoDoc: Improve Qt.locale docs.
Martin Jones [Thu, 19 Jan 2012 23:24:56 +0000 (09:24 +1000)]
Doc: Improve Qt.locale docs.

Change-Id: I3ef5c4a0bedbaa346b001852bba8e9ff9347e9e0
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoRemove the use of QT_MODULE()
Gunnar Sletta [Mon, 9 Jan 2012 08:02:12 +0000 (09:02 +0100)]
Remove the use of QT_MODULE()

Change-Id: I1c07231b0bf412fe490a44b9a060bb2e2ef11154
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoUpdate TextInput.acceptableInput on component complete.
Andrew den Exter [Wed, 18 Jan 2012 04:43:43 +0000 (14:43 +1000)]
Update TextInput.acceptableInput on component complete.

QValidator doesn't notify when it's validation criteria changes so is
susceptible to order of evaluation issues.  Deferring the initial
validation will ensure validators with static criteria are correctly
applied.  Notification from QValidator on changes would solve this
for all cases: QTBUG-23694.

Task-number: QTBUG-21103
Change-Id: I920f36645fd18ce809db56b5daf73545f1d603dc
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdd quick module to .pro file
Alan Alpert [Fri, 20 Jan 2012 03:21:29 +0000 (13:21 +1000)]
Add quick module to .pro file

Change-Id: I1d07613f8588b48aa7fc9ebe0c09e78ba43a9e02
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoFix lockup in views due to endless polish loop.
Martin Jones [Wed, 18 Jan 2012 06:21:50 +0000 (16:21 +1000)]
Fix lockup in views due to endless polish loop.

It was possible to cause an endless polish loop in some rare cases.
Eliminate all calls to polish() within existing polish() code paths.

Cleanup delegate creation and cancelling in the cacheBuffer area.

Adjust first item position correctly when inserting/removing before
visibleItems list.

Change-Id: I508a2e6de8cb09d904466cbf5fb6b5dfd1e89c49
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoAssigning empty object to Q_PROPERTY(QVariantMap)
Matthew Vogt [Thu, 19 Jan 2012 05:54:24 +0000 (15:54 +1000)]
Assigning empty object to Q_PROPERTY(QVariantMap)

Correct the evaluation of an empty javascript object during assignment
to a QVariantMap property.

Task-number: QTBUG-23586
Change-Id: Ifa891a017690a36bd5837bc6b4dd0e47eb515a46
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoExtend the documentation on DoubleValidator.
Andrew den Exter [Wed, 18 Jan 2012 01:59:56 +0000 (11:59 +1000)]
Extend the documentation on DoubleValidator.

Elaborate on what is valid, intermediate, and invalid.

Task-number: QTBUG-22081
Change-Id: If0ef270eaee60b530fdf6275e36b2208d41c7639
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoAdd a baseUrl property to Text and TextEdit.
Andrew den Exter [Tue, 17 Jan 2012 00:42:26 +0000 (10:42 +1000)]
Add a baseUrl property to Text and TextEdit.

Specifies the base URL which embedded links in rich text are resolved
against.  By default this is the URL of the item.

Task-number: QTBUG-23655
Change-Id: Ib51b8503a18d9ac4e1801c77b77b3595d8f4912a
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoDon't load embedded images from the current working directory.
Andrew den Exter [Mon, 16 Jan 2012 06:40:13 +0000 (16:40 +1000)]
Don't load embedded images from the current working directory.

Override QTextImageHandler's image loading as it will attempt to resolve
relative paths and load the image itself if the document returns an
invalid image from loadResource, which we don't want as it bypasses the
pixmap cache and resolves against the application and current working
directory instead of the Text items context.

Change-Id: Ia1d3633036f96d902e1ac03dae5d5b203fba7ff1
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix range checking in AbstractItemModel examples
Matthew Vogt [Wed, 18 Jan 2012 23:51:18 +0000 (09:51 +1000)]
Fix range checking in AbstractItemModel examples

Fix range checking in AbstractItemModel examples

Task-number: QTBUG-23574
Change-Id: I6f2d4c18e1fb33ee369ebc75f501e524e8e63615
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoChange testlib skipAll function to failure.
Jason McDonald [Tue, 17 Jan 2012 06:12:02 +0000 (16:12 +1000)]
Change testlib skipAll function to failure.

Be more insistent that tests using the obsolete skipAll() function
should change to using skip() by treating calls to skipAll() as test
failures.  After a further grace period the skipAll() function will be
removed.

Change-Id: Ic2448af2f8176909afa151b6e8c29587dfd17f1f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoUse mediump in distance field shaders for the alpha threshold.
Yoann Lopes [Thu, 12 Jan 2012 15:13:49 +0000 (16:13 +0100)]
Use mediump in distance field shaders for the alpha threshold.

lowp or highp cause some problems depending on the hardware.

Change-Id: I2762c04548656de8fdb34711f52e5cf05d8c2ac5
Reviewed-by: Yoann Lopes <yoann.lopes@nokia.com>
12 years agoThe rendering signals must be direct connections.
Gunnar Sletta [Wed, 18 Jan 2012 10:13:21 +0000 (11:13 +0100)]
The rendering signals must be direct connections.

Change-Id: I6fd492096e21dfe1580d003cd9165a2d4c7f37dc
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoCompile since recent API changes
Gunnar Sletta [Wed, 18 Jan 2012 09:17:33 +0000 (10:17 +0100)]
Compile since recent API changes

Change-Id: Id8f8b238661a46cf071f671d5d40e5c683c8ccc9
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoMove accessibility test to QtQuick 2.
Frederik Gladhorn [Fri, 13 Jan 2012 10:47:48 +0000 (11:47 +0100)]
Move accessibility test to QtQuick 2.

The test now only depends on Quick 2 and no longer a mix of
widgets, Quick 1 and 2.

Change-Id: I3120e11dadb8bb7d7635e6baa1cb905d917353ea
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
12 years agoAllow QML URLs to contain pre-encoded octets
Matthew Vogt [Mon, 16 Jan 2012 01:05:23 +0000 (11:05 +1000)]
Allow QML URLs to contain pre-encoded octets

Use QUrl Tolerant parsing mode to permit user-supplied URLs to contain
pre-encoded octets which are not mangled by string conversion.

Task-number: QTBUG-22756
Change-Id: I4b160b04340b95221d1eb3336bda8c0b38d2e232
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoInsertions were calculating wrong insertion pos
Bea Lam [Fri, 13 Jan 2012 04:35:04 +0000 (14:35 +1000)]
Insertions were calculating wrong insertion pos

After removes, and after each insertion, the view must adjust the
visibleItems.first() position and call layoutVisibleItems() to ensure
that the correct insertion position is calculated for insertions that
follow.

When applyInsertionChange() in GridView and ListView calculates the
position for item insertion, it looks at the current positions of the
items in visibleItems, so these positions must be updated prior to
this calculation. Otherwise, insertions that follow a remove may not
calculate this position correctly and will neglect to add some items,
and multiple insertions may unnecessarily create items at positions that
are not actually visible.

resetFirstItemPosition() is changed to take a set position and it
replaces resetItemPosition() since it can do the same thing.

Task-number: QTBUG-23610 QTBUG-23609

Change-Id: I8839ee7d15853301435e80c0dc563f93fc3605cf
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoMade QQuickTextInput follow input direction changes
Pekka Vuorela [Mon, 9 Jan 2012 11:41:36 +0000 (13:41 +0200)]
Made QQuickTextInput follow input direction changes

Cursor of empty field should align based on input method
direction. Now input method allowed to change direction
on run time.

Also earlier cursor wasn't properly drawn on correct alignment
at all.

Change-Id: I4601f10e6b5dde09591bd484b05f001add6c1573
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
12 years agoQQuickTextEdit to follow input method direction changes
Pekka Vuorela [Mon, 9 Jan 2012 14:31:54 +0000 (16:31 +0200)]
QQuickTextEdit to follow input method direction changes

Change-Id: I458f85452a2ffe1c43438f9588cfc271461a42c6
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
12 years agoDebugger: Simplify protocol of QDebugMessageService
Kai Koehne [Mon, 16 Jan 2012 13:11:53 +0000 (14:11 +0100)]
Debugger: Simplify protocol of QDebugMessageService

Change-Id: I3f97a344b8d0e0d73a75e84310c1e8ed59573ee7
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
12 years agoFix crash when using namespaces for JS module APIs.
Glenn Watson [Thu, 12 Jan 2012 00:19:32 +0000 (10:19 +1000)]
Fix crash when using namespaces for JS module APIs.

Fix unitialized variable in constructor.

Change-Id: Ibc39d7512990ad293789280e26797be1ecd1ade1
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoDoc: fix QML Examples link
Martin Jones [Mon, 16 Jan 2012 01:22:34 +0000 (11:22 +1000)]
Doc: fix QML Examples link

Change-Id: Id4637a7953f05ee9eac712116f68218a0c8b9ff9
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoConnection was accidentally of the Queued variety
Alan Alpert [Thu, 12 Jan 2012 10:32:56 +0000 (20:32 +1000)]
Connection was accidentally of the Queued variety

This connection needs to be direct, because right after that signal is
emitted the next frame is drawn (before we return to the event loop at
least). The sprite updating needs to happen in time for the frame or the
sprites get confused.

Task-number: QTBUG-23407
Change-Id: Ie56465145461486456462154dfafe546fedaaaaa
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoUpdate Screen example
Alan Alpert [Mon, 16 Jan 2012 03:44:41 +0000 (13:44 +1000)]
Update Screen example

DPI API never made it into the final API, because there were more issues
than valid usecases.

Change-Id: Ie56465145461486456462154dfafe546fedaddee
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoUpdate copyright year in Nokia copyright headers.
Jason McDonald [Tue, 10 Jan 2012 05:19:47 +0000 (15:19 +1000)]
Update copyright year in Nokia copyright headers.

Update copyright headers from before 2011, and a couple of new ones that
were merged after the previous change to copyright headers.

Change-Id: Ia76e08e2734afa4ef3f1207dbcda5ff3bc81b366
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoMatch QRect change
Alan Alpert [Tue, 17 Jan 2012 04:27:31 +0000 (14:27 +1000)]
Match QRect change

3b973971fb1e483b9b3514358a415781c3c24ba8 changes the order of data
members on mac, the struct we're using to fake QRect needs to match.

Change-Id: Id2ecf1726e64514e12dd72980a0c0ad2b693c483
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
12 years agoAdded log and status properties to ShaderEffect.
Kim Motoyoshi Kalland [Wed, 11 Jan 2012 16:34:58 +0000 (17:34 +0100)]
Added log and status properties to ShaderEffect.

Task-number: QTBUG-23531

Change-Id: I136f6d9642ff9d4074fe8dae1f5714a05349107a
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoConsole API: Add console.info
Kai Koehne [Mon, 16 Jan 2012 12:44:34 +0000 (13:44 +0100)]
Console API: Add console.info

Add console.info for the sake of completeness. It's mapped to qDebug(),
just like console.log, console.debug, print.

Change-Id: Ife1cfbfe810d4e5e9175343778dff734a56f4a80
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
12 years agoConsole API: Autotest reshuffling
Kai Koehne [Mon, 16 Jan 2012 12:35:07 +0000 (13:35 +0100)]
Console API: Autotest reshuffling

Move the console tests from qdeclarativeqt to qdeclarativeconsole,
and the test for the QML_CONSOLE_EXTENDED property to
debugger/qdebugmessageservice.

Change-Id: I704bd0a4a28aa1b0eb51df67d32fd6865b114d41
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
12 years agoRemove all reimplementations of relationTo() returning Unrelated.
Jan-Arve Saether [Mon, 16 Jan 2012 12:56:29 +0000 (13:56 +0100)]
Remove all reimplementations of relationTo() returning Unrelated.

QAccessibleInterface::relationTo() already return
QAccessible::Unrelated by default. No need to duplicate that code.

Change-Id: Ie64e798a1935619af32ae41d7e14ae26bd9bf523
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
12 years agoFix preedit text visibility for TextEdit
Jiang Jiang [Fri, 13 Jan 2012 10:06:10 +0000 (11:06 +0100)]
Fix preedit text visibility for TextEdit

For an empty TextEdit with preedit text, we need to add the text
separately since the blockIterator will not go through that case.
Also fixed preedit text appended at the end of any commited text.

Move the code for adding text into SelectionEngine so that we can
reuse it for adding preedit text.

Task-number: QTBUG-22647
Change-Id: Id4fe04099b16949ff5de0747881c6dc96ef0673f
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoQDeclarativeExpression: storing column number in expression location
Christiaan Janssen [Wed, 11 Jan 2012 16:50:51 +0000 (17:50 +0100)]
QDeclarativeExpression: storing column number in expression location

Change-Id: I2d69738158abfc76f80b1cfc0e0ccb145fda2245
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
12 years agoAvoid creating unnecessary copies of TextEdit's text data.
Andrew den Exter [Wed, 11 Jan 2012 01:00:36 +0000 (11:00 +1000)]
Avoid creating unnecessary copies of TextEdit's text data.

Delay rebuilding the text data from QTextDocument until it is actually
requested rather than everytime the contents of the document change.

Change-Id: Ibfdc9e9e0372010f0731fb02a223c8b59a67f2c3
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoTest more of QQuickImageParticle
Alan Alpert [Mon, 16 Jan 2012 03:01:19 +0000 (13:01 +1000)]
Test more of QQuickImageParticle

Now the color variance properties are tested, as is the debug code.
Just running the debugging code is valid testing, as it contains
pointer derefernces that could cause runtime errors, and this codepath
is not always enabled at runtime.

Additionally, debug mode control has been consolidated in the
ParticleSystem. However, this was not necessary for this test addition.

Change-Id: Ie56465145461486456462154dfafe546fedabcba
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoWait for polish at the start of addOrRemoveBeforeVisible
Alan Alpert [Mon, 16 Jan 2012 08:30:58 +0000 (18:30 +1000)]
Wait for polish at the start of addOrRemoveBeforeVisible

Change-Id: I1cf13af7e9b854cee7754b31643438eab3085084
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agoHandle views with negative width/height
Martin Jones [Thu, 12 Jan 2012 05:31:00 +0000 (15:31 +1000)]
Handle views with negative width/height

A view with a negative d->size() would get stuck in an infinite
loop.  Also make sure item layout/visibility is updated when
the view size changes.

Change-Id: I1f16a714ecebe1c4b71902c460e27fb0f1c4406f
Reviewed-by: Bea Lam <bea.lam@nokia.com>
12 years agolower case QML components are accepted when used with 'as' import
Matthew Vogt [Fri, 13 Jan 2012 00:16:05 +0000 (10:16 +1000)]
lower case QML components are accepted when used with 'as' import

If an Object Binding is in a namespace, ensure that the Component name
begins with a capital letter.

Task-number:QTBUG-20786
Change-Id: Id4a0c0fdb0c9b9516bea597a4994bb7519339bc9
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
12 years agoFix build break in qmlviewer.
Xizhi Zhu (Steven) [Sat, 14 Jan 2012 06:57:04 +0000 (08:57 +0200)]
Fix build break in qmlviewer.

It's introduced by commit 14b929e9c448f2cc74fa047aaf8af283b81fbaf9 in QtBase.

Change-Id: Iacb5350b5f42a09b7419bf491ac9620a406422e6
Reviewed-by: Xizhi Zhu <xizhi.zhu@nokia.com>