platform/upstream/qtdeclarative.git
11 years agoComplete rewrite of threaded render loop.
Gunnar Sletta [Wed, 5 Dec 2012 14:27:47 +0000 (06:27 -0800)]
Complete rewrite of threaded render loop.

This change starts using the superior implementation of the scene graph
render loop which has been worked on in the scenegraph-playground
project for a while. It uses a far more straightforward locking/sync
paradigm compared to the existing one and is less deadlock and error
prone. It also enables the scene graph thread to run on its own when
the GUI thread is blocked, enabling threaded animations.

This changes also introduces a naming change inside Qt Quick from
"Window Manager" -> "Render Loop" as that fits better to what the
code does.

Change-Id: I1c2170ee04fcbef79660bd7dae6cace647cdb276
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoMerge branch 'stable' into dev
Gunnar Sletta [Thu, 17 Jan 2013 21:08:56 +0000 (22:08 +0100)]
Merge branch 'stable' into dev

Conflicts:
src/qml/doc/qtqml.qdocconf
src/quick/doc/qtquick.qdocconf

Change-Id: I087fa14720995a5e53c43567dc4a3c29eb9992a9

11 years agoMerge branch 'release' into stable
Gunnar Sletta [Thu, 17 Jan 2013 21:06:00 +0000 (22:06 +0100)]
Merge branch 'release' into stable

Change-Id: I88ecd5f396ecd9a9c910108d1cca832a3087f1d8

11 years agoEnable sub-pixel anti-aliasing for default builds on Windows
Eskil Abrahamsen Blomfeldt [Thu, 17 Jan 2013 13:10:02 +0000 (14:10 +0100)]
Enable sub-pixel anti-aliasing for default builds on Windows

While ANGLE builds only provide the OpenGL ES2 APIs, it's still
a desktop technology and we should default to using high quality
anti-aliasing.

Task-number: QTBUG-28782
Change-Id: Iefc764589e935899ead278cedef4c302694dd2bb
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoAvoid race condition in QQuickTests
Gunnar Sletta [Thu, 17 Jan 2013 11:41:53 +0000 (12:41 +0100)]
Avoid race condition in QQuickTests

The QQuickView::show() function may or may not be synchronous and
because the rendering happens on another thread, the frameSwapped
can be emitted before we enter the qWaitForSignal() event loop.
Fix this by waiting for the window to become exposed instead, which
implies that it has rendered at least one frame.

Change-Id: I1100a6fe981018395bf141d67f06adb94a354206
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoImprove the look and feel of our demo launcher
Jens Bache-Wiig [Tue, 15 Jan 2013 16:10:57 +0000 (17:10 +0100)]
Improve the look and feel of our demo launcher

The existing demo launcher looks rather ugly. This does some
visual tweaks to make it look better, including adding support
for proper text wrapping.

It was approved by our design lead Diana.

Change-Id: I660764575a411f598c53c9c42e290a807e20c0cf
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
11 years agoDo not force focus for non-focused windows.
Gunnar Sletta [Fri, 11 Jan 2013 11:35:01 +0000 (12:35 +0100)]
Do not force focus for non-focused windows.

If a QQuickWindow comes to screen but is not the focus window,
such as if it is a child window of another window, it should
not have focus by default.

Change-Id: If9015bbc179bb101178b3bc8de176a1c71c46023
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
11 years agoExporting required symbols for Qt Quick Designer
Thomas Hartmann [Wed, 16 Jan 2013 09:06:11 +0000 (10:06 +0100)]
Exporting required symbols for Qt Quick Designer

These classes are used by qml2puppet.

Qml2Puppet is an external process used by the Qt Quick Designer,
that builds the interface between the designer and Qt Quick/QML
internals.

Qml2Puppet is responsible for emulation and rendering.
The 2 in Qml2Puppet indicates that it is used for Qt Quick 2.0.

This would be nice to have in Qt 5.0.1 to allow testing based
on official packages. Also this helps early adaptors.

QQmlTimer is used to disable timers.

QQuickTextEdit and QQuickTextInput are used to disable the blinking
cursor.

QQuickBehavior is used to deal with behaviors.

QQuickPropertyChanges and QQuickStateGroup are
used to emulate states.

QQuickTransition is used to disable transitions.

Task-number: QTCREATORBUG-8572

Change-Id: I572707d93eda477df945976442efed32ef16df34
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoDisable blending of opaque Rectangle elements
Gunnar Sletta [Tue, 15 Jan 2013 14:39:10 +0000 (15:39 +0100)]
Disable blending of opaque Rectangle elements

Change-Id: If456248c10c24c3d2f2a383f29e72c74d2dee8bf
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
11 years agoGreatly improved Scene Graph Overview documentation
Gunnar Sletta [Mon, 7 Jan 2013 15:20:39 +0000 (16:20 +0100)]
Greatly improved Scene Graph Overview documentation

Change-Id: I86b6bb9007d268ec039614a1693ecd839901e6d9
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
11 years agoRemove workaround for particle shader on Blackberry
Fabian Bumberger [Wed, 16 Jan 2013 14:13:48 +0000 (15:13 +0100)]
Remove workaround for particle shader on Blackberry

Change-Id: Ibcf4b55323046fee4a18b4c5bf51c78ed8832a63
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoDisable the QQuickFlickable test in CI.
Gunnar Sletta [Wed, 16 Jan 2013 15:31:12 +0000 (16:31 +0100)]
Disable the QQuickFlickable test in CI.

