Andrew den Exter [Mon, 25 Jul 2011 02:55:57 +0000 (12:55 +1000)]
Notify when the TextInput cursorRectangle property changes within pre-edit
Apply
452e13b5407fa4c36f9a573c305d41f551762b93 to scene graph items.
Task-number: QTBUG-19089
Change-Id: I4501bdc940cbac9ba2ef068b87ded83b1c86976f
Reviewed-on: http://codereview.qt.nokia.com/2054
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Aaron Kennedy [Tue, 12 Jul 2011 05:09:18 +0000 (15:09 +1000)]
Don't assert on incorrect file url
Exceptions thrown from within a QObject method have the same special
origin "string" that we use to identify QObject function objects as
QObject function objects. Until we can modify this, or switch to
function objects in a later V8, we can't get correct source information
for these exceptions.
Task-number: QTBUG-20344
Change-Id: I02aa2d81ac78c2951d7ea714f33612160ded2476
Reviewed-on: http://codereview.qt.nokia.com/1475
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Aaron Kennedy [Mon, 25 Jul 2011 02:40:20 +0000 (12:40 +1000)]
Enter context scope
Task-number: QTBUG-20485
Change-Id: Ifc7fa998a253b01d8114d00d537faca5df5c93c9
Reviewed-on: http://codereview.qt.nokia.com/2053
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Casper van Donderen [Thu, 14 Jul 2011 09:15:36 +0000 (11:15 +0200)]
Documentation fix.
Fixes: QTBUG-20390
Change-Id: I30a4b4d1618f80c9a1246955a9b1d6c9f8fbfd57
Reviewed-on: http://codereview.qt.nokia.com/1655
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Bea Lam [Mon, 18 Jul 2011 03:29:18 +0000 (13:29 +1000)]
Fix layout bug from view refactoring
GridView should call layout() not layoutVisibleItems() in
setCellWidth(), setCellHeight() and itemsMoved()
Bug introduced when refactoring view code into QSGItemView.
Change-Id: I48bc63c0a08c10c005bf45a2a7902cb01632cbf9
Reviewed-on: http://codereview.qt.nokia.com/1726
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Aaron Kennedy [Thu, 14 Jul 2011 04:46:23 +0000 (14:46 +1000)]
Update V8
Fixes a bug in threadsafe symbol id generation, and adds a ComputeHash
implementation for const char * strings.
Change-Id: Id1fb4c7d9bf8eae59229b3893e8a9ef20dede336
Reviewed-on: http://codereview.qt.nokia.com/1621
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Kim Motoyoshi Kalland [Thu, 21 Jul 2011 08:49:44 +0000 (10:49 +0200)]
Compile fix.
Change-Id: Ie6e1f814b6791ddc2b02a845ebd8bc20765f7193
Reviewed-on: http://codereview.qt.nokia.com/1941
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Christiaan Janssen [Tue, 19 Jul 2011 16:07:46 +0000 (18:07 +0200)]
Qml Debugging: only read properties that can be displayed in the debugger
Change-Id: I68a6636aae271924bcec31ce7ad76c01fc43080b
Task-number: QTCREATORBUG-5075
Reviewed-on: http://codereview.qt.nokia.com/1893
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Bea Lam [Thu, 14 Jul 2011 03:55:20 +0000 (13:55 +1000)]
Always position headers at a negative position
Previously headers were either positioned at 0 if there were no items in
the view, or at (0 - headerSize) if items were present. With this fix
they are always positioned at (0 - headerSize) to be consistent.
Due to the change, setPosition(-headerSize()) is now called from
componentCompleted() to ensure the header is visible.
This change also fixes GridView's header and footer positioning in
TopToBottom + RightToLeft mode.
Also added extra tests for header and footer positioning and fixed
incorrect test value in tst_QSGGridView::positionViewAtIndex() (was 460
instead of 430 because previously rowPosAt() always added the header
size, so if positionViewAtIndex() jumped past all visible items and
caused them to be released, the new items started at +headerSize()
instead of 0).
Change-Id: I1015bed457d4ae964a7fb13702e2dfc470a168a9
Reviewed-on: http://codereview.qt.nokia.com/1618
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Alan Alpert [Thu, 14 Jul 2011 23:02:55 +0000 (09:02 +1000)]
Bulk update of QtQuick 1 docs to \qmlmodule syntax
Change-Id: I7ed2b54ef5a706dcaf7e19d221a6dda7b2620e8c
Reviewed-on: http://codereview.qt.nokia.com/1681
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Bea Lam [Wed, 13 Jul 2011 03:46:57 +0000 (13:46 +1000)]
Make lastPosition() result consistent among GridView and ListView
lastPosition() returns the end position of the last item so it should
always include a -1 calculation for the last item (as
FxListItemSG::endPosition() and FxGridItemSG::endPosition() do) to get
the last edge pixel of the item. With this fix, both views now
calculate startPosition() and endPosition() in the same way.
This also fixes positioning of GridView items in TopToBottom+RightToLeft
layouts. Incorrect test values in positionViewAtIndex_rightToLeft()
test are fixed (the last edge of a 1-pixel border shouldn't be visible,
since the bottom edge of a 1-pixel border is actually drawn outside,
not inside, the Rectangle).
Change-Id: I253c3836f871c61e13c08f67007ebc75e09378d6
Reviewed-on: http://codereview.qt.nokia.com/1547
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Simon Hausmann [Wed, 20 Jul 2011 08:50:21 +0000 (10:50 +0200)]
Fix memory leaks with QV8Engine's ExtensionData
The destructor has to be virtual for Deletable in order to call
the destructor of the super-class.
Change-Id: I3aeebe28c0a6bbfbbe3b069e88a6096dd9e173f5
Reviewed-on: http://codereview.qt.nokia.com/1867
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Charles Yin [Fri, 15 Jul 2011 06:31:06 +0000 (16:31 +1000)]
add font support for context2d
Change-Id: I77a7af006e1c0264365ae6d93bf78416f8b38a62
Reviewed-on: http://codereview.qt.nokia.com/1686
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Charles Yin [Wed, 13 Jul 2011 07:07:06 +0000 (17:07 +1000)]
more on canvas stock chart example.
Change-Id: I7e92414d397b8a0bfdd514c9045677cd00422263
Reviewed-on: http://codereview.qt.nokia.com/1627
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Bea Lam [Thu, 14 Jul 2011 06:29:05 +0000 (16:29 +1000)]
Add isEmpty() method
Change-Id: Ia0eadcd20b2f14433a7e3a89d97d7a21ec353aa5
Reviewed-on: http://codereview.qt.nokia.com/1628
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Bea Lam [Tue, 5 Jul 2011 05:07:05 +0000 (15:07 +1000)]
Refactor ListView and GridView implementations
Places common code into QSGItemView.
Change-Id: Ic310dbe7e16774163ba393860da64a0da7d4ea0a
Reviewed-on: http://codereview.qt.nokia.com/1200
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Alan Alpert [Fri, 1 Jul 2011 06:12:23 +0000 (16:12 +1000)]
Hook up durationVariation on Sprites
Change-Id: I11ea38fc87373604debd469e03af3447b8adcecb
Reviewed-on: http://codereview.qt.nokia.com/985
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Alan Alpert [Mon, 11 Jul 2011 01:20:58 +0000 (11:20 +1000)]
Initial stab at docs for QtQuick.Particles 2.0
Change-Id: I3c53f7998dff95616a994edf19094fa4007d74ab
Reviewed-on: http://codereview.qt.nokia.com/1388
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Alan Alpert [Thu, 7 Jul 2011 07:24:18 +0000 (17:24 +1000)]
Remove traces of webkit
Removes the entire wince section for qmlviewer.pro, as wince is not yet
supported for qt5 and its unclear what damage removing the webkit part
would have done to it.
Change-Id: Ib0c721856bb7a28c3238e85c8cc93b43e6e63368
Reviewed-on: http://codereview.qt.nokia.com/1267
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Kim Motoyoshi Kalland [Tue, 19 Jul 2011 10:14:39 +0000 (12:14 +0200)]
Renamed the Bindable class to QSGBindable.
Change-Id: Id00868bd0ea93010912f06fba67624fb325ecc41
Reviewed-on: http://codereview.qt.nokia.com/1818
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Kim Motoyoshi Kalland [Thu, 14 Jul 2011 13:55:29 +0000 (15:55 +0200)]
Improved the performance of distance-field generation.
Change-Id: Ie17650196c7e4531cbc6f760905e41d95808efcd
Reviewed-on: http://codereview.qt.nokia.com/1675
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Yoann Lopes [Mon, 18 Jul 2011 11:17:46 +0000 (13:17 +0200)]
Fixed QSGDistanceFieldGlyphNode initialization order.
Change-Id: Id2e8ccf6441ce7e7a2bcdd6f0d50745e7d9ba653
Reviewed-on: http://codereview.qt.nokia.com/1750
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Yoann Lopes <yoann.lopes@nokia.com>
Charles Yin [Wed, 20 Jul 2011 01:28:26 +0000 (11:28 +1000)]
fix qmltest bugs
Change-Id: If814516b1094b85fba46e215b44e1a2b582179c5
Reviewed-on: http://codereview.qt.nokia.com/1858
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Alan Alpert [Thu, 14 Jul 2011 22:14:39 +0000 (08:14 +1000)]
Crash less
Can't run any particles without a system set. Just skip the
'prepareFrame' function in that case.
Task-Number: QTBUG-20386
Change-Id: I22332636084d1696d5aff5386a5ca4ff0f2f1866
Reviewed-on: http://codereview.qt.nokia.com/1680
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Martin Jones [Thu, 14 Jul 2011 08:46:09 +0000 (18:46 +1000)]
Export qmlRegisterTypeNotAvailable (used by libqtquick1)
Change-Id: Iec7eba4bb8db97d5df486e512e8767a23b25c47b
Reviewed-on: http://codereview.qt.nokia.com/1647
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Oswald Buddenhagen [Mon, 18 Jul 2011 14:08:51 +0000 (16:08 +0200)]
make debug_and_release setting statement consistent with qt_module_config
Change-Id: I2e3e7a40e6bf8701715e7d7068ba7d47138e8d6c
Reviewed-on: http://codereview.qt.nokia.com/1784
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Marius Storm-Olsen [Tue, 19 Jul 2011 15:13:11 +0000 (15:13 +0000)]
Don't use QT_BUILD_TREE anymore
It's only valid in QtBase now, and even there one should not use it.
Change-Id: Ie3dae869b6523f6e2ef727771ae98e9b3f4678c3
Reviewed-on: http://codereview.qt.nokia.com/1838
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Marius Storm-Olsen [Tue, 19 Jul 2011 15:06:22 +0000 (15:06 +0000)]
Don't use CONFIG -= explicitlib as it messes up the PRL system
Change-Id: I75245d0eb21b2b612fd9c7f27a0eb86476e8ff8c
Reviewed-on: http://codereview.qt.nokia.com/1837
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Rohan McGovern [Tue, 19 Jul 2011 06:06:52 +0000 (16:06 +1000)]
Fixed compile (for certain configurations)
This project tried to use libQtTest, but omitted `QT+=testlib'.
In most configurations, this didn't matter, because:
- for includes, QtQuickTest has copied the content of some QtTest
headers, instead of #including them, so the bad INCLUDEPATH went
unnoticed
- for libraries, libQtTest would be pulled in implicitly either via
.prl files or via the system's linker, so the bad LIBS went
unnoticed
Change-Id: Ie3286718789758bfb80f6832aac7c08bdd85212a
Reviewed-on: http://codereview.qt.nokia.com/1812
Reviewed-by: Jonni Rainisto <jonni.rainisto@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Christian Kamm [Thu, 14 Jul 2011 07:04:17 +0000 (09:04 +0200)]
qmldump: Fix creation of objects from QDeclarativeTypes.
Previously, the import statement was not necessarily set up correctly
for the type we wanted to instantiate. We simply use
QDeclarativeType::create now and thus can skip finding the right import.
Mirrors qtcreator/
f326bd067d455e979b5d83195e19581a9e2fd494
Mirrors qt4.8/
bdbc3ff0a32bb37a32dc4825413e60f9d75e5007
Change-Id: Ic9e652b341854941c0e6a51f49f23dfaae4f87d7
Reviewed-on: http://codereview.qt.nokia.com/1648
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Michael Brasser [Mon, 18 Jul 2011 23:36:07 +0000 (09:36 +1000)]
Fix QSGItem transforms.
If a complex transform exists, it needs to be applied whenever there
are relevant changes (TransformUpdateMask), and not just when the
transform changes (ComplexTransformUpdateMask).
Change-Id: I395f6bed02a671b23dcb5d4ccb3be204d4bafd82
Reviewed-on: http://codereview.qt.nokia.com/1793
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Yann Bodson [Fri, 15 Jul 2011 04:28:57 +0000 (14:28 +1000)]
Add documentation for QSGImage
Change-Id: I1cfae5fb57025372789391632bac4cb97b8450dc
Reviewed-on: http://codereview.qt.nokia.com/1684
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Yann Bodson [Tue, 5 Jul 2011 03:06:54 +0000 (13:06 +1000)]
Improvements to Image element
- add Image.Pad as a fillMode
- add horizontal and vertical alignment properties
Task-number: QTBUG-18291
Change-Id: Iaaf3b2d02c47ad01d2c8b49d146f1a9401b2558d
Reviewed-on: http://codereview.qt.nokia.com/1468
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Michael Brasser [Mon, 18 Jul 2011 22:57:41 +0000 (08:57 +1000)]
qsgitem2 autotest fixes.
Change-Id: I7b15427af4f829e21b0a1266a70edc36b104f674
Reviewed-on: http://codereview.qt.nokia.com/1792
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Michael Brasser [Tue, 19 Jul 2011 07:24:56 +0000 (17:24 +1000)]
Fix qdeclarativexmlhttprequest autotest.
Updated test to expect deflate support after
2b5dcfcee118265ef7930cc7c5c16bff22d580fd in qtbase.
Change-Id: Ia2c98aecf7de6f1e12396b6e9adb27a322b0b283
Reviewed-on: http://codereview.qt.nokia.com/1815
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Christian Kamm [Thu, 7 Jul 2011 12:07:45 +0000 (14:07 +0200)]
qmlplugindump: Place executable in QT_BUILD_TREE/bin.
Change-Id: I751e8186aeaa2b87046cbe50c690cb0a312f71c5
Reviewed-on: http://codereview.qt.nokia.com/1306
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Charles Yin [Tue, 12 Jul 2011 06:49:15 +0000 (16:49 +1000)]
Add stock chart example for canvas item
Change-Id: I72aacfcb72b90d4d18f95cef3038a169c991a336
Reviewed-on: http://codereview.qt.nokia.com/1480
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Aaron Kennedy [Tue, 12 Jul 2011 06:46:09 +0000 (16:46 +1000)]
Enable support for QObject based module APIs
Task-number: QTBUG-17318
Change-Id: Ia887f563b337b1c34ff65a0559bb7f33c18b4e28
Reviewed-on: http://codereview.qt.nokia.com/1479
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Martin Jones [Mon, 11 Jul 2011 03:47:51 +0000 (13:47 +1000)]
Extract all QtQuick 1 elements into a separate library/plugin.
Change-Id: I41a280de2739ee08202f4be2519e5012870090f2
Reviewed-on: http://codereview.qt.nokia.com/1391
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Charles Yin [Mon, 11 Jul 2011 23:21:27 +0000 (09:21 +1000)]
Rewrite the canvas item's paint logic.
1. Only allow the context API calls inside onPaint() slot function,
makes the context2d handle invalid when out of scope.
2. requestPaint() method supports region parameter
3. Emit paint() signal in updatePolish() function to allow
threaded scene graph rendering work properly with context2d api
4. Allow request painting mutiple dirty regions between 2 frames.
5. Add svgpath for context2d
Change-Id: I5ec48f7c0eb6820d5c9c16a8d0dcc0aae8d0fd2f
Reviewed-on: http://codereview.qt.nokia.com/1465
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Samuel Rødal [Mon, 11 Jul 2011 10:35:43 +0000 (12:35 +0200)]
Fixed rendering errors in complex particle system.
We need to set the texture unit of the texture uniform as well, and we
might as well set all the texture units in initialize() since they're
constant.
Change-Id: Ifcc690351ec7d1db1d98ab74644e248ec43cd328
Reviewed-on: http://codereview.qt.nokia.com/1410
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Casper van Donderen [Mon, 4 Jul 2011 10:32:16 +0000 (12:32 +0200)]
Remove references to demos.
Change-Id: I21f935b6de8bdf6a5205f6048cdabf97e16b613a
Reviewed-on: http://codereview.qt.nokia.com/1060
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Samuel Rødal [Fri, 8 Jul 2011 10:18:04 +0000 (12:18 +0200)]
Fixed build of declarative against v8 on a x86_64 machine.
Change-Id: I3a8ca97e8f50754542af142e07bdeb6cb7d6f0de
Reviewed-on: http://codereview.qt.nokia.com/1362
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jocelyn Turcotte
Reviewed-by: <jedrzej.nowacki@nokia.com>
Aaron Kennedy [Fri, 8 Jul 2011 05:56:48 +0000 (15:56 +1000)]
Merge branch 'v8'
Conflicts:
src/declarative/qml/qdeclarativescarceresourcescriptclass.cpp
src/declarative/qml/qdeclarativescarceresourcescriptclass_p.h
Change-Id: I54e579307cbeafbbad21884218c5e797ba245c8b
Jyri Tahtela [Thu, 7 Jul 2011 12:52:03 +0000 (15:52 +0300)]
Update licenseheader text in source files for qtdeclarative Qt module
Replace old license header with correct one.
Change-Id: I492ddaaa0227b2c8faf11bdcd6e12e7231a54a10
Reviewed-on: http://codereview.qt.nokia.com/1312
Reviewed-by: Jyri Tahtela <jyri.tahtela@nokia.com>
Lars Knoll [Mon, 27 Jun 2011 21:00:28 +0000 (23:00 +0200)]
Replace the QGraphicsSceneHoverEvent with a QHoverEvent
One step towards getting rid of the remaining graphics view
dependencies
Change-Id: Ieeb84fc115c96393fdee453615a424679dc48177
Reviewed-on: http://codereview.qt.nokia.com/1139
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Alan Alpert [Tue, 5 Jul 2011 05:16:55 +0000 (15:16 +1000)]
Fix possible index out of bounds exception
The sprite engine count needs to grow to the same size as the system
index count, as the indexes are synchronized.
Change-Id: I299816bfe6ea437202a60078a512b8f1114cfea3
Reviewed-on: http://codereview.qt.nokia.com/1138
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Alan Alpert [Tue, 5 Jul 2011 10:38:46 +0000 (20:38 +1000)]
Update sync.profile dependencies to new syntax
%dependencies now has a simpler format of gitmodule => gitref instead of
using qt modules and keywords.
Change-Id: I8961a7f918b44176f55852de57d2effae016ebaa
Reviewed-on: http://codereview.qt.nokia.com/1159
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Casper van Donderen [Mon, 4 Jul 2011 10:11:38 +0000 (12:11 +0200)]
Move the demos to the examples folder.
Change-Id: I094383099bf116357a3bb6eed0052d6d14408558
Reviewed-on: http://codereview.qt.nokia.com/1059
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Aaron Kennedy [Mon, 4 Jul 2011 04:19:01 +0000 (14:19 +1000)]
Remove unused fields
Change-Id: I344beb3a01de5b7573a10f4709f334ac64677ad2
Reviewed-on: http://codereview.qt.nokia.com/1131
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Aaron Kennedy [Tue, 5 Jul 2011 03:46:30 +0000 (13:46 +1000)]
Register QDeclarativeV8Handle during construction
Otherwise it sometimes works, sometimes doesn't depending on whether
it was registered by a side effect.
Change-Id: Iaf62bcb0a92a7bc8f8858f38e2fe17ab53a733af
Reviewed-on: http://codereview.qt.nokia.com/1130
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Lars Knoll [Thu, 30 Jun 2011 08:53:50 +0000 (10:53 +0200)]
Use QWheelEvent instead of QGraphicsSceneWheelEvent
Since WheelEvent is not floating point based, we can
use it instead of the graphics scene event.
Change-Id: Ifa8411ca9c3a986ea311c8741f60213637b7c6ae
Reviewed-on: http://codereview.qt.nokia.com/1140
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Aaron Kennedy [Tue, 5 Jul 2011 03:01:50 +0000 (13:01 +1000)]
Correct handling of QObject* and QWidget* properties
Change-Id: I28eb68bc0236d5f7a7f9cc178462c3ad6055924e
Reviewed-on: http://codereview.qt.nokia.com/1128
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Yann Bodson [Wed, 6 Jul 2011 04:32:37 +0000 (14:32 +1000)]
Fix QSGBorderImage autotests
Change-Id: I6dd87232fc3d12a0ea3b8c25932d2ca01879fb3b
Reviewed-on: http://codereview.qt.nokia.com/1196
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Yann Bodson [Wed, 6 Jul 2011 03:39:23 +0000 (13:39 +1000)]
Fix QSGImage autotests
Change-Id: I05b7bd4ad98c952ef4d536b987e6afd589a729fb
Reviewed-on: http://codereview.qt.nokia.com/1194
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Christian Kamm [Tue, 5 Jul 2011 11:48:03 +0000 (13:48 +0200)]
qmlplugindump: Update qmltypes file format documentation.
(cherry picked from commit
bdae42967cd7fa9eb0182e1f25c1e743f35835f7)
Change-Id: Ia83eb42ad11f937b2977a53ee0f89c2e1b157278
Reviewed-on: http://codereview.qt.nokia.com/1164
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
Alan Alpert [Mon, 4 Jul 2011 08:15:28 +0000 (18:15 +1000)]
Squashed Particle System Stateful Rewrite
Add TargetAffector
Fix for ParticlePainter offsets
Adds a particleStates property to ParticleSystem
Augment SpriteGoal to change system states as well
Also add 'collidingParticles' list to affector.
Particle Stochastic States Now actually working, and you can put
emitters, affectors and painters inside their targeted state.
Fireworks example uses states instead of delegates.
Replaced the delegate example with a text thing.
The examples launcher now also contains all the custom examples.
Adds CumulativeDirection and working null Affector (for affected
signal).
Add spaces after all flow control keywords.
Change-Id: I77b7e3044a9800dbfff6db833914d63127602cf5
Reviewed-on: http://codereview.qt.nokia.com/968
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Aaron Kennedy [Mon, 4 Jul 2011 03:52:57 +0000 (13:52 +1000)]
Implement translation functions for V8
Change-Id: Ida84754969a355e7915233393a552655896ad359
Reviewed-on: http://codereview.qt.nokia.com/1028
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Aaron Kennedy [Mon, 4 Jul 2011 03:27:59 +0000 (13:27 +1000)]
Remove ASCII cache from QStringHash
Now that we have symbol ids, we struggle to recover the time spent
creating the ascii hash. We can reintroduce it if we need to.
Change-Id: Icb2adac6bbe69f94050e57418b7a8a7bfdb7e221
Reviewed-on: http://codereview.qt.nokia.com/1027
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Aaron Kennedy [Mon, 4 Jul 2011 02:41:21 +0000 (12:41 +1000)]
Optimize QDeclarativePropertyCache
The creation of QDeclarativePropertyCaches contributes significantly
to the initial compile time of a QML app.
Change-Id: Iac5d1578155dfa4678a0e21eab51f4c1675762a9
Reviewed-on: http://codereview.qt.nokia.com/1026
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Aaron Kennedy [Mon, 4 Jul 2011 01:57:47 +0000 (11:57 +1000)]
Don't exceed SMI bounds
If we use an integer that is greater than the maximum SMI value on
32-bit systems (like ARM), v8 allocates the integer as a HeapNumber
which is unbelievably slower.
Change-Id: I518b5947627631a2621344b656afa0dde002fe82
Reviewed-on: http://codereview.qt.nokia.com/1025
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Aaron Kennedy [Mon, 4 Jul 2011 01:41:43 +0000 (11:41 +1000)]
Compile
Change-Id: I3bc97df3cb768bcfba6581a291c6a8136cec8a92
Reviewed-on: http://codereview.qt.nokia.com/1024
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Alan Alpert [Mon, 4 Jul 2011 04:51:24 +0000 (14:51 +1000)]
Avoid crash on exit
QSParticlePainter could call QSGItem::mapFromItem while the scene was
being destroyed.
Change-Id: If9356dae6aadf97b853c2aaf51870751bbbab711
Reviewed-on: http://codereview.qt.nokia.com/1023
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones
Olivier Goffart [Wed, 29 Jun 2011 16:20:52 +0000 (18:20 +0200)]
Fix compilation
qsgdefaultrectanglenode.cpp:221:22: error: narrowing conversion of '(((& c)->QColor::redF() * (&c)->QColor::alphaF()) * 2.55e+2)' from 'qreal {aka double}' to 'unsigned char' inside { } [-fpermissive]
Change-Id: I4f051f07d5db28fd03739343c255cc72d968a99d
Reviewed-on: http://codereview.qt.nokia.com/1004
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Aaron Kennedy [Fri, 1 Jul 2011 06:31:17 +0000 (16:31 +1000)]
Improve performance of v8 string hashes by using symbol id
The symbol id is a unique integer associated with a string symbol in
V8. If two symbol ids are equal, then the strings are also equal.
However, if the two symbol ids are not equal, the strings may still
be equal.
Change-Id: Ic28f51a1eba568ae4b2a054e278f6e5e454725d6
Reviewed-on: http://codereview.qt.nokia.com/990
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Aaron Kennedy [Fri, 1 Jul 2011 06:31:05 +0000 (16:31 +1000)]
Variants should compare as equal
We need to implement an object comparison callback to ensure
that two variants with identical values (although different JS
objects) compare as equal.
We also add a v8 autotest for this callback.
Change-Id: Idd1ab602d31b398a937d4df4a7bd091aa205de24
Reviewed-on: http://codereview.qt.nokia.com/989
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Aaron Kennedy [Fri, 1 Jul 2011 06:30:34 +0000 (16:30 +1000)]
Update V8
Change-Id: I2736cb8fffaace5cbb9e91d12a75bdedf3f80627
Reviewed-on: http://codereview.qt.nokia.com/988
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Aaron Kennedy [Fri, 1 Jul 2011 06:30:06 +0000 (16:30 +1000)]
Add toString for variants
Change-Id: Ia64adeb3640f7f7eedccd7015de729969232a07f
Reviewed-on: http://codereview.qt.nokia.com/987
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Gunnar Sletta [Fri, 1 Jul 2011 06:19:52 +0000 (08:19 +0200)]
Support setting an FBO as the render target for a canvas
Change-Id: I8049580f1d2b27d6ebc4d595712939338c01b711
Reviewed-on: http://codereview.qt.nokia.com/986
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Charles Yin [Fri, 24 Jun 2011 01:13:17 +0000 (11:13 +1000)]
update canvas example
Change-Id: I8a797b85f88370c6ddfe64d40a6888aba06998d7
Reviewed-on: http://codereview.qt.nokia.com/693
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Aaron Kennedy [Fri, 1 Jul 2011 01:30:00 +0000 (11:30 +1000)]
Merge branch 'master' into v8-clean
Conflicts:
src/declarative/qml/qdeclarativevme.cpp
Change-Id: I0bbc12c06d40c70433730cb33c4e9b461520263f
Eskil Abrahamsen Blomfeldt [Tue, 28 Jun 2011 15:07:13 +0000 (17:07 +0200)]
Fix text color in some cases of QML and QStaticText
This reverts
518c2a58ed6fdfd7449cb4476aa8ea0d32ad16e3 which caused a
regression.
When writing systems are mixed and an underline is set on the font,
QPainter will set a pen with the current color and a new width on
itself before drawing the decoration. This would cause the recorder
in QStaticText to mark the pen as dirty, saving the current pen
color in all subsequent text items. The effect was e.g. that in QML
the cached color would override the current one, making it impossible
to change the color on the text without forcing a relayout somehow.
The right fix is to only mark the pen as dirty when its color actually
changes.
Task-number: QTBUG-20159
Change-Id: I0db1966787f543695bcba4a0c13328ae0a17625b
Reviewed-by: Jiang Jiang
Reviewed-on: http://codereview.qt.nokia.com/875
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Gunnar Sletta [Thu, 30 Jun 2011 08:43:31 +0000 (10:43 +0200)]
Document threading issues with QSGEngine signals
Change-Id: I769c0793929c4c90464f6e9fea46bd1a19fbacf3
Reviewed-on: http://codereview.qt.nokia.com/939
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Christian Kamm [Wed, 29 Jun 2011 08:06:39 +0000 (10:06 +0200)]
qmlplugindump: Improve error message for misbehaving plugin components.
Mirrors
6244008dcb43dde15dea3becbbec07d941b4759c
in Qt Creator/2.3.
(cherry picked from commit
a39e975465a5dc0548891ccd93c4ff04165b60cd)
Change-Id: I995eebe065ecf8b4f185d61987240f39ad11b57f
Reviewed-on: http://codereview.qt.nokia.com/871
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Alan Alpert [Wed, 29 Jun 2011 08:05:46 +0000 (18:05 +1000)]
Correct example snippet in QML positioner documentation
Task-number: QTBUG-19928
Change-Id: I0fd0f07525bbc1e08edaa636beee9f9ff4b8ad1b
Reviewed-on: http://codereview.qt.nokia.com/869
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Jiang Jiang [Mon, 27 Jun 2011 14:39:42 +0000 (16:39 +0200)]
Clean up addTextDecorations code
Try avoid using QRawFont::fromFont since it requires shaping on Mac.
Change-Id: I90cc177662ecf6d0a95e722cdd0b06a01e5d0eaa
Reviewed-on: http://codereview.qt.nokia.com/793
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Christian Kamm [Wed, 29 Jun 2011 12:23:01 +0000 (14:23 +0200)]
qmlplugindump: Change to QtQuick 2.0 import.
To be future-proof should QtQuick 1.0 ever go away.
Change-Id: I9bf46bc9f60f5ff61deb60fa2ffa90ea89c9c8d5
Reviewed-on: http://codereview.qt.nokia.com/899
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Christian Kamm [Wed, 29 Jun 2011 12:00:34 +0000 (14:00 +0200)]
qmlplugindump: Fix dumping with -path on Mac.
If the current working directory was a direct parent of the qmldir path
the exported modules had the path as the module URI on macs.
Also changes the QtQuick export back to 1.0 to make it work with
Qt 4.7.3. The version of that import statement does not actually matter
as long as it's valid.
Mirrors a change in Qt Creator:
http://codereview.qt.nokia.com/896
(cherry picked from commit
d7ab0007d4b051f3cf12f01157b8b78d2fddf7c8)
Change-Id: Ib8caa8eda7f237b10e82df3afd560c118427aa8f
Reviewed-on: http://codereview.qt.nokia.com/897
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Christian Kamm [Mon, 27 Jun 2011 08:07:29 +0000 (10:07 +0200)]
Fix UiPublicMember::lastSourceLocation.
Change-Id: Ia2c13bf250b0b0e3d87ff7bd64a3bead1c26c1f0
Reviewed-on: http://codereview.qt.nokia.com/755
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Christian Kamm [Mon, 27 Jun 2011 09:01:20 +0000 (11:01 +0200)]
qmldump: Fix export comparison.
Compare the full uri/name, not just the uri. Also
QDeclarativeType::module was not available in 4.7.3.
Mirrors http://codereview.qt.nokia.com/759
(cherry picked from commit
a0bd8d2dc68fdf993821b5eb881769448b34dffd)
Change-Id: Ib66ec79b929bd29e3aa27a1b70e5a5c1ec2d51e5
Reviewed-on: http://codereview.qt.nokia.com/762
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Gunnar Sletta [Tue, 28 Jun 2011 06:00:39 +0000 (08:00 +0200)]
Don't crash when QSGCanvas::sceneGraphContext() is called prematurly
Change-Id: Ib15814bbc095c1be87a8fcddb574444d5258afbb
Reviewed-on: http://codereview.qt.nokia.com/813
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Rohan McGovern [Fri, 24 Jun 2011 14:49:39 +0000 (00:49 +1000)]
Fixed failure of tst_examples::namingConvention
Since
1fab62b930edd4abed076e57ee997eae09159f22 in qtbase, demos and
examples are merged. This was causing the test to unintentionally
iterate over the entire source tree.
Change-Id: I8e60c5742a3c15a4187f6c8cdac3cdc7f7ee24c0
Reviewed-on: http://codereview.qt.nokia.com/729
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Rohan McGovern [Fri, 24 Jun 2011 14:42:42 +0000 (00:42 +1000)]
Improve failure message of tst_examples::namingConvention
If this test fails, make sure the failure message contains the reason
for the failure.
Change-Id: Id9135a6bd0fc2cc50d604de545f4395ef6ef2294
Reviewed-on: http://codereview.qt.nokia.com/728
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Aaron Kennedy [Fri, 24 Jun 2011 06:37:03 +0000 (16:37 +1000)]
Merge branch 'qtquick2' of scm.dev.nokia.troll.no:qt/qtdeclarative-staging
Conflicts:
src/declarative/items/qsgtextnode.cpp
Charles Yin [Fri, 24 Jun 2011 01:10:58 +0000 (11:10 +1000)]
update canvas example
Change-Id: I901532eafabc0344f3978c0093ee56ed230c74b0
Charles Yin [Fri, 24 Jun 2011 01:10:34 +0000 (11:10 +1000)]
add drawRegion signal for canvas item
Change-Id: I8dadcb292b5c99d5f520672ab02db3490b21e8fa
Thorbjørn Lindeijer [Fri, 10 Jun 2011 15:54:29 +0000 (17:54 +0200)]
Removed unnecessary qobject_cast in QSGItem::childAt
No point in casting a QSGItem to a QSGItem and checking whether it
really was one.
Change-Id: Iaa82e1cb62f801f456b9020c4d410c13bfd3a9ea
Reviewed-by: Gunnar Sletta
Thorbjørn Lindeijer [Tue, 21 Jun 2011 08:58:37 +0000 (10:58 +0200)]
QmlInspector: Introduced more self-contained selection highlight
The SGHighlight will update itself when its item changes position or
size. Previously, the hover highlight wasn't updating at all.
The highlight now also works correctly for rotated items (but not yet
for children of rotated items).
Change-Id: Idb14f356d779aef8e2d3e16a496685f0507a7060
Thorbjørn Lindeijer [Fri, 10 Jun 2011 15:52:25 +0000 (17:52 +0200)]
QmlInspector: Some code cleanups
* Inlined empty method implementations
* Removed unused QDeclarativeViewInspectorPrivate::cursosPos
* Small simplification in setting shortcuts
* Prefer const & for QList parameter
Change-Id: I5c2c04f32bb311a835d79a59206d6ebab212c73b
Thorbjørn Lindeijer [Fri, 10 Jun 2011 15:47:33 +0000 (17:47 +0200)]
QmlInspector: Implemented context menu for SceneGraph
Change-Id: I467bdba42af0ff4b680c31a3545e059a56016a57
Thorbjørn Lindeijer [Thu, 9 Jun 2011 16:15:34 +0000 (18:15 +0200)]
QmlInspector: Implement tool tip handling for SceneGraph
Change-Id: I84fc21f3e5bd96290910def26cd59e7e35719149
Thorbjørn Lindeijer [Thu, 9 Jun 2011 15:17:24 +0000 (17:17 +0200)]
QmlInspector: Some cleanup in the Color Picker tool
Also, the tool now picks a color on press rather than on release.
Change-Id: Ibe09e3cd7350521e90e0957e7d1afbce4d880e57
Thorbjørn Lindeijer [Thu, 9 Jun 2011 15:15:23 +0000 (17:15 +0200)]
QmlInspector: Implemented selection for SceneGraph
The highlight items are now based on QSGPaintedItem rather than the
internal QSGRectangle.
Change-Id: I50222116cf5f98ec93f914298a554b3d2d901c28
Thorbjørn Lindeijer [Thu, 9 Jun 2011 11:30:47 +0000 (13:30 +0200)]
QmlInspector: Unified mouse and keyboard event handling
Introduced a common AbstractTool interface so that the
AbstractViewInspector can forward mouse and keyboard events and
also implement the keys to switch tools.
The AbstractLiveEditTool still exists as the base class for all
QDeclarativeView based tools.
Change-Id: I7c00b05fba58828378543645e32732ad5f9fd5d0
Thorbjørn Lindeijer [Wed, 8 Jun 2011 17:37:25 +0000 (19:37 +0200)]
QmlInspector: Removed private header postfix and Qt namespace
Renamed the headers back to normal since they are not included in a Qt
library. Also took the classes out of the Qt namespace and back into
the QmlJSDebugger namespace.
This is mainly to make it easier again to port changes back into the
version of the inspector shipped with Qt Creator.
Change-Id: I820c2372089c24a42404b4055be1b938e384e352
Thorbjørn Lindeijer [Wed, 8 Jun 2011 15:47:47 +0000 (17:47 +0200)]
QmlInspector: Share code between QGV/SG based QML debugging
Introduced AbstractViewInspector, which forms the base class for
QDeclarativeViewInspector and SGViewInspector and is where common code,
like handling the protocol is placed.
Some virtual and pure virtual functions exist which the subclasses will
override or implement for QDeclarativeView/QSGView specific stuff.
Change-Id: Iad7d15e19e0701d550ec42288fdad7490cf9b8a7
Thorbjørn Lindeijer [Thu, 9 Jun 2011 08:52:10 +0000 (10:52 +0200)]
QmlInspector: Initial support for QSGView based applications
Currently only displays a rectangle highlighting the item below the mouse,
but it's a start.
Change-Id: I9946a923add4c53780546ac4bf138fe731508da2
Kim Motoyoshi Kalland [Thu, 23 Jun 2011 12:13:24 +0000 (14:13 +0200)]
Updated tst_nodestest to use the DirtyForceUpdate flag.
Changed test to use DirtyForceUpdate instead of DirtyAll, and
removed DirtyRenderOrder and DirtyAll enums which should not
be used.
Christian Kamm [Wed, 22 Jun 2011 15:13:56 +0000 (17:13 +0200)]
qmlplugindump: For extended types, remove exports of the base object.
Reviewed-by: Kai Koehne
(cherry picked from commit
21af9f0be1dd0d9be6c3767074fdfbd54e3b8372)
Christian Kamm [Wed, 22 Jun 2011 12:59:48 +0000 (14:59 +0200)]
qmlplugindump: Build debug version if possible.
Done-with: owolff
(cherry picked from commit
19b666195e293a71ef918f4a7f91d7f8be5f69bc)