| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QMetaProperty::type() maps an un-registered enum to QMetaType::Int, and
so if a property cache is created for a gadget with enum properties,
then their type will be int and we'll correctly read enum properties as
ints in JavaScript. However if the enum is registered at the time we
create the cache, then the property type will be the specific type and
not QMetaType::Int. The property reading code in QV4::QObjectWrapper can
deal with that, but the property reading code in the gadget value type
wrapper code did not.
[ChangeLog][Qt][Qml] Fix reading of enum properties from gadgets / value
types when the enum was registered with qRegisterMetaType().
Change-Id: I7812b216a276dcc95c36e313507e1a1142250d0b
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
|
|
|
|
|
| |
Change-Id: I33ca6140d89041f89f0e3db9db7206aca50361d7
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
|
|
|
|
|
|
|
|
|
| |
This should make (properly functioning) static code checkers stop
complaining.
Task-number: QTBUG-57025
Change-Id: Ic7e6f1b0b02f2e9324dbc891ab4620d53d9f9a18
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
| |
Change-Id: Id7c8c7080e6db8bb6d09c1df13cddaef047cf611
Task-number: QTBUG-56499
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
af002b8df9b084fd7f26e9eead9844aab36bdc4d added timestamps to press and
release events. It did not add the timestamp to move events though. When
using the quick test functionality to send events to flickable, this
leads to great confusion since the move events will be from a completely
different time than the release, in which case flickable responds with
"you waited a long time before releasing, I think you didn't want to
flick". Adding the timestamp also to move events is consistent and makes
tests in qtlocation happy.
Change-Id: I33653c435eff5b62eeaf5a03653d917b7acc4fed
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GCC5/6 do aggressive dead store elimination on memory passed to
placement-new. This resulted in the Heap::Object::prototype being a
nullptr. qml.pro already contained the -fno-lifetime-dse flag, but there
are other places where we ask the memory manager to allocate data.
This is temporary band-aid, and is already fixed in 5.8.
Change-Id: Ia61a69f65fab351068a588cfc36b5b3d762ffc9f
Task-number: QTBUG-56932
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
qquickitem_before_paintNode returns the transform node for the rectangle
as child node. But the node has no parent. It leads to following assertion
case at QSGNode::insertChildNodeAfter(). But, I tested it in release mode,
so no assertion happened. So, Some node not be able to add group node
from this cause.
Task-number: QTBUG-56657
Change-Id: Ie032dc6c56984bcb58cfcd348ff532f56e39e5b8
Reviewed-by: Inhye Seo <inhye.seo@lge.com>
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
|
|
|
|
|
|
|
|
| |
The code was using the ::glGetString function and this could fail
if we are using a custom platform plugin.
Change-Id: Idb9ccd178ea52255b9d6f0f6d3fd529094c15292
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A wrong overflow detection caused strings like "240000000000" to pass
the conversion, even though they would not fit into a uint when
converted into base-10. This mis-conversion to uint then caused
all sorts of side effects (broken comparisons, wrong listing of
properties, and so on).
So, properly fix the overflow detection by using our numeric private
functions.
Change-Id: Icbf67ac68cf5785d6c77b433c7a45aed5285a8c2
Task-number: QTBUG-56830
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: I24a186af0538027719beb464c2b489825ddd9420
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
| |
Atlas::create returns null when allocating space in the atlas texture
fails, including when the texture is full. Manager::create assumed that
this function would never fail.
Change-Id: I2ed8a1b94640d6a3cc65011e83b88f8bd42ca074
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
|
|
|
|
|
| |
Change-Id: I9a38ab8ff60921e6d5ff6c2fa476b24d28781feb
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After commit 2afb54fb51091765f79548b0b057795bc3c6eb38,
Primitive::undefinedValue() uses setM() to clear out all bits.
Previously that code was #ifndef'ed out for the bootstrap build, but now
that we can do the correct boxing in host builds (as we know the pointer
size), we can re-enable setM() in bootstrap builds and fix this crash
that was a Q_UNREACHABLE() assertion.
Change-Id: I49036792c06c9a17272aba65261ab8f32beb2ad8
Task-number: QTBUG-56658
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: I41ef6b38e74162434c397535f9d73fff80e29c78
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Noticed while debugging QTBUG-56075 on XCB. QQuickFlickable did not
receive timestamps for wheel events provided by XI2. This alone does
not fix the flicking speed issue with high-precision trackpads, but
is needed to be able to calculate the appropriate velocity.
Task-number: QTBUG-56075
Change-Id: I458e6302aee72863cdc1f8e8f7d99449016905a9
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
| |
If you return a QObject with parent from a Q_INVOKABLE it *does*
get QQmlEngine::JavaScriptOwnership. It just doesn't get deleted
by JavaScript (until you unset it's parent).
Change-Id: Id56debe06253ea1dd31dee844f5047d4ac055024
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The warning statement is printed whenever a successful hit test
(essentialy a hover) happens on a QML item which is accessible
(e.g. a Label) and also not visible.
The message looks like "QQuickText QVariant(Invalid) QRect(0,0 0x0)".
The information serves no real purpose though:
1) The property accessibleText is not set anywhere
2) The warning happens in a valid use case when an item is invisible,
and the user mouse accidentally hovers over its position
Change-Id: I8d20f7842d92c7944bb5e3b614ecd6fad500102a
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
QSG24BitTextMaskShader::useSRGB() on macOS accesses the current context
qgl_current_fbo member without first checking if it is valid.
Make sure it also checks qgl_current_fbo_invalid, thus not accidentally
dereferencing a dangling pointer.
Change-Id: I56a77de23ee3b4b271bd848506ff26e14d7b6d15
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
| |
These two were mixed, but have completely different values.
Task-number: QTBUG-56471
Change-Id: Ifbf6da3032335ea89bfbc3acde17f64a571b9dc0
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Timestamp is necessary for testing custom mouse event handlers e.g. what
Qt WebEngine uses for handling triple and quadruple mouse clicks.
Based on Qt Base commit 181ee8f9ffacc51265ccc3a0005bf146f230cf85
Task-number: QTBUG-56223
Change-Id: I84d0ca40767d0b1dccb33da1fb1f6ff5721d1096
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can't both invert offset position and inter-value positions of tag
and value.
This patch changes 32-bit big-endian to use the same order inside
the tag/value but just at different offsets. This also make it
compatible with how we use it with doubles.
This fixes value/tag reads on 32-bit big-endian and offsets on 64-bit.
Task-number: QTBUG-56271
Change-Id: I95cf792c29ac3f42a4018ce1f115193c143a0df0
(cherry picked from commit 2a658344397729450f869138bf77e063a0a6166b)
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Commit 833c99db20 introduced this regression by only moving part of the
value data to the proper offset.
Task-number: QTBUG-53261
Change-Id: I11241c57057a57794bc3ca60ee437206e524f355
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
| |
Locally suppress bogus tautological compare warnings.
Task-number: QTBUG-56266
Change-Id: Ic1b554982a778cdd89c8047483523c44d53bbadd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
| |
The item updates the node in an order that would never actually take
that flag into account. We now makes sure the FBO size is updated
when the flag is set.
Change-Id: I7aaaf64ed802ec0b53a3b47a39bbdea8195b4092
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
|
|
|
|
|
|
|
| |
Additionally, that way the braces are not needed anymore.
Change-Id: I5afc8fa738211f884ac011079a2ee63613a46d08
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fix builds on commit f656fc588bab4104d531cb46836168da6736a518
from 22 April 2016 which conditionally includes missing
math functions for Visual Studio older than 2013.
log2 and log2f functions have not been included in the fix because
there was no name conflict in Qt lib itself, but the problem
becomes prominent when trying to link an application simultaneously
to libucrt.lib and qt built with -static -static-runtime options.
This fix corrects following linking issues:
Qt5Qml-static.lib(qv4value.obj) :
error LNK2005: _log2 already defined in libucrt.lib(log2d.obj)
Qt5Qml-static.lib(qv4dateobject.obj) :
error LNK2005: _log2 already defined in libucrt.lib(log2d.obj)
Qt5Qml-static.lib(qv4runtime.obj) :
error LNK2005: _log2 already defined in libucrt.lib(log2d.obj)
Qt5Qml-static.lib(qv4globalobject.obj) :
error LNK2005: _log2 already defined in libucrt.lib(log2d.obj)
Qt5Qml-static.lib(qv4jsonobject.obj) :
error LNK2005: _log2 already defined in libucrt.lib(log2d.obj)
This fix has been previously committed to dev branch for review
but was recommended to use branch 5.6, same as referenced commit.
Change-Id: Iad88d1665c243c4beb91fe71bf5de390cc8ee73e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
| |
Change-Id: Ie8cbcc27e0cbe2b9caa9a1adf24f056dafa203ed
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
| |
Change-Id: I9b8d0158346e432e44758ae153e9ea02a9513c7e
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
| |
Change-Id: I19f1a75b2e1a1096077df7ea109fd70be9d3c759
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
| |
Getting the current time from QTime is expensive as it adheres
to the locale timezone. To measure elapsed time in a code block,
using the monotonic QElapsedTimer is much faster.
Change-Id: Ibea390d7bc5270a20cf35111dfc919e37be7001e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Scale the canvas image and texture buffer by the
target devicePixelRatio.
Task-number: QTBUG-37095
Change-Id: Ic432b278caa5c85cf3487d3108967cf3fcd2fa48
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Otherwise a re-use of the C++-owned QObject will have a back reference
to a possibly GCed QV4::QObjectWrapper, which results in exciting
behavior.
Task-number: QTBUG-46263
Change-Id: Iff0e36f9e67c01abd02cfb5a89605d0f26ddb0de
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
| |
Change-Id: I14eb860386dfad57ab8cf492cb782970497756b9
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
|
|
|
|
|
| |
Change-Id: Ib026302143df82196fdfd70b9ea9923098adbc7c
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
|
|
|
|
|
|
|
|
|
|
|
| |
We don't need to deleteLater here, we can not be sure that the
response won't continue for a bit after this, and it's not even
needed since documentation says you need to emit finished in
all cases and this will call deleteLater on the response anyway.
Task-number: QTBUG-56056
Change-Id: I7cc90620f499beaaaaa61aac77d72d067308838c
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
|
|
|
|
|
|
|
| |
This covers a whole host of missing cases, notably QUrl stored in a QV4::Value.
Task-number: QTBUG-50592
Change-Id: I8afd772046c7bfbbcf916a7e90a57be5257b9df8
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mark QQuickItem visual children directly in QQuickItem instead of
relying on the item being a (grand) child of a window.
[ChangeLog][QtQuick] Fix crash with QQuickItems created via JavaScript being
garbage collected sometimes when they're not assigned to a window.
This may happen even in qmlscene when between the creation of the root item and
the assignment to the QQuickWindow the garbage collector runs.
The previous approach of a persistent in QQuickView marking the visual item
hierarchy relies on the existence of a view. The only thing left to do in the
view and qml window implementation is enforcing the CppOwnership policy set on
the content item in QQuickWindow by ensuring the presence of the JS wrapper,
replacing the persistent with a weak value.
This also introduces a new internal mechanism for QObject sub-classes to
provide their own V4 JS wrapper types.
Task-number: QTBUG-39888
Change-Id: Icd45a636a6d4e4528fc19165b13f4e1ca7967087
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The if statement in QQuickTextPrivate::setupTextLayout() was missing
an OR clause for the case where the line width is neither greater
nor less than the old width/natural width, but has actually changed.
If that sounds confusing, it's because it is. Basically, the outer
layouting loop in that function needs to run twice for this scenario,
so that's what this patch makes it do.
Change-Id: I13777667eb13506d50f05e9766785a1c2c46125c
Task-number: QTBUG-50738
Task-number: QTBUG-50740
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|
|
|
|
|
| |
Change-Id: I8ec8c8eff41e77225ef42f7bd9e52f4558d00130
Task-number: QTBUG-55779
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This was occurring when using a physical mouse wheel: movementEnded
was emitted, then contentYChanged would still be emitted a few more
times.
Task-number: QTBUG-55886
Change-Id: Ib5e833d5d84633bb07b8c240ea3ccc9977e443f8
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
|
|
|
| |
We (incorrectly) didn't check the return value to make sure we had a valid self.
At the same time, rename the self variable to match up with other methods.
Task-number: QTBUG-53672
Change-Id: Ia0ae5a553e49c4c3b2834c7fdf649fe6373951a2
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The velocity timeline does not need to drive the movement if we can
be sure that there are enough wheel events coming from the OS to
move the flickable smoothly. And when the velocityTimeline is not
active, the movementEndingTimer will emit the movementEnded signal,
as it should.
Task-number: QTBUG-55871
Change-Id: I5569be3aa6335d43ba162967ee03d08de3ba8096
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
|
|
|
| |
This allows for the OS to use 49 address bits. It also maps JS Undefined
to the C++ nullptr on 64bit.
Task-number: QTBUG-54822
Change-Id: I7cc90620f499be1506a61aac77d72d067308838c
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On some systems, glGetString returns null for some reason, which causes
a segfault here. Let's assume it's not one of the broken configurations
and hope for the best instead.
Task-number: QTCREATORBUG-15992
Task-number: QTBUG-56165
Change-Id: I83867e42f0fd8f576bf51ac0a2213e1348111ffd
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-55935
Change-Id: I475c1bb3e7aae9499b1b07a52f3c10f54c8b3481
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
|
|
|
|
|
|
| |
Task-number: QTBUG-56036
Change-Id: Iad776f42cc776e0d397173b3d2f3922eb7914392
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
|
|
|
|
|
|
|
|
| |
This serves the same purpose as qtbase/corelib/global/qhooks.cpp,
but is meant to be in sync with changes in Qt Declarative internals.
Change-Id: I5a4a7d9ca5c340367581749e05d09380590c46fb
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We shouldn't be setting width and height for each square; we should
only need to set their side, which determines their width and height -
so that they're actually square !
More pertinently, this could later serve as an illustration of how to
use properties and bindings. Ideally, we'd do this in some way that
actually ensures setting width or height changes side; but the simple
approach will do for now.
Change-Id: I0df89e11221dde5d1d2930c4a779b59cf0d46654
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
|
|\
| |
| |
| | |
Change-Id: I410c2bd25a1bddc0e395316d62791437684b8942
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When using a FBO, the source rect should be the painted part
(m_textureSize) of the FBO.
Also, the texture size is now correctly set when using an Image
render target.
Task-number: QTBUG-52054
Change-Id: If5d7a9c0b02f16f5d4be2cdf8c3c4cb15cb0583e
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|