Test failures in this test has been popping up randomly in several
different changes. It is poorly written with use of qWait()'s
and QCOMPARE instead of using the more robust QTRY_COMPARE and
QTRY_VERIFY.

Change-Id: Ib56d7b2554b22fa9af767be31f1f181983ed60c7
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
11 years agoMake numeric-literal parsing even more robust.
Erik Verbruggen [Tue, 15 Jan 2013 12:30:55 +0000 (13:30 +0100)]
Make numeric-literal parsing even more robust.

The numeric value could overflow a unsigned 64-bit integer, so instead
just buffer the string and have libc's strtod handle all the conversion.

Change-Id: I220e490ddc22363460b0df65a91b47336e747310
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
11 years agoBump Qt version to 5.1.0
Frederik Gladhorn [Fri, 11 Jan 2013 11:46:26 +0000 (12:46 +0100)]
Bump Qt version to 5.1.0

Change-Id: I9491f506aca249511c1eb3ad3baf44f4e4e65a9a
Reviewed-by: David Faure (KDE) <faure@kde.org>
11 years agoFixing a mistake in the GridView documentation
Fabian Bumberger [Mon, 14 Jan 2013 15:01:38 +0000 (16:01 +0100)]
Fixing a mistake in the GridView documentation

The item size of the GridView is solely determined by the cellHeight and cellWidth property.
I.e. the GridView will not resize the cells based on the root item size of the delegate.

Change-Id: I007e4b1719d78ebf126d166c89bfe6c64e2206f7
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoSilence compiler warnings in qaccessiblequickitem.h.
Friedemann Kleint [Fri, 11 Jan 2013 15:21:19 +0000 (16:21 +0100)]
Silence compiler warnings in  qaccessiblequickitem.h.

Introduced by c8ef32e2b6cded37a6854b94a281464c1b7a298b.

Change-Id: I654009b38f0169254c05398468d4fe4c2737dd5b
Reviewed-by: Alan Alpert <aalpert@rim.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
11 years agoFilter key press events through shortcut map.
Frederik Gladhorn [Mon, 14 Jan 2013 09:22:12 +0000 (10:22 +0100)]
Filter key press events through shortcut map.

This allows QQuickItems to use shortcuts.

Change-Id: I068109a954d92e4e7bd5e63d2b3523b66855c60a
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
11 years agoDoc: correcting typo "the the"
Nico Vertriest [Fri, 11 Jan 2013 11:40:19 +0000 (12:40 +0100)]
Doc: correcting typo "the the"

Task-number: QTBUG-28756

Spurious repetition of the definite article

Doc: corrected trailing space issue.

Change-Id: I95c1c5773dc4b25dd0a3625343a67975783435fd
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
11 years agoUpdate changes file for 5.0.1 release
Sergio Ahumada [Wed, 9 Jan 2013 20:51:42 +0000 (21:51 +0100)]
Update changes file for 5.0.1 release

Change-Id: I704cc948c37af639d9686c783a5341e2ab89903e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agodoc: Fix namespace version to 5.0.1 for qhp documentation
Sergio Ahumada [Sat, 12 Jan 2013 08:18:27 +0000 (09:18 +0100)]
doc: Fix namespace version to 5.0.1 for qhp documentation

Change-Id: Id101dc3a7ab5d2552531b7ea1819e0f2be725989
Reviewed-by: hjk <qthjk@ovi.com>
11 years agotest examples only in developer builds
Oswald Buddenhagen [Thu, 10 Jan 2013 11:11:33 +0000 (12:11 +0100)]
test examples only in developer builds

we don't want to actually build examples in production builds any more,
so the test is bound to fail.

Change-Id: I9adda2d147a05eb7acb3a864c81b8d0c0333c8bb
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoFix automatic semicolon insertion before ++/-- operators.
Erik Verbruggen [Thu, 10 Jan 2013 10:43:11 +0000 (11:43 +0100)]
Fix automatic semicolon insertion before ++/-- operators.

Also move the tilde token from isBinop to the lex method, because it is
not a binop, but should still be delimited.

Change-Id: I532260f4f3ebdde2d38128b41d11bce5a113d1f1
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoMake numeric-literal parsing more robust.
Erik Verbruggen [Wed, 9 Jan 2013 19:34:39 +0000 (20:34 +0100)]
Make numeric-literal parsing more robust.

For cases where large non-fp numeric literals might end up triggering
coversion or rounding errors when stored as doubles when lexing.

This is a corner case, but it does trigger a case or two in the ECMA5
test suite (test262).

Change-Id: Ie6d355e28379aba9a339c4e345b5d2a0c32d5fdd
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoMarking test qquickanimations insignificant on mac.
Erik Verbruggen [Fri, 11 Jan 2013 09:17:24 +0000 (10:17 +0100)]
Marking test qquickanimations insignificant on mac.

Task-number: QTBUG-29062

Change-Id: Ie4c1de6ceb0e220d7c4f545ffbb14eeb44d0cc03
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoUpdate copyright year in Digia's license headers
Sergio Ahumada [Wed, 2 Jan 2013 11:17:46 +0000 (12:17 +0100)]
Update copyright year in Digia's license headers

Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76
Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
11 years agotst_bic: Add test data for linux-gcc-ia32
Sergio Ahumada [Wed, 9 Jan 2013 12:12:43 +0000 (04:12 -0800)]
tst_bic: Add test data for linux-gcc-ia32

Task-number: QTQAINFRA-321
Change-Id: I40505af8c579710c3252c9680287eda86bfbf165
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
11 years agomake use of qtHaveModule()
Oswald Buddenhagen [Fri, 21 Dec 2012 09:55:27 +0000 (10:55 +0100)]
make use of qtHaveModule()

