| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In a3da23d5a92ab0f9b8280b9ed591986f8ac6a2d6 we added linear filtering
to the image node in rich text when smooth was set to true (which it
is by default). But we also enabled mipmapping, which caused a bad
performance regression when updating the text item.
If we want to support mipmapping, we would have to add a separate
property for this like in the image node, but since the original
bug report only called for supporting smooth scaling like in
Image, we can simply revert part of the change.
[ChangeLog][QtQuick][Text] Fixed a performance regression when
rendering a rich text item with scaled images.
Task-number: QTBUG-54723
Change-Id: Ib930112b76f0fe0b2e658f86520a9290354b8f6f
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
RichText can have blocks of text with varying font sizes, so we must
ensure that the cursor delegate's height is also set when it's moved to
a different position in the text.
Change-Id: I00691a94a2360c7d3272571fc4ba0da28b01006a
Task-number: QTBUG-54934
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
| |
Change-Id: Idcc23782f2ed382914a74740ad9f2984d7a98f78
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quick/items/qquickwindow.cpp
tests/auto/quick/qquicktext/BLACKLIST
tests/auto/quick/qquicktextedit/BLACKLIST
Change-Id: I8bd68b0b5e853b7908791d2cbddd18dd527c76ae
|
| |
| |
| |
| |
| | |
Change-Id: I9a38ab8ff60921e6d5ff6c2fa476b24d28781feb
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The "fixedsys" font is available on Windows at least, so while this
test may not add any value on other platforms, it won't hurt either,
and this was something that regressed on Windows before.
Task-number: QTBUG-56659
Change-Id: Id01dedcbdc2fe74027caf31dd0dde6729ade8c63
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since qtbase commit beef975, QTestLib avoids generating accidental
double click events by adding 500ms timestamp delta on release events.
The test requires a press-and-drag-and-release type of sequence with
double and triple clicks. The triple-click case is handled fine with
QTest::mouseDClick() + press + move + release, but the double-click
case is using QTest::mouseClick() + press + move + release and relies
on the accidental double-click event generation that QTestLib now
deliberately prevents.
I can't think of a nice way to inject the move event in the middle of
a double-click sequence generated by QTest::mouseDClick(), so we just
send the missing double-click event by hand.
We can also remove the QStyleHints::mouseDoubleClickInterval waits,
which were there to prevent the aforementioned accidental double click
events that can no longer happen. This reduces the total execution
time of mouseSelection() by roughly 90%.
Task-number: QTBUG-50022
Change-Id: I252e87d6a49ea86a44cfa347a29eebee12fd36d1
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since qtbase commit beef975, QTestLib avoids generating accidental
double click events by adding 500ms timestamp delta on release events.
Thus, now we can remove the QStyleHints::mouseDoubleClickInterval wait,
which were there to prevent the aforementioned accidental double click
events that can no longer happen. The default inverval is 400ms, so
this saves us nearly half a second on most platforms.
Change-Id: I7a670b70c012ac027dc951ebafdf5e7d53b89ce9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
There's no such test as mouseSelection in tst_qquicktext.
Change-Id: I09bf4c61b53acd9811e020379a29c80fce9fe48b
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The replace Text item that is overlayed on the TextInput, behaves
like the TextField.placeholderText property. The opacity of the item
varies based on whether the TextInput has any text or not. Using the
length property to adjust the opacity fails on platforms such as
Android where the length is not updated until the text is committed
(i.e. until you hit the [ENTER] key). Whereas the displayText
property is updated when you key in text, so it is ideal to use the
length of the displayText than the length property itself.
Change-Id: I678e5db5e5d5027e4aae816b6620095c68138eb7
Reviewed-by: Shawn Rutledge <shawn.rutledge@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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows Qt Quick Controls 2 to register a shortcut context matcher
that makes shortcuts behave well with QQC2's item-based popups, which
QQuickShortcut is not aware of.
Task-number: QTBUG-56562
Change-Id: Ia2518fd6ac7140f60aa38c7d9af557007e9db23b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
When QT_SCALE_FACTOR is 2, fb.width() is 400 instead of 200, for
example.
Change-Id: Iec02d7cfd49d29fceda6645377b75e4607cceb6f
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Complete the patch for tautological-compare warnings after it was
merged form 5.6.
Task-number: QTBUG-56266
Change-Id: I39f25f429b90deb8d8830fb15f45ce29a5a4c51c
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
52e1044a1a22525b960d9e1d336ac06c4f39e6d5 in qtquickcontrols missed
this.
Change-Id: Ie104c421e34d4d2a13a88864a279eb65738bd5a8
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
|
| |
| |
| |
| |
| | |
Change-Id: Ifc33c17d125ca794a157a87dc5cc1be51c2aaefb
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The commit message of 08327da, and the change log of Qt 5.7.0 promised
that mapFromGlobal() and mapToGlobal() were available in QML. But since
the revision 7 of QQuickItem was not registered, this was not entirely
true.
Due to a little quirk in the QML engine's handling of revisioned
methods, mapFromGlobal() and mapToGlobal() were only accessible via
an identifier or property, but not directly:
// works
MouseArea { id: ma; onClicked: console.log(ma.mapToGlobal(Qt.point(mouse.x, mouse.y))) }
// ReferenceError: mapToGlobal is not defined
MouseArea { onClicked: console.log(mapToGlobal(Qt.point(mouse.x, mouse.y))) }
Furhermore, this is inconsistent with how mapFromItem() and mapToItem()
are exposed to QML. Even though the C++ versions of these methods take
QPointF and QRectF, the QML versions take 2-4 number specifying x, y,
width and height:
object mapFromItem(Item item, real x, real y)
object mapFromItem(Item item, real x, real y, real width, real height)
object mapToItem(Item item, real x, real y)
object mapToItem(Item item, real x, real y, real width, real height)
Therefore the signature of mapFromGlobal() and mapToGlobal() should be:
object mapFromGlobal(real x, real y)
object mapToGlobal(real x, real y)
This change implements the QML versions of these methods using
QQmlV4Function, and adds the missing documentation for the QML API.
NOTE: This is QML-only API.
Change-Id: I2ced4836d274c7d1e644ea29fc25dbdd2045001b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ib31008e593442ca5813fb14ae6b02f7ab2577395
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the platform does not have JIT, a warning about this is printed
into the process stderr, so the test fails.
Change-Id: I67c605bd09659c444d0a05f476314e9c7fc2ce6d
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Added the generated data files for the binary compatibility tests
for QtDeclarative for Qt 5.7.
Change-Id: Iadaf798312e0e59b0c6d48ce31e912994d82ba4e
Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
|
|\|
| |
| |
| | |
Change-Id: I081d9b15796b4133d2ba6f1a862f15b873a4846d
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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've had this feature for a long time, to use pixel deltas and scroll
phase effectively, but no autotest until now. It's still not very
thorough but it's a start.
Task-number: QTBUG-55871
Change-Id: Iaf6e7a842ce90828da3253e8673cac9905abd046
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Error message:
Undocumented parameter 'image' in QQuickTextureFactory::textureFactoryForImage()
Change-Id: If7cb1e63091c23304b64c5688af0abe55fc37ff4
Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
|
|\|
| |
| |
| | |
Change-Id: I48764527fa1ab6d8d59c24552394459b1cdc58ee
|
| |
| |
| |
| |
| |
| |
| |
| | |
As mentioned in QTBUG-54404 this is an unfortunate breakage we choose to
accept.
Change-Id: Id511188a2dcd35e8e16e7651c9764c8be1b5afb1
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
Data files for bic test added for QtDeclarative
Change-Id: Id576ca010b9f18a6b8a4c79625375ee4cc3cbf93
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|