J-P Nurmi [Tue, 3 Feb 2015 16:26:08 +0000 (17:26 +0100)]
TextInput: update the baseline offset when vertical alignment changes
Change-Id: I2153e879c7ad8b770d5ca47dac68f994bb171b2d
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Michael Brasser [Mon, 2 Feb 2015 17:23:31 +0000 (11:23 -0600)]
Fix Text wrapping when growing from 0 width.
The fix for QTBUG-30896 caused a regression in the test case. Now check
both width and implicit width validity before resetting widthExceeded.
Change-Id: I4aba2aad299746906cfe20e288fa60cfe2acc64f
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Daiwei Li [Fri, 23 Jan 2015 22:42:33 +0000 (14:42 -0800)]
qquicktest: Wait for the view to finish loading
Tests can be skipped if the view is still loading by the time we get
to the end of the loop. There is a case where the window is active
but the QML hasn't been loaded.
Change-Id: I4e8346ee547653810458d042925d673748c1fec8
Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Daniel Vrátil [Wed, 28 Jan 2015 18:09:04 +0000 (19:09 +0100)]
Fix possible crash when removing items from QQmlDelegateModel
When iterating over the cache in QQmlDelegateModel::_q_itemsRemoved(), removing
of some of the items can trigger layout change in the view, which might in turn
remove a QQmlDelegateModelItem from the cache, causing us to dereference an
already deleted pointer.
To prevent crash, we always check whether the item is still valid in the original
cache and skip it if it has been removed in the meanwhile.
Task-number: QTBUG-34351
Change-Id: Ib91a0544e11dbd7bf6d82fa4dc4400cac9d0b5f7
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
Liang Qi [Wed, 7 Jan 2015 22:04:36 +0000 (23:04 +0100)]
Doc: Fixed a broken link about sprite sheet script
Change-Id: Ia574bee49f9c509c83bf9818442fbd314a0259b7
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
Joni Poikelin [Wed, 19 Nov 2014 13:25:02 +0000 (15:25 +0200)]
Fix vertical positioning of the first image in Text
Task-number: QTBUG-38528
Change-Id: Ie16000cf9ba20598da51683751a8fb62798a1322
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
J-P Nurmi [Thu, 29 Jan 2015 13:14:54 +0000 (14:14 +0100)]
Doc: add missing "winrt" & "winphone" to Qt.platform.os
Change-Id: Idc252cc0303ffd7e8259cd9bf19a05a643657600
Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com>
Reviewed-by: Karim Pinter <karim.pinter@digia.com>
J-P Nurmi [Thu, 29 Jan 2015 13:15:35 +0000 (14:15 +0100)]
Doc: fix Qt.platform.os since -tag
Change-Id: I623ae8818d6d8f10faec2f823c4d27a37d8fecda
Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com>
Friedemann Kleint [Mon, 26 Jan 2015 08:25:15 +0000 (09:25 +0100)]
Verify context creation in Quick tests.
Verify initialization steps and initialize pointers to avoid
crashes.
Change-Id: I2d3a53c6719727aed56e673d0d8cf5a02ae0f0f6
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Alex Richardson [Wed, 21 Jan 2015 09:10:01 +0000 (09:10 +0000)]
Don't crash on FreeBSD when computing stack limits
On FreeBSD pthread_attr_t is a pointer and is dereferenced when calling
pthread_attr_get_np() so if we don't initialize it will probably crash.
This is not a problem on glibc systems since there pthread_attr_t is an
opaque union an doesn't need to be allocated using malloc().
Change-Id: I227685ddf9981974ade08aee8917f7262c301787
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Mitch Curtis [Tue, 27 Jan 2015 17:09:56 +0000 (18:09 +0100)]
Ensure that Canvas has the correct size with complex bindings.
When a Canvas is a child of an item with certain width and height
values (as described in the bug report), it won't paint correctly.
For example, the order of events might occur like so:
1. Canvas width set to 1
2. Canvas height set to 1
3. Canvas width set to 32, which causes the height to also be set to 32
Every size change causes QQuickCanvasItem::geometryChanged() to be
called, but the third event above causes it to be called recursively,
such that the most nested call results in the size being 32x32, but
then the execution returns to the first call and 32x1 is used instead,
overwriting the correct size.
We fix this by setting the new canvas size to width() and height(),
ignoring the recursion and instead using the latest size of the item.
Change-Id: Iebbcbfaa3217319b32b97f6b68f7a8af197a0e89
Task-number: QTBUG-42878
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Pierre Rossi [Tue, 27 Jan 2015 12:29:49 +0000 (13:29 +0100)]
Doc fix: QHistoryState is registered in QML as HistoryState
The documentation enum values should reflect that.
Task-number: QTBUG-44088
Change-Id: I0042da252eac10301fff4289402f158a7b0d0ff6
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Mitch Curtis [Mon, 26 Jan 2015 14:53:15 +0000 (15:53 +0100)]
Canvas: don't crash when getContext("2d") is called on destruction.
We'd assume that a Window existed when that's not always the case.
For example:
import QtQuick 2.4
import QtQuick.Window 2.2
Window {
Loader {
sourceComponent: Canvas {
Component.onDestruction: getContext("2d")
}
Component.onCompleted: active = false
}
}
Change-Id: I5f30876e21ced5658adfa3bac494fd4196e0a7e3
Task-number: QTBUG-42222
Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
Laszlo Agocs [Mon, 19 Jan 2015 17:06:07 +0000 (18:06 +0100)]
Avoid sRGB usage when targeting an incapable FBO
Native text rendering results in very different output on OS X
with QQuickWidget/QOpenGLWidget. When targeting an FBO, enabling
sRGB is futile if the FBO was not created with the correct format.
In this case we need to disable the usage of sRGB.
Task-number: QTBUG-42861
Change-Id: I887482e70be2cbfba40d6758546128d03b36def1
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
Pasi Petäjäjärvi [Wed, 21 Jan 2015 10:35:38 +0000 (12:35 +0200)]
V4: include alloca private header as alloca is used unconditionally.
Change-Id: Ic94a7ec3980ca9e2629620ef83c93b179d75162b
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Pasi Petäjäjärvi [Wed, 21 Jan 2015 10:14:18 +0000 (12:14 +0200)]
Use sysconf function for getting memory page size
Function getpagesize is deprecated and should not be used.
Change-Id: I4d4827662b2e8cb1e668129491a11d58f6722a1d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Eike Ziller [Wed, 21 Jan 2015 13:32:08 +0000 (14:32 +0100)]
Image: Fix that HiDPI image was not found with QRC alias
When using images in QRC and giving the 1x and 2x image files
respective aliases but without any file extension
(for example 'myimage' and 'myimage@2x'),
then Image would fail to find the 2x variant.
Task-number: QTBUG-44049
Change-Id: I20d0cb2eb48b909775b0ba737b850bc1b6697b35
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Pasi Petäjäjärvi [Wed, 21 Jan 2015 14:02:17 +0000 (16:02 +0200)]
Fix usage of pow to C99 standard compliance
Change-Id: I37c25b848dd3f53afff360d81a3a685cbd8e5d26
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Laszlo Agocs [Tue, 20 Jan 2015 19:05:41 +0000 (20:05 +0100)]
Fix docs for QQuickWindow::RenderStage
Change-Id: I55265f16de153289b3e6f80d510d428f48492bbb
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Nico Vertriest [Mon, 19 Jan 2015 14:21:07 +0000 (15:21 +0100)]
Doc: link issues qtdeclarative
Added modules to depends stat. qtquick.qdocconf
Task-number:QTBUG-43810
Change-Id: If6010a382e2c9011b7599f25eb31ba9c9c3b3eb0
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Mitch Curtis [Fri, 16 Jan 2015 10:13:10 +0000 (11:13 +0100)]
Fix grammar in Keyboard Focus documentation.
Change-Id: Ia15e5fbe9b241f99bd0c43b427e20273fa35ac67
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Topi Reinio [Wed, 14 Jan 2015 13:54:51 +0000 (14:54 +0100)]
Doc: Rename section title 'Text' to prevent incorrect linking
Other modules use 'Text' as a link target, with the intention
to link to the Text QML type.
This change renames a section title on the "What's New" page.
This way, links to 'Text' will always be resolved to the
correct page.
Change-Id: I69738d91cb3c01db794c38331a448c9f954fbd2b
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Alejandro Exojo [Mon, 8 Dec 2014 16:58:50 +0000 (17:58 +0100)]
Fix and improve links to Component::completed
Change-Id: I39771b861c529550c59f142c054b108f7a8bc7ff
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Laszlo Agocs [Fri, 16 Jan 2015 10:01:58 +0000 (11:01 +0100)]
Scale mipmapped npot images when not supported
Task-number: QTBUG-43847
Task-number: QTBUG-40789
Change-Id: Iceacaa49bafffb31752a9fb26c896df570153fec
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Oswald Buddenhagen [Fri, 16 Jan 2015 20:06:16 +0000 (21:06 +0100)]
Bump version
Change-Id: I76075ba7fb535febe7a723ec80451eb9d61cf1ec
Simon Hausmann [Tue, 13 Jan 2015 15:59:22 +0000 (16:59 +0100)]
Fix failing assertion in debug builds for JS that calls constants
For
true()
we generate IR that looks like this:
temp = true
result = call temp()
and therefore the move at isel time has IR::Call as source and a temp
as base for the call. However constant propagation in the optimizer transforms
this to
result = call true()
and that's a case we didn't handle in the IR visitor. Since we have
Runtime::callValue we can however handle this case as well and the run-time
will consequently produce the expected run-time error.
Change-Id: Ia94a8116388e66f9f339913307f68e33a5c18a19
Task-number: QTBUG-43819
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Reviewed-by: Jan Kundrát <jkt@kde.org>
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Gunnar Sletta [Sun, 11 Jan 2015 15:38:19 +0000 (16:38 +0100)]
doc: The correct enum name is 'Time', not 'LastModified'.
Change-Id: I4e75b97e9e70a440a2e2ec96af04d004323f09bb
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Ulf Hermann [Mon, 17 Nov 2014 13:43:27 +0000 (14:43 +0100)]
Make opengl context current in context2d's toImage if necessary
With the basic render loop the scene graph thread is the render thread
and thus we don't get a different opengl context for context2d in
immediate/fbo mode. We have to make sure the opengl context is current
when we call flush() from functions exposed to JS.
Change-Id: Idd91cf1ce9c299a7645cf3b78d4498652376b17e
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Laszlo Agocs [Thu, 8 Jan 2015 12:51:01 +0000 (13:51 +0100)]
Fix timing output from windows render loop
Print the frame time, not the total, and in milliseconds.
Change-Id: Ia7fe3bea8efafcce475c49517d7adab1b3841729
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Kai Koehne [Mon, 5 Jan 2015 14:31:20 +0000 (15:31 +0100)]
Print exceptions in JS slots
Do print JS exceptions raised in slots to the console, and clear the
status afterwards. Otherwise exceptions raised might silently propagate
to later JS calls.
Change-Id: I122f3026aa18028415c5a4672cb3287e7d58ac4d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Mitch Curtis [Thu, 8 Jan 2015 15:48:01 +0000 (16:48 +0100)]
Fix grammatical error in Text and TextEdit documentation.
Change-Id: I6fd68166108a060931cd6bcd64ccd865d251a4c3
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
J-P Nurmi [Mon, 17 Nov 2014 11:36:30 +0000 (12:36 +0100)]
TextEdit: fix construction time text cache
QQuickTextEdit does not apply cached text to the underlying document
until component construction is complete. However, if text() was called
during the construction (eg. because of a binding), it would blindly
overwrite the cached text with (still) empty document content.
Task-number: QTBUG-41583
Change-Id: I6c5c1b6283d70d8a5ec2c8bd986095ee3c35a14c
Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
Albert Astals Cid [Mon, 5 Jan 2015 13:44:36 +0000 (14:44 +0100)]
Parse dates as Qt::RFC2822Date too
[ChangeLog][QtQml] Fix JavaScript Date parsing to correctly accept RC2822 dates.
Task-number: QTBUG-38011
Change-Id: Ic7d3f5b8c624d6780d4c3595fd2efe22c427ffd3
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Alejandro Exojo [Sat, 27 Dec 2014 09:31:05 +0000 (10:31 +0100)]
doc: Fixed copy/paste errors in DSM snippets
The comments make sense only for the first button, the one that changes
the text label.
Change-Id: I984f3eff7c797cbccafcba2a0eeaaff9001094e6
Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Nobuaki Sukegawa [Sun, 14 Dec 2014 06:39:50 +0000 (15:39 +0900)]
Remove unnecessary QString::toUtf8 method call
Change-Id: Idc4c5466e23e72d33441bbc19f03fbc27348b09f
Reviewed-by: Alejandro Exojo Piqueras <suy@badopi.org>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Nobuaki Sukegawa [Sat, 13 Dec 2014 13:17:04 +0000 (22:17 +0900)]
Fix invalid assertion
Change-Id: Ifd26d6863ad396e15d0097ed560eee8d281caccd
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Simon Hausmann [Fri, 19 Dec 2014 11:39:21 +0000 (12:39 +0100)]
Fix GC crash with conditional breakpoints and JS console
We may choose to execute an expression in a specific frame within the
debugger, which is where we pop context's until we reached the frame
in question. If we are trying to execute an expression at the top of the
stack (or with a conditional breakpoint expression), then we don't have
a frame and don't need to pop contexts. But also also don't need to call
Scope::alloc(-1).
Change-Id: I1f6754a3d77d943aed9bf4468e817a5269a3c547
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Erik Verbruggen [Thu, 18 Dec 2014 10:46:37 +0000 (11:46 +0100)]
QMLJS: remove unused/unsupported command-line options
Change-Id: I9710a20752c318a0572aef43779c0289bedf0aa5
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Andy Shaw [Thu, 18 Dec 2014 08:21:28 +0000 (09:21 +0100)]
Fix compile issue with -opengl dynamic on Windows
Change-Id: I2b17482c0e8d04718e91b9772784afce4ebdc101
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Erik Verbruggen [Tue, 16 Dec 2014 10:40:24 +0000 (11:40 +0100)]
V4: fix reverse type propagation
Only do integer add/sub/mul when all operands are known to be integers.
[ChangeLog][QtQml] Fixed invalidly opportunistic truncating of non-integer values for additions/subtractions/multiplications in JavaScript and binding expressions.
Change-Id: I21b3bede2fb3e8033305591110b98cc9e6bf52f8
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Erik Verbruggen [Thu, 18 Dec 2014 09:24:22 +0000 (10:24 +0100)]
V4: only optimize out to-int32 conversions when the operands are int32.
The operands of bit-ops are not typed as int32 when no type-inference is
done, like for the interpreter.
Task-number: QTBUG-43309
Change-Id: I67af18e14ddbc0649530ac23601332ee7d7a1f34
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Venu [Wed, 17 Dec 2014 14:17:56 +0000 (15:17 +0100)]
Doc: Updated the snippet to call the right function
Change-Id: I0ac6424e728b8a06f6bcbe30d036a22f649129bb
Task-number: QTBUG-43406
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Laszlo Agocs [Tue, 16 Dec 2014 12:59:10 +0000 (13:59 +0100)]
rendercontrol example: calculate fbo size correctly
Take device pixel ratio into account.
Change-Id: I729d562ad9523e11ee304136f668f496d4e00f37
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
Sérgio Martins [Wed, 10 Dec 2014 22:55:02 +0000 (22:55 +0000)]
Fix build with MinGW due to -Werror
On Windows the correct format is %I64d and %I64u:
https://stackoverflow.com/questions/2844/how-do-you-printf-an-unsigned-long-long-int
Similar ifdefs are found in testlib/qtestcase.cpp
Change-Id: Ic65e60f7d391285e292ac8c65944d8af3be205f4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Daiwei Li [Mon, 15 Dec 2014 05:31:30 +0000 (21:31 -0800)]
Fix QQuickText alignment when lineHeight is set
Text is always aligned to the top of the lineHeight rectangle,
and no offset is added when verticalAlignment is set to AlignVCenter
or AlignBottom. This change adds an offset based on the lineHeight
and font height in those cases.
Task-number: QTBUG-42050
Change-Id: Ibc63c80d4178b0f5c498cc126156df828855fd76
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
Alex Blasche [Thu, 11 Dec 2014 13:23:01 +0000 (14:23 +0100)]
Change Qt bugtracker URL to qt.io
Change-Id: I3dde034b2a36c324df9f4e1fd2e05a07a7237c04
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Alejandro Exojo [Fri, 12 Dec 2014 09:42:02 +0000 (10:42 +0100)]
Mark qmlRegisterCustomExtendedType as \internal
The function was added in 5.4, but it makes use of QQmlCustomParser,
which at the moment is private API. This way Qt3D or bleeding edge users
can still use the function, while keeping freedom to change
QQmlCustomParser.
Since 5.4.0 had the typo in the \relates, users won't see a change from
5.4.0 to 5.4.1.
Change-Id: I7f791f5b39e2a2c9fc83f4c450e6da9eec5b5e46
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Oswald Buddenhagen [Fri, 12 Dec 2014 12:47:54 +0000 (13:47 +0100)]
Bump version
Change-Id: Id0e49a99f2862d6dcc05f176769fdee0643524ee
Paul Olav Tvete [Wed, 10 Dec 2014 14:11:59 +0000 (15:11 +0100)]
Input method support for QQuickWidget
Make sure QGuiApplication::focusObject() returns the QQuickItem
that has focus, and forward input method events.
Task-number: QTBUG-42677
Change-Id: Ic07f93a2529c3dde67272b489bdc61fd25582a69
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
Alejandro Exojo [Wed, 10 Dec 2014 11:47:46 +0000 (12:47 +0100)]
Restore extension types documentation
The documentation on QML extension types was accidentally removed on the
big restructuring of commit
28def0bdd084989c17a157e0c4ab80c259081caa.
This restores it to a section on the "Defining QML Types from C++" page
mostly unchanged, and makes the source of the example that was already
there visible.
The reference documentation of the qmlRegisterExtendedType is added as
well, and the one for qmlRegisterExtendedUncreatableType and
qmlRegisterCustomExtendedType that was added in
fcb40ff6d71f4561401e6b2bd4d7fc706fff8eee is now fixed. It was not being
generated because referred to "QQmlEgine" instead of "QQmlEngine".
Change-Id: I1403b10076c64a4c0d760f72b06dd52c38b351a5
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Erik Verbruggen [Fri, 5 Dec 2014 12:58:22 +0000 (13:58 +0100)]
QML Debugging: Fix breakpoints/stepping in a with-statement.
Also fix the stack-trace generation, otherwise the debugger engine would
report a breakpoint hit on the wrong line.
Change-Id: I6eb4b508fbdca64d03badd8f9312a05c78781ded
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Marko Kangas [Mon, 8 Dec 2014 10:56:52 +0000 (12:56 +0200)]
Add hiDPI @2x retina image support to AnimatedImage
Copied hiDPI image support from base Image-class in to overwritten load()
function that ignored it before.
Change-Id: Iee89b572b523bbf990b6dd0e94c59c71f2b2ed31
Task-number: QTBUG-43104
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Jocelyn Turcotte [Wed, 26 Nov 2014 14:58:12 +0000 (15:58 +0100)]
Fix the visualization of unmerged batch geometries without index
indexData() is null for most QSGGeometryNodes subclasses in QtQuick,
make sure that we draw using vertex array data in that case.
The patch also increases the contrast of the line pattern, since it
is almost invisible with brighter hue values, to make it easier to
see which batches aren't merged.
Change-Id: Ife7b26692ee318feb0810ee0e787289eb151ea8a
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Sérgio Martins [Sun, 7 Dec 2014 01:37:57 +0000 (01:37 +0000)]
Windows: Don't disable JIT
[ChangeLog][QtQml][Windows] V4 JIT was re-enabled after it was disabled by mistake in 5.4.0.
Task-number: QTBUG-43171
Change-Id: I16206e094c210b1eadbfef9ee04cf78d3a7dcebe
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Erik Verbruggen [Fri, 5 Dec 2014 12:16:14 +0000 (13:16 +0100)]
QML Debugging: Fix crash when stepping through try-catch block.
Also fix the stack-trace generation, otherwise the debugger engine would
report a breakpoint hit on the wrong line.
Task-number: QTBUG-42723
Change-Id: I1f655a5174b28a1c9c31c85bbe023fbce5ddbb96
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Erik Verbruggen [Mon, 8 Dec 2014 09:26:08 +0000 (10:26 +0100)]
QML: fix warning in tests
Mark unused fields as Q_UNUSED. They are still "used" to check if the
compiler will generate warnings/errors (which it shouldn't).
Change-Id: I38e1668e88d94ab8f26a92a06f5207b77369e136
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Erik Verbruggen [Mon, 8 Dec 2014 09:25:09 +0000 (10:25 +0100)]
QML: fix warning in tests
Remove unused function that wouldn't be emitted anyway.
Change-Id: I623d5d44bca9a1358cf9e66ff557992aba9ae451
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Erik Verbruggen [Mon, 8 Dec 2014 09:24:42 +0000 (10:24 +0100)]
QML: fix warning in tests
Remove unused constant.
Change-Id: I3fb3512f7ea54102450eeeda1a56c73fe6b26025
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Simon Hausmann [Tue, 9 Dec 2014 08:53:01 +0000 (09:53 +0100)]
Merge "Merge remote-tracking branch 'origin/5.4.0' into 5.4" into refs/staging/5.4
Erik Verbruggen [Mon, 8 Dec 2014 09:24:06 +0000 (10:24 +0100)]
QML: fix warning in tests
Remove unused class field.
Change-Id: I90981546e33d4839a91c418a8746e6f2ebc3bf46
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Erik Verbruggen [Mon, 8 Dec 2014 09:22:47 +0000 (10:22 +0100)]
Quick: fix test
/Users/erik/dev/qt5-stable/qtdeclarative/tests/auto/quick/qquickgridview/tst_qquickgridview.cpp:1561:60: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
items << qMakePair(QString("new item " + j), QString::number(j));
~~~~~~~~~~~~^~~
Change-Id: I94bd952abf82a8f174772482330b5fdd636578ad
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Michael Brasser [Sat, 6 Dec 2014 16:38:34 +0000 (10:38 -0600)]
Avoid string-based connect in QQuickImageBase.
String-based connect is relatively slow, and should be avoided in core
items. This improves performance of the
tst_librarymetrics_performance::instantiation_cached(043) image - empty
test case (approximately halving the time).
Task-number: QTBUG-43096
Change-Id: I02485c515435eceacc95c55f877fc8566e7406d7
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Alejandro Exojo [Fri, 5 Dec 2014 19:14:20 +0000 (20:14 +0100)]
Fix \inqmlmodule usage: only use one parameter
Since the command just links back to the corresponding module page, only the
first parameter is used, and the version causes more confusion.
Change-Id: I73ed289550c576747132f77b83c1257094059cd1
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Simon Hausmann [Fri, 5 Dec 2014 10:58:05 +0000 (11:58 +0100)]
Merge remote-tracking branch 'origin/5.4.0' into 5.4
Change-Id: I5978bab8a4fde4c2ee33907fd81f49cb69e4fb26
Ulf Hermann [Tue, 2 Dec 2014 17:26:46 +0000 (18:26 +0100)]
QQmlInspectorService: handle views only with supported plugins.
Task-number: QTBUG-43048
Change-Id: I5b32bd0a1e28fdf56b5346580daf21e7ec1b9f8c
Reviewed-by: Kevin Funk <kevin.funk@kdab.com>
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Fawzi Mohamed [Thu, 4 Dec 2014 17:00:40 +0000 (18:00 +0100)]
qttest: make findChild available only for QtTest 1.1
Change-Id: I4ceb1a969bd4296b82f899088b02b5e8cf100bcd
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Kai Koehne [Thu, 4 Dec 2014 08:50:44 +0000 (09:50 +0100)]
Update plugins.qmltypes
Change-Id: I9b6c54b572d4653d609b154000e274b9e64d591f
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Kai Koehne [Thu, 4 Dec 2014 13:19:09 +0000 (14:19 +0100)]
Add string::arg method in installTranslatorFunctions
QJSEngine::installTranslatorFunctions install the translator functions
to any given JS object. However, the custom string::arg() method is only
added in qqmlbuiltinfunctions.cpp, making the use of qsTr() in other
pure-JS programs quite hard.
Task-number: QTBUG-43113
Change-Id: Ia9ed97a4c07a4d167c792f3ea13e4f6e96c97423
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Mitch Curtis [Tue, 18 Nov 2014 09:16:52 +0000 (10:16 +0100)]
Correct QtQml.Models \qmlmodule version.
For example, the following documentation [1] says:
Import Statement: import QtQml.Models 2.0
This should be:
Import Statement: import QtQml.Models 2.1
The module documentation [2] is correct, but there's no visible link to
that page from [1].
[1] http://qt-project.org/doc/qt-5/qml-qtqml-models-objectmodel.html
[2] http://qt-project.org/doc/qt-5/qtqml-models-qmlmodule.html
Change-Id: Ib2ab7b821ad7e98c20b396b26f745ee39434b7fb
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Chris Adams [Mon, 1 Dec 2014 04:32:57 +0000 (14:32 +1000)]
Fix QtQuick2 module unload support
This commit ensures that the value type providers installed by the
QtQuick2 QML module during initialization are uninstalled when the
plugin is unloaded.
It also fixes a bug in the type compiler so that it now works with
types from plugins which get unloaded and then reloaded.
Task-number: QTBUG-43004
Change-Id: I4b3fb75aae65dfbc5de9c88701ed82514087ab7d
Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
Frederik Gladhorn [Wed, 3 Dec 2014 13:42:12 +0000 (14:42 +0100)]
Error out when trying to set an item as its own parent
Task-number: QTBUG-43063
Change-Id: I92a33047ac7fa2afeff4986b6e42c07afbc59918
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Simon Hausmann [Wed, 3 Dec 2014 09:37:16 +0000 (10:37 +0100)]
Fix crashes on QNX/x86
On x86 we assume that ebx holds the address of the global offset table for
position independent code. So before placing a run-time call we restore the
register from it's position we saved it on earlier on the stack. However after
commit
d9f33ccdef985badc56fd8940373748626beffc7 the register wasn't saved on the
stack anymore in the prologue because we skipped because it's caller saved. So
when we seemingly reloaded ebx with the GOT from the stack, we loaded it from a location
we never saved it to. This patch makes sure to always save it on the stack so that
we can always restore it.
Change-Id: I8f6a8e38779151fff517f17220f29a7cb45ca89d
Task-number: QTBUG-43036
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Simon Hausmann [Mon, 1 Dec 2014 12:11:03 +0000 (13:11 +0100)]
Fix application build when combining with Mac OS X Cocoa headers
OSX's AssertMacros.h unconditionally defines macros like "check" and that
clashes with qml's type discovery templates that define a check function
and that are used by qmlRegisterType and friends.
There's a comment in the OS X headers suggesting that this will be fixed
in the "next" release, but that hasn't happened for a while and the bug
is still present in 10.10. So let's work around it and make life easier
for people using Qml and Cocoa at the same time.
Change-Id: I005d21188f92deaebd45bce2e6484cd4deeb9a34
Task-number: QTBUG-36309
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Simon Hausmann [Mon, 1 Dec 2014 14:51:05 +0000 (15:51 +0100)]
Fix conditional breakpoints in QML
We need to set "inheritContext" to true for the QV4::Script that's used during
conditional break point evaluation, because that will also disable fast
property lookups, which is still required for QML lookups to work.
Change-Id: I8976df1c827b5058eae9bdce6e86e5ea856cbfe1
Task-number: QTBUG-43018
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Simon Hausmann [Fri, 28 Nov 2014 08:24:35 +0000 (09:24 +0100)]
Fix expression evaluation in specific frames in the debugger
Expressions from the QML/JS console are intended to be executed in a specific
frame / context. However that wasn't implemented properly, we should pop the
current context frameNr times.
[ChangeLog][QtQml] Fix inspecting objects in QML/JS console in different frames.
Change-Id: If575d4005c52a9fe6805538a7b1a02b9e32049d6
Task-number: QTBUG-42831
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Simon Hausmann [Thu, 27 Nov 2014 14:45:02 +0000 (15:45 +0100)]
Remove dead code
The eval code tracking was used last time for the old exception handling,
but that's long gone :)
Change-Id: I6fa80a5197745fde461e4da66cd65a50149c6048
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Shawn Rutledge [Fri, 7 Nov 2014 11:55:03 +0000 (12:55 +0100)]
QtQuick.Window: add missing documentation for Window methods
Several more methods/slots are inherited from QWindow but are not
documented for the QML Window type. Also some other documentation
improvements.
Task-number: QTBUG-40093
Task-number: QTBUG-42426
Change-Id: Ib753be269cbc41ee540e6556e0ef483758eefe62
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Simon Hausmann [Tue, 2 Dec 2014 18:56:43 +0000 (19:56 +0100)]
Merge "Merge remote-tracking branch 'origin/5.4.0' into 5.4" into refs/staging/5.4
Simon Hausmann [Tue, 2 Dec 2014 12:41:31 +0000 (13:41 +0100)]
Merge remote-tracking branch 'origin/5.4.0' into 5.4
Change-Id: I89bbb2977350a03c156d531f810d08a5560ffbb3
Kai Koehne [Wed, 26 Nov 2014 08:59:11 +0000 (09:59 +0100)]
Fix permissions of files
Change-Id: I22958892d846da348325ba608084f8d9a05473d4
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Simon Hausmann [Sat, 29 Nov 2014 08:55:50 +0000 (09:55 +0100)]
Added change log for 5.4.0
Change-Id: Ie3e238a3ccac1d95978229316977d131be3010d6
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Simon Hausmann [Mon, 1 Dec 2014 09:21:27 +0000 (10:21 +0100)]
Regression: Fix array data corruption
When inserting into a sparse JS array, we may have to re-allocate the
underlying data vector. When that happens we must reload the ArrayData
pointer, to avoid returning a wrong pointer in ArrayData::insert.
This patch also fixes the valgrind support in the memory allocator by correctly
marking the mmap'ed memory region as inaccessible.
Change-Id: I86aabc2cec74a4f3c8396463910d90c8968a741d
Task-number: QTBUG-42956
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Friedemann Kleint [Mon, 1 Dec 2014 09:45:00 +0000 (10:45 +0100)]
Skip tst_qquickwindow::headless() when using ANGLE/Windows.
The test crashes frequently.
Task-number: QTBUG-42967
Change-Id: Ic17c6187bfa657154a9b04eb9c5b9a3de291cb1e
Reviewed-by: Andrew Knight <andrew.knight@theqtcompany.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Simon Hausmann [Mon, 24 Nov 2014 14:52:42 +0000 (15:52 +0100)]
Fix loading of .ui.qml form files with cached compilation units
Simplify the type loading logic and try the Type -> Type.qml and Type ->
Type.ui.qml mapping in a simple loop that tries off-disk and cached
compilation unit loading.
Change-Id: I537feabd0a158a71f330bede9e6988291298ae81
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Andrew Knight [Fri, 28 Nov 2014 11:43:12 +0000 (13:43 +0200)]
Don't default to HighQualitySubPixelAntialiasing on WinRT
The subpixel shader is probably not a good default here because most
devices are mobile (can change screen orientation) and have high pixel
densities. Furthermore, it breaks text rendering on the Surface RT, where
the graphics hardware is too weak to support the number of uniforms the
subpixel shader uses.
Task-number: QTBUG-41769
Change-Id: I10210af91976ab55e611025c0452a1ee1f3114a9
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
Morten Johan Sørvig [Tue, 25 Nov 2014 13:22:15 +0000 (14:22 +0100)]
Make effectiveDevicePixelRatio() return a qreal.
Fractional scale factors are not as broken as previously
believed, especially for Qt Quick. Keep the door open
for finding a way to support it at some point in the
future.
Change-Id: Ifeadcc53175ac6c25ea0288d5fe1966e3de408f9
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Laszlo Agocs [Sat, 22 Nov 2014 20:17:34 +0000 (21:17 +0100)]
Add missing call to rendercontrol
Change-Id: Ic8c8e6d7a9d99216292b8b4faa2926d849333a05
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
Albert Astals Cid [Tue, 25 Nov 2014 21:56:30 +0000 (22:56 +0100)]
Add since 5.4 markers
Change-Id: Ic0e594cb53016e6f68fbfb6e6064707344afefef
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Friedemann Kleint [Wed, 26 Nov 2014 09:01:15 +0000 (10:01 +0100)]
Stabilize tst_qquickflickable.
- Use one engine per test
- Use QQuickView for the margins test
- Verify QWindow cleanup.
Change-Id: Id2a10b56101832c362822963a2a7bd1d66daa143
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Mitch Curtis [Thu, 13 Nov 2014 15:30:03 +0000 (16:30 +0100)]
Document Qt.application.supportsMultipleWindows property.
The documentation was not added in
0df606e2ab8f3b60e1ad57dba245acf2e7810612.
Change-Id: I0a5802a66021e17d1280f3969981c9e8a62c8119
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Frederik Gladhorn [Fri, 21 Nov 2014 12:47:31 +0000 (13:47 +0100)]
Merge "Merge remote-tracking branch 'origin/5.4.0' into 5.4" into refs/staging/5.4
Frederik Gladhorn [Fri, 21 Nov 2014 12:45:07 +0000 (13:45 +0100)]
Merge remote-tracking branch 'origin/5.4.0' into 5.4
Change-Id: I2e7fc085663e00dd0390593a91c30d23d1369c4e
Joni Poikelin [Thu, 20 Nov 2014 12:10:03 +0000 (14:10 +0200)]
Fix multirow spritesheet rendering in paused state
Task-number: QTBUG-42777
Change-Id: I8027f100c593ae7c57df7c952e66cc2b3fae1dd9
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Laszlo Agocs [Mon, 17 Nov 2014 15:11:22 +0000 (16:11 +0100)]
Do not send deferred deletes from QQuickRenderControl::invalidate()
Leave it up to the clients of QQuickRenderControl to do this, if they
want it. It is usually not necessary.
In the single-threaded widget world forcing deferred deletes to execute
on every invalidate(), so for example from the hide event handler of
QQuickWidget, is dangerous because widget apps tend to deleteLater()
all sorts of widgets which can then be destroyed at unexpected times.
From windowDestroyed() we continue to send the deferred deletes, just
like all the render loops do.
Task-number: QTBUG-42618
Task-number: QTBUG-40435
Change-Id: I8189124e2e7675361ee97bd8ba3e88b10ef193fa
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Nico Vertriest [Mon, 27 Oct 2014 13:58:40 +0000 (14:58 +0100)]
Doc: removed reference to sizeHint
sizeHint is not a property of QQuickView
Task-number: QTBUG-39044
Change-Id: I6e19e975ab71f73ddaf703956afb90f2e607b6f8
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Laszlo Agocs [Thu, 13 Nov 2014 13:47:21 +0000 (14:47 +0100)]
Fix render control docs
Fix a typo and add a note to the signals.
Change-Id: Ia8810562c5b5f192d7e54bc965807b8e78a26985
Reviewed-by: Karim Pinter <karim.pinter@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
Eskil Abrahamsen Blomfeldt [Thu, 16 Oct 2014 14:57:08 +0000 (16:57 +0200)]
Invalidate font caches when switching between threads
The font caches can only be used from a single thread at a time.
QFontEngineFT for instance, uses a global static thread storage
which is accessed on releasing and creating engines, and this
causes a crash if the font engine is created on one thread and
released on another.
We use the updatePolish() function to make sure the caches are
empty before entering updatePaintNode(), and then we invalidate
the cache again after updatePaintNode() is done.
[ChangeLog][Text] Fixed uncommon crash in text nodes.
Change-Id: I01dbc2ed58aeebd03d77a157c700330334bdb385
Task-number: QTBUG-38800
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Richard Moe Gustavsen [Wed, 12 Nov 2014 19:47:23 +0000 (20:47 +0100)]
example, touchinteraction: use forceActiveFocus to gain focus
Use forceActiveFocus to gain focus when the user clicks on
a note. Just setting focus on an item is not enough to gain
keyboard focus.
Change-Id: Ia4a68a17df0df4b321cc6edb646b39c36167e982
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com>
Topi Reinio [Wed, 5 Nov 2014 11:24:53 +0000 (12:24 +0100)]
Doc: Change the div classes for three-column layout
The new documentation style for publishing docs under qt.io
requires dedicated div classes for pages that use a three-
column layout.
The new divs enable the columns to stack and react to changes
in the window width.
Task-number: QTBUG-42086
Change-Id: Id0ccb0ef7e0be237789b8c891db05413efc1f8aa
Reviewed-by: Martin Smith <martin.smith@digia.com>
Eskil Abrahamsen Blomfeldt [Thu, 6 Nov 2014 11:10:00 +0000 (12:10 +0100)]
Add padding to distance field glyph cache
Linear filtering can cause pixels outside the glyph's bounding rect
to be sampled. On drivers where uninitialized texture data is actually
uninitialized, this could cause artifacts in rendering for glyphs at
the right edge of the initiliazed area since they would sometimes sample
random pixels. To avoid this, we add padding between the glyphs in the
cache.
[ChangeLog][Qt Quick] Fixed uncommon artifacts in rendering of distance
field glyphs.
Task-number: QTBUG-42148
Change-Id: I6982b4a150d9459185d50a4362e1ead588d3860f
Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>