Change-Id: I23f11c944fafb5863a960dcc83bc1e57e189f662
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoFix PinchArea stealing events while disabled
Oleg Shparber [Wed, 9 Jan 2013 21:31:05 +0000 (23:31 +0200)]
Fix PinchArea stealing events while disabled

Change-Id: I8614431f11fc9ef1ecdbdeb1d37e4f4b1bb353a7
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoDoc: Updated docs for examples and etc
Xingtao Zhang [Tue, 8 Jan 2013 23:34:22 +0000 (23:34 +0000)]
Doc: Updated docs for examples and etc

- Corrected several \snippet paths and \example paths.
- Added missing example images.
- Marked several commands as code.
- Updated the exampledirs variable for qtqml.

Done-with: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Task-number: QTBUG-28898
Change-Id: I24aac17821f54de4bd5129c45b5bf96dc0f114b2
Reviewed-by: Liang Qi <liang.qi@digia.com>
11 years agoFix bug where a tap over stacked mouse areas generates a double click
Daniel d'Andrada [Wed, 19 Dec 2012 17:31:16 +0000 (15:31 -0200)]
Fix bug where a tap over stacked mouse areas generates a double click

You have two mouse areas, one on top of the other.
1 - You tap the top one.
2 - That top mouse area receives a mouse press event but doesn't accept it
Expected outcome:
 3 - the bottom mouse area gets clicked (besides press and release mouse events)
Bogus outcome:
 3 - the bottom mouse area gets double clicked.

Change-Id: I10cac52b5e8edea781fe88e70c4092eb38bcf763
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
11 years agoTest case for tapping on stacked mouse areas
Daniel d'Andrada [Wed, 19 Dec 2012 17:29:49 +0000 (15:29 -0200)]
Test case for tapping on stacked mouse areas

Shows bug where the bottom mouse area could get a double click event out
of a single tap.

Change-Id: I4907a1506db2b4ccc5299d698c6e05fd02db963c
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
11 years agoFlickable: Test case for flicking twice using touches
Daniel d'Andrada [Tue, 18 Dec 2012 11:47:57 +0000 (09:47 -0200)]
Flickable: Test case for flicking twice using touches

When you flick twice in rapid succession, in the same direction,
the expected behavior is for flickable to be moving quite fast in the
direction of the flicks.

This test check for a bug where when you flick using touch events
instead of mouse ones, the second flick causes Flickable to immediately halt.

Change-Id: I430515d82499b904a1d2e23402b753873490a2d9
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
11 years agoFlickable: Fix bug when flicking twice using touches
Daniel d'Andrada [Tue, 18 Dec 2012 12:51:21 +0000 (10:51 -0200)]
Flickable: Fix bug when flicking twice using touches

When you flick twice in rapid succession, in the same direction,
the expected behavior is for flickable to be moving quite fast in the
direction of the flicks.

But when you flicked using touch events instead of mouse ones,
the second flick caused Flickable to immediately halt. This change fixes it.

Change-Id: I02bd02fed30bd4a98959194e04f0a26b4420cd05
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
11 years agoFix warnings about nonexistent signals in QQuickScreen
Oleg Shparber [Wed, 26 Dec 2012 02:15:49 +0000 (04:15 +0200)]
Fix warnings about nonexistent signals in QQuickScreen

On application exit QQuickScreen tries to disconnect
from an old QScreen which is almost destroyed at this
point.

Change-Id: I6c595cf68d6faaf3527b8ffcae0a074c23170ea1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoReenable temporarily skipped QML tests
Peter Varga [Wed, 9 Jan 2013 13:11:55 +0000 (14:11 +0100)]
Reenable temporarily skipped QML tests

Change-Id: I1e57b0e39c539648602cc480e296db6c6948ff39
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
11 years agoUpdate some QML tests and temporarily skip them
Peter Varga [Fri, 23 Nov 2012 10:03:47 +0000 (11:03 +0100)]
Update some QML tests and temporarily skip them

These tests should be skipped until the next V8 update is landed into
QtJSBackend. The expected results of these tests currently check wrong
behavior. These bugs have been already fixed in the official V8 thus we
need to update and skip them until the fix is landed into QtJSBackend.

Change-Id: I77d8ee50b45cd6599cbb5735ddef7d1461aeceab
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
11 years agoMerge branch 'stable' into release
Sergio Ahumada [Wed, 9 Jan 2013 08:16:24 +0000 (09:16 +0100)]
Merge branch 'stable' into release

Change-Id: I44631ce9d9a6aba090d01911ff62b56043510c9c

11 years agoMove VME exception to a better place
Alan Alpert [Mon, 17 Dec 2012 01:35:12 +0000 (17:35 -0800)]
Move VME exception to a better place

If o is not created, then ddata on the next line may also not create
successfuly leading to an invalid memory access before we reach the !o
exception.

Change-Id: I9b127dff7955456aacb25138fabaabaabaab921f
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
11 years agoRemove m_ in property names of QQmlTypePrivate
Alan Alpert [Sat, 15 Dec 2012 21:58:38 +0000 (13:58 -0800)]
Remove m_ in property names of QQmlTypePrivate

There's already a d-> to indicate they are internal variables. Doesn't
need both.

Change-Id: I9b127dff7955456aacb25138fa6ea8efb7bb921f
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
11 years agoFix semicolon insertion before pre-incr/decr operators.
Erik Verbruggen [Thu, 20 Dec 2012 09:31:46 +0000 (10:31 +0100)]
Fix semicolon insertion before pre-incr/decr operators.

