| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Also link it from more places
Change-Id: Ib5fbf89f4a039f885e918d57ee477e9788049d8d
Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
|
|
|
|
|
|
|
|
|
|
|
|
| |
If Flickable got hidden while a child had mouse grab, it ignored the
mouse ungrab event of the child mouse grabber, and got therefore stuck
in pressed state. Consequently, item view transitions were not executed
since the item view though it was being pressed.
Task-number: QTBUG-58453
Change-Id: I76f9f3190c3a95a2fafdce036d69ea1dc8127434
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most likely because of changes done to mouse event handling in 5.8,
a QQuickMouseArea can now get a mousePressEvent call without a
subsequent mouseReleaseEvent call if the press event was rejected.
A regression seen from this is that QQuickMouseArea starts a
pressAndHold timer upon receiving mouse press, which will never be
'cancelled' since the following mouse release is sent elsewhere.
As a result, TextArea in QtQuickControls will e.g receive a
pressAndHold signal each time the user touches the control, which
again will cause weird behavior like selecting words and
messing with focus on iOS.
This patch will instead change this so that we only start the pressAndHold
timer if QQuickMouseArea accepts the mouse press event.
Change-Id: I43e2f02e2b4f75e7b6761e326e3fec54ea97683a
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When we post a focus change notification, VoiceOver verifies what the application
thinks is focused. Without this function, when moving the keyboard focus
(e.g. by pressing tab) the VO focus will not follow.
[ChangeLog][QtQuick][Accessibility] Fixed focus handling so that keyboard
and VoiceOver's virtual focus are in sync (QTBUG-58340).
Task-number: QTBUG-58340
Change-Id: I7d4871c13b36c3ab9241614ca8a06452461e3cd1
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When register allocation on an IR in SSA form is done, the last step is
to turn the Phi nodes into moves and swaps and put those instructions in
the predecessors. As the Phi nodes are conceptually "executed in
parallel", this can result in cycles:
r1 <- r0
r0 <- r1
These have to be turned into a swap instruction. Also, the moves have to
be ordered in order to make sure that no values are overwritten:
r1 <- r0
r2 <- r1
Here the two moves need to be switched. The comments in the code
document the algorithm.
Change-Id: I4151988681f7554b00a3eb70d224e6e2f29ebf04
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The same bounded dragPos values were used for
- moving the target item to new position; and
- if dragging didn’t start yet, determining whether cursor moved over
the threshold distance.
It is right for moving the target item, but in the second case it led to
that dragging did not start if the distance between item's left border
and minimumX (right border and maximumX, top border and minimumY,
bottom border and maximumY accordingly) was less than drag.threshold.
Task-number: QTBUG-58347
Change-Id: If61a98bf734739323ef19dee6709560b754b2456
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
|
|
|
|
|
|
| |
Change-Id: I88ffdd1d1224705e980e449b6c799c9f186143b1
Task-number: QTBUG-58271
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
.. of the same basic block. Phi nodes are "executed in parallel", so
such a situation will lead to interesting results.
Task-number: QTBUG-58553
Change-Id: Ibed439df91d46ea416dcb0a20457310e91dce8b4
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Chinese locale means Code Page 936 here. It's also related with
removing C4819 warnings.
And it's also following Conventions in Qt source code: All code
is ascii only (7-bit characters only, run man ascii if unsure)
See also http://wiki.qt.io/Coding_Conventions
Task-number: QTBUG-56155
Task-number: QTBUG-58161
Change-Id: I1c38a6ce74670716f730663edbcdec3919b438c2
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-58549
Change-Id: Iaa2a9cd8b86e8c2bb7e20b99fabad99d0bd51799
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
A QTouchEvent is allocated with a reduced subset of TouchPoints for
each Item to which we attempt to deliver it, and thrown away afterwards.
(Ιt's not efficient to heap-allocate it, but we can't avoid doing it
at all without changing behavior.) So now it's stored in a QScopedPointer.
Change-Id: I48badb493610d0a715e582a2eedae95e2006eb2b
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mention that the new backends are introduced with Qt 5.8. Also
remove some details that rather belong in subsections, in particular
the mentioning that the Qt Quick API's originally were designed
for OpenGL. It is unclear what consequences this has for the user.
Limitations on backends should be rather spelled out in the
respective subsections.
Change-Id: I21239ea99b89b4c7771e3d79a38c6aa39007d0ea
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
| |
[Platform Specific Changes][Windows] Fixed compilation on MSVC
with -no-qml-debug configure argument.
Task-number: QTBUG-58412
Change-Id: I915ed3d345b3f1e4e5863456522784ab6c9b15cf
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
| |
GL_EXT_xxxx is not sufficient here. QOpenGLFunctions already has support
for the ANGLE and some other variants of the framebuffer multisample and
blit extensions, so use that instead of the manual checks.
Change-Id: I2d8e0850d3b0b9a9cfd9e55aa38adad07a0ba45d
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
src/qml/jsapi/qjsengine.cpp:524: warning:
Undocumented parameter 'metaObject' in QJSEngine::newQMetaObject()
src/qml/qml/qqmlengine.cpp:1023: warning:
Undocumented parameter 'retCode' in QQmlEngine::exit()
src/qml/doc/src/qmlfunctions.qdoc:182: warning:
Undocumented parameter 'reason' in qmlRegisterUncreatableMetaObject()
src/qml/qml/qqmllist.cpp:393: warning:
Undocumented parameter 'at' in QQmlListProperty::QQmlListProperty()
src/qml/qml/qqmllist.cpp:393: warning:
Undocumented parameter 'count' in QQmlListProperty::QQmlListProperty()
src/qml/qml/qqmllist.cpp:402: warning:
Undocumented parameter 'at' in QQmlListProperty::QQmlListProperty()
src/qml/qml/qqmllist.cpp:402: warning:
Undocumented parameter 'count' in QQmlListProperty::QQmlListProperty()
src/qml/qml/qqmllist.cpp:402: warning:
Undocumented parameter 'append' in QQmlListProperty::QQmlListProperty()
src/qml/qml/qqmllist.cpp:402: warning:
Undocumented parameter 'clear' in QQmlListProperty::QQmlListProperty()
src/quick/items/qquickwindow.cpp:4461: warning:
No such parameter 'backend' in QQuickWindow::setSceneGraphBackend()
Also do some minor language editing.
Change-Id: I2e806d1a77e3c4264d709c27d2bfc4542a782716
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
| |
Change-Id: I3b9bc6aa69dbf2a780765ba935b76be6a22280e6
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
|
|
|
|
|
|
|
|
|
|
| |
invalidAlias.11 revealed a problem with the loop here, in that the
vector was modified while it was being iterated. There isn't any need to
modify the vector being iterated, as it'll be put into pendingObjects
for the next loop.
Change-Id: If9b537c4ac00697237d12e4b0be67ef39cc8b3c4
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Also added a section with more info that asks the reader to refer to the
QStringList example above.
Task-number: QTBUG-47768
Change-Id: I4e99b81ac242f7df1ddc412f85c9c1b822080514
Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
|
|
|
|
|
|
|
|
|
| |
During the update of plugin.cpp this file was deleted by
mistake. plugin.cpp still refers to it and it needs to be
reinserted in src/quick/doc/snippets.
Change-Id: Ie23c926ff6096392da96f0063c767009a3965a30
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
|
|
|
|
| |
Change-Id: I31bcf56ee0c4ec9285dccb356b03b89e8ce8356a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
| |
follows up qtbase/4eb2feb2.
Change-Id: I13ba74fb25dfd059782b369350fa14e44b70bf79
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: If4308195b05255a49a06184cab3db88ec9532f76
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: I25edd84fb67f417caa98e63f284547eac3a7793a
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: I5a04cb678ad4a222d2a716dd1499f5103bb66c8e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-57867
Change-Id: I0190b892e2bc2966b82a0dbd99e53fd9d6848957
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Transitions contain both an id and a set of flags, but the sorting
failed to take the flags into account in the operator<. As a result
we would some times end up with duplicate entries if the same id
was added multiple times with different flags.
If the same id was added again and again with varying flags, this
could lead to an ever expanding list filled with duplicate entries.
Fix this by also taking flags into account in operator< so that
operator< and operator== are symetric and the list gets correctly
sorted.
Change-Id: I762ec3f0c5b4ed9a1aecb9a883187a0445491591
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After commit 0e3380f9c6ab6e3ea7398caccf5aa84f1575f1cd we wouldn't crash
anymore, if QJSValue::UndefinedValue was provided as value for a
QJSValue C++ signal parameter. However that was not a complete fix for
the regression of commit aa869cbb06bcf005e238059a2cb0205947ff0b5f, as
other primitive values stored in QJSValue as QVariant were not
converted, so for example QJSValue(42). So let's fix this once and for
all by using QJSValuePrivate::valueForData, that handles all types of
QJSValuePrivate encodings.
Task-number: QTBUG-58133
Change-Id: Ib7c0461b18df6260ccd4bce729ae2348281eb7f3
Reviewed-by: Arnaud Vrac <avrac@freebox.fr>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-42495
Change-Id: I0f7693ed32d3ec696f5c75b7ce7acdb41dd0ce6f
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
| |
Change-Id: Iea95465a88627e312259ea62a8908d9cbb3f82ac
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: Id0ea0037db4cc3878ae2f75109aa3a7daa120189
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|\
| |
| |
| | |
Change-Id: I981c19429b1bf6f0990b5740c165e235829f702e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a regression from commit
7e14b531b294650733a61a9365eb9ef74f8a7a90, that replaced a QHash<temp,
liveInterval> with a vector of intervals. When an interval is split, it
may happen that during one interval a temp is stored in a register and
in the second interval it ends up in a different register or the stack.
The _liveIntervals variable, formerly the _intervalForTemp hash, tracked
the intervals per temp when going through the basic blocks and
statements during the renumbering phase. Indexing uniquely by temp is
important therefore for _liveIntervals and addNewIntervals violated that
by replacing the QHash replacement
_intervalForTemp[i->temp()] = i;
with
_liveIntervals.push_back(i);
This is how we may end up with multiple intervals for the same temp (in
different locations), and when doing the linear lookup we'd only find
the first. Restoring the replacement behavior and thus ensuring
uniqueness by temp fixes the miscompilations.
Task-number: QTBUG-57779
Change-Id: Ib8f53672b66750f68e16e47794dbc5f39989e1a2
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QSGOpacityNode::combinedOpacity() and QSGTransformNode::combinedMatrix()
are intended to be internal.
Task-number: QTBUG-53897
Change-Id: Icc73476eb8af5cdc673f7ce9bacd25ecc75202b5
Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When converting the parameters of a C++ signal to JS values to provide
to a signal handler written in JS, the conversion of a QJSValue to a
QV4::Value* may yield a null pointer in case of a default constructed
QJSValue for example. This is a regression from commit
aa869cbb06bcf005e238059a2cb0205947ff0b5f and we must check for this.
Task-number: QTBUG-58133
Change-Id: I528b606b2851dfb3072e54902bd8843d31571a55
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I9c0c0138e48b30a443307faf6cd7251017bf84ae
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
This has come up in queries from users, so let's add a helping hand.
Change-Id: If4e5efdd8969a71a78fc88ae168ede8d681858aa
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Unlike renderUnmergedBatches(), renderRenderNode() did not adjust the
projection matrix.
Change-Id: Ib5a7183a3623d35c85af47205cc22187bad89409
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Otherwise weird things will happen once a node gets turned into a
batch root and the rendernodes in the child subtree still refers to
their old root.
Change-Id: I42b0ba514c2fbeed833f0f665e49b275c19b5686
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Scissor and stencil tests are not actually enabled when invoking render(),
meaning rendernode implementations do not clip by default. This has been
documented when making the class public in 5.8, but the older list with
the OpenGL states still contains contradictory entries which are false
since Qt 5.2 or so.
Change-Id: I46875b11322585d40962db2c4302602a1410a7b9
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When deleting a layout with children, it ends up in ~QQuickItem(), which in
turn will call setParentItem(0). setParentItem(0) will in turn call
setEffectiveVisibleRecur(), which will recurse down all its descendants.
Therefore, deleting a top level layout might trigger item change listeners
for *all* its descendants, not only its direct children.
This behavior might even cause crashes: The visibility changes will then
trigger an invalidation of the layout, which will propagate up the parent
hierarchy, and potentially call invalidate() on a partially-destroyed
layout, which then might crash.
Change-Id: I48e11d57f69e9011ced6c3a0b51e3d89b24ad5c1
Task-number: QTBUG-55103
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We have to call the QQmlEngineDebugService back from QQmlObjectCreator
rather than QQmlComponent, as there are more ways to create an object.
We also add the new instance to the global instance list if only the V4
debug service is active, as both QQmlEngineDebugService and
QV4DebugService use it.
Change-Id: I5dcc71b2e91049bc19ec70d7b87959a61c9b6b75
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Image based code path will delete the texture in textureForNextFrame()
so deleting it again here is wrong. The convention is supposed to be that
if the textureForNextFrame returns 0, it also deleted the input texture.
So not deleting is correct for both Image and FBO.
Change-Id: I45a5ef94c13358f3637f51ae2d21224518ea6a25
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Rearranged in logical order of example build up
Change-Id: I6af8e39bd900d4ce058de46e0b3ebd5e368222c8
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Changing the accepted property within the onClicked and onPressAndHold
event handlers only have an effect if the propagateComposedEvents
property is true.
Task-number: QTBUG-46912
Change-Id: I66a9114f6dafdf79a5fbf1278656c2988ffb42a2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QObject-derived object pointers
Added the info to the QQmlListProperty's brief itself so it stands out.
Removed the original note. Also added a See also link to the complete
example.
Task-number: QTBUG-37888
Change-Id: I9e1b77b035321ade44fe57d56e68a9c3d20cb879
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Used the default sentence from Qt::KeyboardModifier.
Task-number: QTBUG-53211
Change-Id: If763ca1b8d9ee7dcfa511f3a19dd012aac4d4f9c
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Client-side pointers are not supported. Start using a VBO instead.
Task-number: QTBUG-57768
Change-Id: Ia7ac9b0838d837b02e8bf99fcd22f0373cb357c9
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Animator inherits from QQuickAbstractAnimation which is known as
Animation in QML. Its properties are inherited.
Task-number: QTBUG-55738
Change-Id: If16c87c9367825d7661940e7c1930179862e59cb
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When somebody renames the directory name underneath a QML file and its
cache file, then we need to re-generate the cache as it contains the
fully path of the source path. That is sometimes used to resolve
relative URLs (such as images) and therefore needs updating (by
re-creating the cache).
Task-number: QTBUG-57644
Change-Id: I9766668859aad8e9d71f278c3f26c0585258c14e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
An optimization revising 6f84a09dfbd15aac023580cf06e7b8c24f3b524c
Calling hoverMoveEvent every frame is too inefficient when an item
subclass is actually doing something there. For example, any
QtQuick-based Wayland compositor needs to notify its client windows
when hover state changes, so calling this method too often would
impose extra work to double-check whether it really changed or not.
Change-Id: I98b40a2083700e7a50820bd13154247444249e59
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
|