Do not insert a semicolon if the previous token was a binop or a
question mark.

Change-Id: Id2ee1d3cb57fa3fe20bfc0078d06f9e2619d88f1
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoFix unicode escape sequence validation in strings.
Erik Verbruggen [Tue, 18 Dec 2012 14:11:27 +0000 (15:11 +0100)]
Fix unicode escape sequence validation in strings.

Give an error message when the sequence does not conform to the grammar.
Note that both \u and \x (without any numbers following it) are not
valid escape sequences in ECMA5.1.

Change-Id: I14348984c680b0ce86e05faad5630afc1e98cd02
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
11 years agoDon't try to grab Windows with invalid or a zero size
Dominik Holland [Wed, 12 Dec 2012 13:58:14 +0000 (14:58 +0100)]
Don't try to grab Windows with invalid or a zero size

It will end up in LiveLock trying it. Because the Window will never
appear in the Rendering thread and setting the grabContent.

On the other end, grabWindow will never return because it waits for the
RenderingThread to set grabContent

Change-Id: Ia1c365acf033732b3e2e9d9d7dc8e73f9e8f4870
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoDeinline QQuickKeysAttached::keyToSignal.
Robin Burchell [Fri, 14 Dec 2012 17:19:07 +0000 (18:19 +0100)]
Deinline QQuickKeysAttached::keyToSignal.

This also means we don't need to expose the SigMap struct or value - it can be
made file-local. This isn't performance-critical, so it shouldn't really matter.

Change-Id: I08d48df4f903df49a6ea58e6f10f3f53a97d89de
Reviewed-by: Martin Jones <martin.jones@jollamobile.com>
11 years agoMerge "Merge branch 'stable' into dev" into refs/staging/dev
Frederik Gladhorn [Mon, 7 Jan 2013 15:19:53 +0000 (16:19 +0100)]
Merge "Merge branch 'stable' into dev" into refs/staging/dev

11 years agoFix: disallow incomplete hex numbers "0x" and "0X".
Erik Verbruggen [Tue, 18 Dec 2012 13:54:16 +0000 (14:54 +0100)]
Fix: disallow incomplete hex numbers "0x" and "0X".

See also ECMA 5.1, 7.8.3, rule HexIntegerLiteral.

Change-Id: I356dc7cfbc88890bb7f35c8bc4219a37633177f8
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoFix tst_qquicktextinput on Windows and Mac.
Friedemann Kleint [Tue, 18 Dec 2012 08:50:36 +0000 (09:50 +0100)]
Fix tst_qquicktextinput on Windows and Mac.

Both require a sensible window size.

Task-number: QTBUG-23485
Task-number: QTBUG-28611
Change-Id: If888dd4d60fccdabc9856f914d6542ced6a41d64
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
11 years agoDocumentation for scene graph examples.
Gunnar Sletta [Wed, 12 Dec 2012 19:11:12 +0000 (20:11 +0100)]
Documentation for scene graph examples.

Change-Id: Idb39fc0b6d5e538b90ae8a0b98d9f4d77e1fb617
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
11 years agoAccessibility: Send value updates
Frederik Gladhorn [Sun, 4 Nov 2012 14:24:18 +0000 (15:24 +0100)]
Accessibility: Send value updates

Change-Id: I090dc8427e478416bf1bbe910db1f98d9bce3fb8
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoModify qmlscene usage text to be consistent
Richard Moe Gustavsen [Thu, 3 Jan 2013 08:56:23 +0000 (09:56 +0100)]
Modify qmlscene usage text to be consistent

- last line was not aliged correctly with the previous lines.
- usage of capital letter was inconsistent.

Change-Id: Ied7caab8296a635e105764bc2e95aa9e78f1cfcb
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoAccessibility: Work with QQuickWindow
Frederik Gladhorn [Wed, 12 Dec 2012 10:49:21 +0000 (11:49 +0100)]
Accessibility: Work with QQuickWindow

Before we would only be accessible when QQView was used.
While the window has the content item, that one will not
appear in the hierarchy of accessible objects since it has
no valueable properties to expose. Instead it's first child
will be used (which was the case before when QQView was used).

Change-Id: I03cefb5c8dcd8296d51ff2bfcb677386a5f1d698
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoImprove example with key navigation.
Frederik Gladhorn [Tue, 11 Dec 2012 19:05:04 +0000 (20:05 +0100)]
Improve example with key navigation.

Generally this is a redo of many of the details.

Change-Id: I08c4f58966507232220bb10892041b9e39d54e37
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoMerge branch 'stable' into dev
Frederik Gladhorn [Fri, 4 Jan 2013 11:48:06 +0000 (12:48 +0100)]
Merge branch 'stable' into dev

Conflicts:
src/qml/qml/parser/qqmljskeywords_p.h
sync.profile
tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp

Change-Id: I9bc6659e1bab924009167bec567354d40a77a8cb

11 years agoAdd the getter/setter type to PropertyGetterSetter
Lars Knoll [Thu, 3 Jan 2013 16:13:38 +0000 (17:13 +0100)]
Add the getter/setter type to PropertyGetterSetter

Required to differentiatate between getters and
setters.

Change-Id: I48b2fb911192a8cc5840ff11e31b885f62ac6179
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
11 years agoRevert "Mark autotest as insignificant on mac"
Paul Olav Tvete [Wed, 12 Dec 2012 09:25:31 +0000 (10:25 +0100)]
Revert "Mark autotest as insignificant on mac"

The underlying bug was fixed by change I3b361655e25b6cf2d5e29410dc1f3567ab8f54d9

This reverts commit d355a609d4a314657a585be4750d2ed375c621a5.

Change-Id: If01675097544a0271130dcbb7959ccf2425620c2
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
11 years agoqmltest: Added the possibility to use QApplication
Liang Qi [Thu, 27 Dec 2012 08:48:07 +0000 (09:48 +0100)]
qmltest: Added the possibility to use QApplication

Current QML test cases in QtDesktopComponents still need to use
QApplication.

Added QT_QMLTEST_WITH_WIDGETS define when QtWidgets is available.
Also proveded a command line switch "-widgets" for it.

Change-Id: Ib6c7313538cb8875144636b6f8bd264b0f13aa8d
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
11 years agoAdd changes-5.0.1 file
Sergio Ahumada [Sat, 22 Dec 2012 15:28:15 +0000 (16:28 +0100)]
Add changes-5.0.1 file

Task-number: QTBUG-26065
Change-Id: I3345a178cdfbc8e8c68b0e069eb9928772353186
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoBump Qt version to 5.0.1
Sergio Ahumada [Fri, 21 Dec 2012 23:27:51 +0000 (00:27 +0100)]
Bump Qt version to 5.0.1

Change-Id: I8cadaec38aff1348c80c552e7fe072b6a7aa31b1
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoFix other warnings in qtdeclarative found by GCC 4.7
Thiago Macieira [Sat, 22 Dec 2012 06:54:02 +0000 (22:54 -0800)]
Fix other warnings in qtdeclarative found by GCC 4.7

qml/qml/qqmlimport.cpp:982:30: error: unused parameter 'errors' [-Werror=unused-parameter]
quick/util/qquickanimationcontroller.cpp:66:6: error: unused parameter 'job' [-Werror=unused-parameter]'
quick/items/qquickshadereffectnode.cpp:160:17: error: case value '38' not in enumerated type 'QVariant::Type' [-Werror=switch]
quick/items/qquickwindowmanager.cpp:286:60: error: 'renderTime' may be used uninitialized in this function [-Werror=maybe-uninitialized]
quick/items/qquickitem.cpp:5267:67: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]

and a few more repeated from the above

Change-Id: Id1950c6ba98f7f8475975716b21bd795ecb4bd20
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoFix warnings in QtQml due to ?: with enums of different types
Thiago Macieira [Sat, 22 Dec 2012 07:02:45 +0000 (23:02 -0800)]
Fix warnings in QtQml due to ?: with enums of different types

The compiler was complaining a lot about:
qml/parser/qqmljskeywords_p.h:400:57: error: enumeral mismatch in conditional expression: 'QQmlJS::Lexer::<anonymous enum>' vs 'QQmlJSGrammar::VariousConstants' [-Werror=enum-compare]

Change-Id: Ib6acd3fbae048c33626321bf5e7ee8b50bb6b48e
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agoAdd qmake generated files to .gitignore.
Miikka Heikkinen [Thu, 20 Dec 2012 09:36:47 +0000 (11:36 +0200)]
Add qmake generated files to .gitignore.

Add source files generated by qmake for automatic static plugin
imports to .gitignore.

Change-Id: I4c5488bdc146f501963f5414017ba80d781210ef
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoQuick tests: Introduce QQmlMessageHandler.
Friedemann Kleint [Tue, 18 Dec 2012 10:41:06 +0000 (11:41 +0100)]
Quick tests: Introduce QQmlMessageHandler.

Add QQmlMessageHandler class that can be used to record messages
into a QStringList. It also makes sure that the old message
handler is reinstalled if the test fails.

Task-number: QTBUG-28611
Change-Id: I0fff7bc11e188cf47178d9573e5f2eead693bc10
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoFix compiler warnings in declarative tests.
Friedemann Kleint [Wed, 19 Dec 2012 15:18:52 +0000 (16:18 +0100)]
Fix compiler warnings in declarative tests.

- Unused variables
- Missing enumeration values in switch
- truncation from double to float
- truncation from size_t to int
- Missing initializers
- Mix of operator & and bool |

Change-Id: Ib212aeea41befef193f12300a1d9814a60f183af
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoDo not crash on some animation changes
Albert Astals Cid [Wed, 19 Dec 2012 10:25:16 +0000 (11:25 +0100)]
Do not crash on some animation changes

stop() might end up deleting the animationjob object so wrap
the call with a RETURN_IF_DELETED

Fixes valgrind complaining
==18380== Invalid read of size 1
==18380==    at 0x5530B24: QAbstractAnimationJob::setCurrentTime(int) (in /home/tsdgeos/qt5/qtdeclarative/lib/libQt5Qml.so.5.0.0)
==18380==    by 0x5530BDE: QQmlAnimationTimer::updateAnimationsTime(long long) (in /home/tsdgeos/qt5/qtdeclarative/lib/libQt5Qml.so.5.0.0)
==18380==    by 0x65C05DC: QUnifiedTimer::updateAnimationTimers(long long) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380==    by 0x65C10E3: QAnimationDriver::advanceAnimation(long long) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380==    by 0x5047DB9: QQuickRenderThreadSingleContextWindowManager::event(QEvent*) (qquickthreadedwindowmanager.cpp:588)
==18380==    by 0x58D7F9B: QApplicationPrivate::notify_helper(QObject*, QEvent*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Widgets.so.5.0.0)
==18380==    by 0x58DB364: QApplication::notify(QObject*, QEvent*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Widgets.so.5.0.0)
==18380==    by 0x6756B9D: QCoreApplication::notifyInternal(QObject*, QEvent*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380==    by 0x6758855: QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380==    by 0x679E7C2: postEventSourceDispatch(_GSource*, int (*)(void*), void*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380==    by 0x85B7AB4: g_main_context_dispatch (gmain.c:2715)
==18380==    by 0x85B7DE7: g_main_context_iterate.isra.24 (gmain.c:3290)
==18380==  Address 0x1642bd48 is 88 bytes inside a block of size 128 free'd
==18380==    at 0x4C2A44B: operator delete(void*) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==18380==    by 0x4F0728B: QQuickBehavior::write(QVariant const&) (qquickbehavior.cpp:210)
==18380==    by 0x53EB0FE: QQmlVMEMetaObject::metaCall(QMetaObject::Call, int, void**) (in /home/tsdgeos/qt5/qtdeclarative/lib/libQt5Qml.so.5.0.0)
==18380==    by 0x54FEA08: StoreProperty(QV8Engine*, QObject*, QQmlPropertyData*, v8::Handle<v8::Value>) (in /home/tsdgeos/qt5/qtdeclarative/lib/libQt5Qml.so.5.0.0)
==18380==    by 0x79ED2CE: v8::internal::JSObject::SetPropertyWithCallback(v8::internal::Object*, v8::internal::String*, v8::internal::Object*, v8::internal::JSObject*, v8::internal::StrictModeFlag) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380==    by 0x7A0AE71: v8::internal::JSObject::SetPropertyForResult(v8::internal::LookupResult*, v8::internal::String*, v8::internal::Object*, PropertyAttributes, v8::internal::StrictModeFlag) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380==    by 0x7A0B2D8: v8::internal::JSReceiver::SetProperty(v8::internal::String*, v8::internal::Object*, PropertyAttributes, v8::internal::StrictModeFlag, bool) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380==    by 0x79A8861: v8::internal::StoreIC::Store(v8::internal::InlineCacheState, v8::internal::StrictModeFlag, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::String>, v8::internal::Handle<v8::internal::Object>) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380==    by 0x79A8DF0: v8::internal::StoreIC_Miss(v8::internal::Arguments, v8::internal::Isolate*) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380==    by 0x24E8BD20618D: ???
==18380==    by 0x24E8BD237AC9: ???
==18380==    by 0x24E8BD2249E6: ???

Change-Id: Idcb195206d344bb526ee37f9172a6b3c029540db
Reviewed-by: Michael Brasser <michael.brasser@live.com>
11 years agoCompile with QT_NO_WHEELEVENT.
Volker Krause [Fri, 30 Nov 2012 15:05:55 +0000 (16:05 +0100)]
Compile with QT_NO_WHEELEVENT.

Change-Id: I2fbe6f45ba50e3db75bd02cfca47ddabfcd5fc49
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoAccessibility: Improve interface handling in Quick
Frederik Gladhorn [Sun, 4 Nov 2012 11:54:30 +0000 (12:54 +0100)]
Accessibility: Improve interface handling in Quick

This changes how interfaces are handled:
the QAccessibleQuickItem will simply subclass
all interfaces and dynamically return 0 or the
appropriate interface_cast.

This makes our implementation a lot more flexible.
To make use of the value interface, only a value
property is needed (together with a corresponding role).

Since the implementation of the interfaces became simpler,
the value interface and some text interface improvements
go along with the change.

Change-Id: I003ec3016d48d730a4acac467bce322167842f4d
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoStabilize QQuickLoader test on Windows.
Friedemann Kleint [Mon, 17 Dec 2012 13:00:10 +0000 (14:00 +0100)]
Stabilize QQuickLoader test on Windows.

Wait until the component is ready in network tests.

Task-number: QTBUG-28611

Change-Id: I3f880ee585199a3c8ba2d672bb365fa60c472499
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
11 years agoFix tst_qqmlbundle on Windows.
Friedemann Kleint [Tue, 18 Dec 2012 11:14:34 +0000 (12:14 +0100)]
Fix tst_qqmlbundle on Windows.

The plugin was not found since it was in the Release/Debug
subfolder, respectively.

Task-number: QTBUG-28611

Change-Id: Ieaea7c67e2524a7d0ca3011d96f31b15929e551c
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
11 years agoFix tst_qqmllanguage for MSVC.
Friedemann Kleint [Tue, 18 Dec 2012 11:59:19 +0000 (12:59 +0100)]
Fix tst_qqmllanguage for MSVC.

Do not use \u.

Task-number: QTBUG-28611

Change-Id: I85fce2f945c97421b8b35fb8276cd4ee3cc19d38
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
11 years agopoint dependencies to 'release' branches
Sergio Ahumada [Mon, 17 Dec 2012 19:29:44 +0000 (20:29 +0100)]
point dependencies to 'release' branches

Change-Id: Iac26a66556eed1428a36cf7288167594a67e3590
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoDoc: Enabling Qt QML linking to Qt Quick.
Jerome Pasion [Mon, 17 Dec 2012 14:48:56 +0000 (15:48 +0100)]
Doc: Enabling Qt QML linking to Qt Quick.

Allows Qt QML pages to link to Qt Quick.
Task-number: QTBUG-28579

Change-Id: I9eafadc5ee14a5588a5863960c4463132b73b287
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
11 years agoAdded parsing for getter/setter definitions in property assignments.
Erik Verbruggen [Wed, 12 Dec 2012 11:24:15 +0000 (12:24 +0100)]
Added parsing for getter/setter definitions in property assignments.

Specified in ecma 5.1, 11.1.5.

Change-Id: I93d12593534ed8a987922c8aa329124940e77c6f
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoremove obsolete DEPENDPATH assignments
Oswald Buddenhagen [Fri, 14 Dec 2012 19:02:06 +0000 (20:02 +0100)]
remove obsolete DEPENDPATH assignments

qmake now add CONFIG+=depend_includepath by default, making manual
DEPENDPATH setup unnecessary.

Change-Id: I6cefdd70ffd3a0ef889752eafec8b999822588cf
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoremove some unnecessary CONFIG additions
Oswald Buddenhagen [Fri, 14 Dec 2012 18:22:13 +0000 (19:22 +0100)]
remove some unnecessary CONFIG additions

qt is already added by spec_pre.prf, warn_on by default_pre.prf and dll
by qt_module.prf.

Change-Id: I449e49275622bac39b7d76af8855c417ddce21e9
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoAdd a hidden XandYAxis enum value
Alan Alpert [Thu, 1 Mar 2012 10:09:52 +0000 (20:09 +1000)]
Add a hidden XandYAxis enum value

For Qt 5 XandYAxis is being renamed to XAndYAxis to more consistently
follow capitalization rules. Add an undocumented XandYAxis variable to
ease porting.

Change-Id: Id9e41dd5578373f5f557937da889a9326ff12e53
Reviewed-by: Martin Jones <martin.jones@jollamobile.com>
11 years agoAdd minimal plugin importing to quick2 qmlplugindump tool
Miikka Heikkinen [Wed, 12 Dec 2012 11:28:28 +0000 (13:28 +0200)]
Add minimal plugin importing to quick2 qmlplugindump tool

Task-number: QTBUG-28131

Change-Id: Iad55e3c6057b060cd8f8233e02a6151c91cc32ed
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoFixed samegame tutorial part 4 to reflect Quick2 state
Oliver Wolff [Thu, 13 Dec 2012 15:19:46 +0000 (16:19 +0100)]
Fixed samegame tutorial part 4 to reflect Quick2 state

Change-Id: I61a3d63bc0268256ff6497339a6d97719a59860f
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
11 years agoImproved cosmetics for StockQt
Jens Bache-Wiig [Thu, 13 Dec 2012 20:18:19 +0000 (21:18 +0100)]
Improved cosmetics for StockQt

This will not get us any design awards but it looks
a bit more professional than the original.

Change-Id: Ib01a20ebad5888af44c174cbd493ce8d99dcf7b6
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
11 years agoClean up the StockQt demo
Jens Bache-Wiig [Thu, 13 Dec 2012 18:16:13 +0000 (19:16 +0100)]
Clean up the StockQt demo

I cleaned up the whitespace, property declarations and removed
some console output. No changes to the functionality or design.

Change-Id: I499f6d061e43bf2e187eebc026858b3abd21a9b0
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Alan Alpert <aalpert@rim.com>
11 years agosync.profile: Point dependencies to 'refs/heads/dev'
Sergio Ahumada [Wed, 12 Dec 2012 20:55:33 +0000 (21:55 +0100)]
sync.profile: Point dependencies to 'refs/heads/dev'

We should test dev branches against dev branches only by default.
At some point we should automate the merges from release->stable->dev
andi/or decide how to handle possible conflicts.

This is good enough for the time being.

Change-Id: Ifeae1b5de37e7bcaefbfa9038e50f3667645eca2
Reviewed-by: Alan Alpert <aalpert@rim.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
11 years agoFix StocQt buttons
Alan Alpert [Fri, 30 Nov 2012 20:23:53 +0000 (12:23 -0800)]
Fix StocQt buttons

They're now on screen and using better componentization for the styling.

Task-number: QTBUG-28291
Change-Id: If21712e523c706ee05d257e209ed71dd61acf2dc
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
11 years agoUpdate porting docs
Alan Alpert [Sat, 8 Dec 2012 20:20:35 +0000 (12:20 -0800)]
Update porting docs

Some improvements to the QML engine in Qt 5 lead to behavior changes.
These should be explained in the porting guide.

Task-number: QTBUG-28411
Change-Id: Ifc4016cf7b33ba113dbe0cbabd2f71a4ff1a8685
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Bea Lam <bea.lam@jollamobile.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
11 years agoChange virtual folders in .qdocconf to qtqml and qtquick
hjk [Wed, 12 Dec 2012 09:56:44 +0000 (10:56 +0100)]
Change virtual folders in .qdocconf to qtqml and qtquick

This seems more in line with the rest of the qdocconf files

Change-Id: I91999205b0632a2c0e57f428754cf5928a1ea6c7
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
11 years agoAdd \brief comment to Custom Geometry example
hjk [Wed, 12 Dec 2012 09:45:07 +0000 (10:45 +0100)]
Add \brief comment to Custom Geometry example

Change-Id: I11be2329d2d396bc778a5eeda45dda9b30337285
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
11 years agoUse resource files for most examples
Kai Koehne [Tue, 11 Dec 2012 13:17:34 +0000 (14:17 +0100)]
Use resource files for most examples

Make examples shadow-build-friendly by using resource
files instead of trying to derive the qml path from
applicationDirPath().

Change-Id: I669424554c772d9b261249b366247190f5fbd8b1
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
11 years agoWork towards supporting front-to-back reordering of opaque items.
Michael Brasser [Sat, 8 Dec 2012 05:05:48 +0000 (23:05 -0600)]
Work towards supporting front-to-back reordering of opaque items.

Change-Id: Ic3b9defa6ac61409adcfb2b5cb8167698ed00255
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoFixed abstractitemmodel example
Oliver Wolff [Thu, 6 Dec 2012 13:54:32 +0000 (14:54 +0100)]
Fixed abstractitemmodel example

Change-Id: I1e85fd3f35f4f3d80e3fb599ae95b771db5f949b
Reviewed-by: hjk <qthjk@ovi.com>
11 years agoFixed install targets for model examples
Oliver Wolff [Tue, 11 Dec 2012 07:20:33 +0000 (08:20 +0100)]
Fixed install targets for model examples

Change-Id: I4c23fe37ec7adc17180c2405e68273b5cd3ee219
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoExamples: Remove unused import "../shared"
Kai Koehne [Tue, 11 Dec 2012 12:59:44 +0000 (13:59 +0100)]
Examples: Remove unused import "../shared"

Change-Id: I3c84eab1ff97380362828aa96b0d5189cbd62509
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
11 years agoRemoved leftover file from example cleanup
Oliver Wolff [Tue, 11 Dec 2012 07:15:50 +0000 (08:15 +0100)]
Removed leftover file from example cleanup

Change-Id: I63b9ca28724d651d8e4cb74eed114665a75e8b18
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoImproved the scene graph overview a bit
Gunnar Sletta [Tue, 11 Dec 2012 15:59:02 +0000 (16:59 +0100)]
Improved the scene graph overview a bit

Change-Id: I82f5a48801b2c8ed94ef1f8d0b2e82998bb91c78
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
11 years agoMove the Q_DECLARE_METATYPE to where it should be.
Stephen Kelly [Tue, 11 Dec 2012 14:22:50 +0000 (15:22 +0100)]
Move the Q_DECLARE_METATYPE to where it should be.

Change-Id: Id17b30ed59fd9e68229bb80de5b9e4bc2aa0b75d
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agomake use of qt_headersclean.prf
Oswald Buddenhagen [Mon, 3 Dec 2012 20:34:23 +0000 (21:34 +0100)]
make use of qt_headersclean.prf

Change-Id: I50f2299573770bb546333f57a61b6eb6b7e80e4e
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoFix invalid compression in qmlmin
Lars Knoll [Tue, 11 Dec 2012 21:24:29 +0000 (22:24 +0100)]
Fix invalid compression in qmlmin

qmlmin could compress identifiers in an invalid way if
it contained special chars that would get expanded to
unicode escape sequences

Change-Id: I35b3ba01f68b69b34c4cd19616afb8b4b4cd6fa3
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
11 years agoDon't assume QChar::null() is the end of input
Lars Knoll [Tue, 11 Dec 2012 20:09:47 +0000 (21:09 +0100)]
Don't assume QChar::null() is the end of input

The lexer currently assumes a null QChar implies the end
of our input stream. Change it to take the full string into
account. null QChar's inside comments or strings are now
accepted, everywhere else they will cause a parse error.

Change-Id: I60c40a32d5afe94c6c56d8a8092fc32726b98420
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
11 years agosuper is always a reserved keyword
Lars Knoll [Tue, 11 Dec 2012 07:02:09 +0000 (08:02 +0100)]
super is always a reserved keyword

According to 7.6.1.2 of the EcmaScript 5.1 spec, super
is always a reserved keyword.

Change-Id: Idc300326c036eb9f0a12aa8eec8427023b7652b2
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
11 years agoBail out on stray newlines in strings in JS mode
Lars Knoll [Tue, 11 Dec 2012 06:51:22 +0000 (07:51 +0100)]
Bail out on stray newlines in strings in JS mode

Still allow newlines in QML mode to keep compatibility
for existing code.

Change-Id: I11dbd5a73ea8958f5ddc199b77a919969f8a5214
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
11 years agoDon't bail out on 0 chars in comments
Lars Knoll [Tue, 11 Dec 2012 06:50:10 +0000 (07:50 +0100)]
Don't bail out on 0 chars in comments

Gets a few more parser tests in the test suite to pass.

Change-Id: Id9ac5211f64aafdd621f6187ad7061ff967bc947
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
11 years agoFix the test suite
Lars Knoll [Tue, 11 Dec 2012 05:59:37 +0000 (06:59 +0100)]
Fix the test suite

We now fail when parsing octal numbers or escape sequences. This
is ok according to the EcmaScript 5.1 spec. So remove all usages
of these numbers or sequences.

In addition delete an invalid test case that can't possibly be
parsed correctly. V8 also chokes on it.

Change-Id: I889de2810310f38206343d16175f9e31ddb44d30
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
11 years agoParse identifiers according to spec
Lars Knoll [Mon, 10 Dec 2012 23:25:55 +0000 (00:25 +0100)]
Parse identifiers according to spec

If a unicode escape sequence decodes to a char that is
not allowed in the identifier we need to throw a parse
error. So decode before checking whether the char is
valid.

Also fix the set of accepted unicode characters for the
start and in the middle of an identifier to what the spec
demands.

Change-Id: I35075b0587ef4e4edb745750cec6d5c764631c0d
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
11 years agoThrow a parse error on octal numbers and escape sequences
Lars Knoll [Mon, 10 Dec 2012 21:06:33 +0000 (22:06 +0100)]
Throw a parse error on octal numbers and escape sequences

This is compliant with EcmaScript 5.1, where octal numbers
and escape sequences are an optional and deprecated part
of the syntax.

Allow leading 0's in qml mode, but interpret the result
as decimal. This is also to keep compatibility with
existing code.

Change-Id: Ic3450ec3dd17966846751ee688a90c65939ba78f
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>