aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/tqtc/lts-5.15.6' into ↵v5.15.6-lts-lgplTarja Sundqvist2022-08-1659-215/+1177
|\ | | | | | | | | | | tqtc/lts-5.15-opensource Change-Id: Ic3ca76460360cbab866a4e881c4848e6deeaf7d7
| * QmlPreview: Protect QQmlPreviewFileLoader::load with another mutexUlf Hermann2021-08-233-11/+22
| | | | | | | | | | | | | | | | | | | | | | | | We can concurrently load multiple files from different threads, but the loader can only handle one such request at a time. Fixes: QTBUG-95825 Change-Id: I2b94d55f2cf0da6e84dabc47df5699cc57b903a6 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Knud Dollereder <knud.dollereder@qt.io> (cherry picked from commit a068fdc0b2cf7d4223d9ad15345fe9d345875936) Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
| * Use QDateTime to get offsets for emscripten (wasm)Edward Welbourne2021-08-131-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since our wasm implementation doesn't have access to time-zone data by default, but its QDateTime implementation does manage to get offsets right for local time, use it as fall-back for V4's Date implementation's DaylightSavingTA() and getLocalTZA(). This implementation might also be viable for other cases without timezone support (and a way to reset it when the system zone has changed), but we'll need to experiment to find out. For now, since we have nothing better for wasm, use it there. In passing, update a comment about a bug report against the ECMA spec to say it's been fixed (and we're compatible with the result). Fixes: QTBUG-95314 Change-Id: I40c1537815ada950dc0b5cebd4d641f7bfc45bd9 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Lorn Potter <lorn.potter@gmail.com> (cherry picked from commit 373897481fb930055e6e89035b1055f8dd80b83f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Doc: fix AnchorChanges typoJeremy Katz2021-08-121-1/+1
| | | | | | | | | | | | | | Change-Id: I6e5cc9807ddc2ae6a40a864b3154fe93fcc32d69 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit a4a80e9a5c0452936241657c19ce871094a4f335) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Avoid crash for deep aliasesMaximilian Goldstein2021-08-104-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | Aliases are seriously broken and need a larger overhaul. This patch at least prevents the application from crashing. Task-number: QTBUG-89822 Fixes: QTBUG-94820 Change-Id: Ib6acc5b6f621a902f7f5ce370043986486f3c0d0 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 30136b1a82bfc54459741483e76f2f70c937dedd) Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * doc: Improve the Input Handlers index pageShawn Rutledge2021-08-063-17/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Document the exclusive/passive grab concepts better - Mention gesturePolicy's impact on grab behavior in the TapHandler docs too - More links - Add a couple of snippets illustrating simple use cases with handlers - Don't bother mentioning Qt.labs.handlers anymore Task-number: QTBUG-68110 Change-Id: I5e6f538c2bc8cafef679f535a5248b218b4a8068 Reviewed-by: Paul Wicking <paul.wicking@qt.io> (cherry picked from commit aade6857d12b2c9cd5552d25f4d084a5fcd25f7d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * DropArea: Tell qdoc that DropArea indeed inherits ItemFabian Kosmale2021-08-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | This ensures that we list all of Item's properties in the "List of all Members" page. Change-Id: Ide7e270fd187e6adc4a20b70b8ef84d2c25a836c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 565290ef3b63fd6ac7b3eac06e64c6a09a2561ad) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * QV4::Heap::GeneratorObject: remove unused memberFabian Kosmale2021-08-023-1/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The member was marked as a Pointer for the gc; however it was never used, and thus also left uninitialized. This could cause memory corruption or asserts during the gc's mark phase. Fixes: QTBUG-95417 Change-Id: Ide826c0284b6060de8689e6f0dc753011108dba9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> (cherry picked from commit d36b480a956e2437888925aa8a1f5e3cb6c06ebd) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Sync shadereffect materialType cleanup between renderloopsLaszlo Agocs2021-08-023-15/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The render loops behave differently: the threaded one cleans the "material cache" (ill-named for legacy GL, it is correctly called material _type_ cache on the newer RHI code path) every time the window is unexposed. The basic one keeps it and only cleans the cache (and so destroys the opaque QSGMaterialType objects) only when the scenegraph (i.e. QSGNodes and related geometry and materials) gets released. The former is incorrect, because if the QSGMaterial does not go away, the QSGMaterialType should stay valid too. Strictly speaking this is not a fatal error because the QSGMaterialType pointers are never dereferenced. However, potential reuse of the same address due to a subsequent 'new QSGMaterialType' is an issue. Just switch to the latter everywhere, and also, to be fully pedantic, make the order uniform across all 3 render loops: first destroy the scene tree (where each QSGGeometryNode destroys its QSGMaterial if owned), then the cache (which owns the QSGMaterialTypes for the now-gone shadereffect nodes). Fixes: QTBUG-94844 Change-Id: Iebbf34d36b9eccca85e2557b045e326eef347beb Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| * Avoid infinite loop in designer supportThomas Hartmann2021-07-275-7/+86
| | | | | | | | | | | | | | | | Task-number: QTBUG-94928 Change-Id: I1ee14600fb0fd9f0ee499546e3ffcd66114aaeff Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io> (cherry picked from commit d3cae36550fe8b82c641cef6a207e991a9064d85) Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
| * Pass the focus reason through to the control on mouse pressVolker Hilsheimer2021-07-244-5/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise, a TextInput item will always receive OtherFocusReason when clicking into it. Add a test that simulates focus changes with mouse and keys, records the incoming focus events and verifies the correct focus reason is set in the event. Qt Quick provides no mechanism to access the focus reason from within QML (onActiveFocusChange only has a bool parameter, the focusReason property exists only in QtQuickControl). Task-number: QTBUG-75862 Change-Id: Ifea95c7ef2ac88c6c8e8bbdc8d2dbe5205ff922e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit bbcbb7c78f2f07e6c5e380ec5c018ac2a7abf292) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Update QQuickImage's DPR if re-loading the image didn'tVolker Hilsheimer2021-07-231-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An SVG doesn't have a DPR, but we need to reload and repaint it anyway when the DPR of the screen changes. So store the DPR of the item explicitly if reloading it didn't change the value (for instance, because sourceSize was not set). Otherwise, DPR changes are only handled when moving from a 1.0 (the default) DPR display to a different display, but not when moving back. Fixes: QTBUG-94622 Change-Id: I9f0a847699ab027ef876e341b8c6a954a6167ab3 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 08838f434b55024d9d5a9252fc2a3fb782b087da) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Doc: Document matrix4x4 transformation functionsYuya Nishihara2021-07-211-0/+67
| | | | | | | | | | | | | | | | | | | | | | These functions have been added at ded64d0368 "Make the qml/js matrix4x4 type more useful." Change-Id: Ia61eb5c7c058e2b94bb1b8b0e7bd56371feadca1 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit d3b99595aee699dc4f01fb3658e0b33ba313f9f2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Add tests of matrix4x4 transformation functionsYuya Nishihara2021-07-211-0/+54
| | | | | | | | | | | | | | | | | | | | | | | | These functions have been added at ded64d0368 "Make the qml/js matrix4x4 type more useful." Let's add some tests as I want to add another overload of rotate() function. Change-Id: I12e5970b8e3a6709e9f794c9713feb277cc8c449 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit b4866c499a6b2d1f42b77f08287988b01118c9f6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Handle QScreen::physicalDotsPerInchChanged changes for the initial screenVolker Hilsheimer2021-07-211-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We connect to the signal when the screens change (in QQuickWindow::handleScreenChanged), but never for the initial screen. Not connecting means that changing the DPR of the initial screen doesn't re-render QQuickItems with the new DPR, which was in particular visible for QQuickImage when displaying SVGs. Task-number: QTBUG-94622 Change-Id: I44ff3f8f3713d5a7bba8b6b8b4d5ca14530fe373 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 7e39a2204382a78ac6ff1e32dfe29dcbce65004c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Don't let PointerHandler steal mouse grab from keepMouseGrab layerShawn Rutledge2021-07-193-8/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As explained in the comment, the handler can override the keepMouseGrab "veto" if the item is a parent (like a Flickable) that filters events, but not in other cases. The logic was wrong though, apparently. Amends 090f404cf80da35734f712b02cc1543acecd5b62 Fixes: QTBUG-78258 Task-number: QTBUG-79163 Change-Id: I9a473ab3b23743f863cb0be13767fdbc29cd5e1c Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit b09ce7dcd8ecf24ef23da8197a64e3fced3fc894)
| * Emit grabChanged() from DragHandler and PinchHandlerShawn Rutledge2021-07-193-1/+27
| | | | | | | | | | | | | | | | | | | | | | | | Followup to ca7cdd71ee33f0d77eb6bf1367d2532e26155cb2 : when overriding a virtual function, it's good practice to call the base class function, in the absence of any reason not to. Fixes: QTBUG-93880 Change-Id: Icbd04faec51d55d8fbf73319bd20f5846761d3d5 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit a10eeee97d42f05409074f69cc99d9a8da5db077) Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Resolve data race on QQmlPropertyCache's arguments objectUlf Hermann2021-07-155-25/+21
| | | | | | | | | | | | | | | | | | | | | | We need make its assignment atomic. This does not apply to Qt6, because in Qt6 we don't need the property cache to resolve argument types. Task-number: QTBUG-93973 Change-Id: I9588c3582754a9aba3a6aa9e325de87d44d06aa2 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * Resolve data race in QQmlPropertyData in a minimally invasive wayUlf Hermann2021-07-154-85/+138
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We keep all the idiosyncrasies of when what flag or member is set. We only make sure not to call resolve() concurrently by moving the propType into an atomic int which also replaces the "fully resolved" flag. We need to move another 16bit member in there as only 32bit atomics are guaranteed to work everywhere and we want to keep the fixed size of the class. So we choose the relative property index and only set it when we are sure there isn't a data race. This is fine because for missing relative property indices there is a fallback. Task-number: QTBUG-93973 Change-Id: Ia357444cad85fe2df234e76226dd8adc10fe8549 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * Register the QML builtin sequence metatypes only onceUlf Hermann2021-07-151-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | Use the C++11 guarantee on function-local statics to be initialized exactly once for this. This does not apply to Qt6 because there the sequence types have been rewritten. Task-number: QTBUG-93973 Change-Id: Ia885f59da287036efa998cdf32211bb029090334 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * doc: Improve QQuickItem::containmentMask() docsShawn Rutledge2021-07-141-9/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The Qt Quick docs weren't as explicit as possible; and the \qmlproperty did not generate any C++ docs. Amends bf74a908cb0591c2adc024a6f93d566c7348c125 Fixes: QTBUG-89375 Change-Id: Ib81796c1d7a00a7a48940c65137e4ed6a38a21ab Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit bcf3f29c6d26777c8db814477b8f3c3e19826234) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * When setting the line dash to be an empty array reset the style to SolidAndy Shaw2021-07-142-1/+35
| | | | | | | | | | | | | | | | | | | | | | | | An empty line dash array is indicating that it should be reset to be a Solid line, otherwise it ends up reusing the previous settings for the pen instead of drawing a solid line. Fixes: QTBUG-75553 Change-Id: I16466672de95da8ef0cf3fc261969e7cc6add227 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit c31638f16b1fe709dd9df232afb9ab7fac3b231e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Fix QtQtuickImage docs: correct properties' signaturesIvan Tkachenko2021-07-021-2/+4
| | | | | | | | | | | | | | | | | | | | 1. Add missing "readonly" annotations. 2. Change sourceSize's type to QML basic type 'size'. Change-Id: I3636818571b1e923058363f62b595567a1ccdcf0 Reviewed-by: Paul Wicking <paul.wicking@qt.io> (cherry picked from commit 9e0fdcf87fb0fd35a3313dff6243da6597289455) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * crash fix - avoid wrong gcc optimizationTim Jenssen2021-07-022-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a crash that gcc optimized the code in the way that inspectedObjects->contains(object) executed at a nullptr. (only release only some gcc versions) This was already fixed in the past but reintroduced by another commit in the past. Task-number: QTBUG-94798 Change-Id: I9759f3347712f706dd99303ce9d804667c1525f3 Reviewed-by: Marco Bubke <marco.bubke@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit e865d977f6b6b0e3f7e7e61e4a9200f047b0213e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Fix warningsAndreas Buhr2021-06-291-2/+2
| | | | | | | | | | | | | | Change-Id: I9dda78c04ce061767e719eb135ef8922c88704f8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit ac7b6617feca7fe5f63e71f8285090c74758d723) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * doc: Use DragHandler rather than MouseArea in the externaldrag snippetShawn Rutledge2021-06-231-10/+10
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-68078 Task-number: QTBUG-76310 Change-Id: Id7b971f5147474274200ef2fdd52ce21f8d60bdd Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 5971a6faaa1124f5ef3f0b42d4ed0298cf8096a3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Ensure model is in context if required properties are not usedFabian Kosmale2021-06-234-0/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to set the set the contextObject already in QQmlDelegateModelPrivate::object, as the context property might be accessed in a child component before we are able to run setRequiredProperties (which would set-up the context in case there are no required properties). Instead of delaying setting the context object, we clear it now in setRequiredProperties. This has the drawback that one might be able to access context properties on initial component setup which should not exist (due to the presence of required properties). This could be avoided by inspecting the Compilation Unit and only setting the context if we do not find required properties, however that needs further work to expose the necessary information. Fixes: QTBUG-94223 Change-Id: I678de81408539417fc650f94da4c9f0d3167653d Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 58cd06033cacadab541efaa16a3eecec37dab0fa) Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
| * QQuickItem::forceActiveFocus(): actually force active focusShawn Rutledge2021-06-103-0/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was trying to get by with setFocus() but that doesn't always work, in cases when the item's d->focus flag is true (leftover state) but it doesn't actually have focus anymore after a reparenting scenario. Item.focus represents the intention to be focused when possible, and does not necessarily change due to environmental circumstances, such as having its parent reparented. QQuickItem::setFocus(true) returns early if the new requested focus state is the same as the stored d->focus; so it was not enough for foceActiveFocus() to call only setFocus(). In the bug, TextInput and Loader both get stuck in the state d->focus == true, so forceActiveFocus() did not do anything before. Fixes: QTBUG-89736 Change-Id: Ib7f4caccf81b60a02e2655332b64efba4d1fd7cf Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit a8be17a1472c6f504c0c40f68fdc13df035ac4b4) Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
| * Bump versionTarja Sundqvist2021-06-071-1/+1
| |
| * a11y: make links have pressAction firstMorten Johan Sørvig2021-06-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | VoiceOver on macOS maps control-option-space to the first action, so make sure that one is “press”. Fixes: QTBUG-93857 Change-Id: I9bb40c6e97772922bbcf349df0af3173c7f5912c Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> (cherry picked from commit 2028b74fd24a9e7f822203372fd96af9356e7cf7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Set a11y role for QQuickTextInput to EditableTextMorten Johan Sørvig2021-06-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | Extend the current special case handling for text items to also handle QQuickTextInput. Task-number: QTBUG-93599 Change-Id: I5c0393e5d34a8bce2c6a2cbf491c6d3cad3ff294 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> (cherry picked from commit 94f34ef69bda1378471c0e39bd354b99179dbb0d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* | Merge remote-tracking branch 'origin/tqtc/lts-5.15.5' into ↵v5.15.5-lts-lgplTarja Sundqvist2022-05-1649-164/+819
|\| | | | | | | | | | | tqtc/lts-5.15-opensource Change-Id: I5e0eef69a31bcfda65cf965fb4c8c330581e5168
| * doc: Improve QQuickItem::ItemChangeData docsShawn Rutledge2021-05-261-5/+11
| | | | | | | | | | | | | | | | | | Amends 15b232bf694fedf553abac09af077a58ce571f9d Change-Id: Icbc46e795af560b51bc6654e853944e1c591a169 Reviewed-by: Paul Wicking <paul.wicking@qt.io> (cherry picked from commit a69b5a39770768844292981b5787e3e8cdc8a863) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Remove tst_pixelMitch Curtis2021-05-262-66/+0
| | | | | | | | | | | | | | | | | | | | | | | | Future patches will add uses of pixel() and other accessors to selftests/tst_grabImage.qml, and that's where those kinds of tests should be. Task-number: QTBUG-27671 Change-Id: I3ad42ded144cb7fa8b196a3ac58abcd9ee9b2abf Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Alexander Akulich <akulichalexander@gmail.com> (cherry picked from commit 1d1910e70778114e5eae586792664cf6c0997ed0)
| * Give a warning when StyledText encounters a non supported entityAlbert Astals Cid2021-05-261-0/+4
| | | | | | | | | | | | | | Change-Id: Iea8bdf25542cd404ee71141467ac1f1398a7d0df Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 8cd43e370040e23fcbd03ad64969e683055bd7d0) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * docs: Clarify EventPoint propertiesShawn Rutledge2021-05-261-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - pointId is the point ID, obviously. - Users should not set the accepted flag in QML. It's not possible to make this mechanism useful in Qt 6. In Qt 5, there's no pressed(EventPoint) signal; setting it in onTapped() doesn't have the desired effect; and setting it procedurally in any context is an ugly MouseArea hack that we'd better avoid repeating. It was already marked readonly, but the docs mistakenly suggested that it should be settable. The Q_PROPERTY is writable, but probably shouldn't be. Amends a4439d6baf6996fd018575f5ed752b4d4429f92a Fixes: QTBUG-94016 Pick-to: 5.12 Change-Id: I9ee23e8fd4d4417638c520425882b83c26588526 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| * Bump versionTarja Sundqvist2021-05-201-1/+1
| | | | | | | | Change-Id: I687869905f29fa2af3d6200fd795bcb90d2aedc5
| * Consistent naming for (to|from)Is(Defined|Sourced) in animationsAndreas Buhr2021-05-136-39/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To store whether "from" and "to" values are defined and/or sourced, QQuickPathAnimationUpdater used fromDefined format, QQuickAbstractAnimationPrivate used fromIsDefined format, QQuickAnimationPropertyUpdater used fromIsDefined format, QQuickAnimatorPrivate used isFromDefined format, QQuickBulkValueAnimator used fromDefined format, QQuickAnimationPropertyUpdater used fromDefined format. This patch changes all these to use the variable names "fromIsDefined", "fromIsSourced", and "toIsDefined". This makes the code more readable. Change-Id: Ia6c228208eb651247b0ba70f83afadb5b1027049 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 702b00bc8bfdc51592a01c9b7ed5939d85a7e192) Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Map window coordinates to the same coordinate system as the QPointerEvent pointAlexey Edelev2021-05-123-4/+95
| | | | | | | | | | | | | | | | | | | | | | | | If the window has parent windows its geometry should be mapped to the global coordinates before check if it contains the point coordinates. Fixes: QTBUG-91716 Change-Id: I300547361dbe895b67caeee0d47f416426444552 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit c740a9d30571079fa22fd26cb8e72df6ca28c7b2) Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
| * Doc: Fix the Shapes table to reflect realityAndy Shaw2021-05-121-3/+4
| | | | | | | | | | | | | | | | PathPolyline and PathMultiline do not have GL_NV_path_rendering support so this is updated to reflect that. Change-Id: Iaa119e51bb22d6c8b4907818ffda96cca299893d Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * Doc: Clarify preconditions for using QML_ELEMENT et alUlf Hermann2021-05-111-0/+15
| | | | | | | | | | | | | | | | | | | | You need to include qqml.h and you need to make your own class declarations available to the registration code. Change-Id: I98e6b0b8a0acc309482416c3137d8ed782bbdc82 Reviewed-by: Paul Wicking <paul.wicking@qt.io> (cherry picked from commit 40c759cbfa9dfb944a924b6c01fbfd1a15a7a25e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Do full overlap checks within the alpha render list when rebuildingLaszlo Agocs2021-05-105-3/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not applicable to Qt 6.1 and newer because those already have this as part of another patch (9aa3db2e19b2e1622b878cf34b1978f4fdbcac39), which was meant to be a performance optimization. With the example provided it is clear however that there is an actual batching problem in there, with certain scenes, where the problem of incorrectly batching two elements together becomes visible only upon a set of conditions such as: - there is a set of mergeable and non-mergeable nodes (e.g. non-atlased Images + Rectangles or non-atlased Images + Texts) - all in the alpha render list (semi-transparency, e.g. Image with alpha, Text, Rectangle with opacity, etc.) - laid out in a certain way that certain overlaps occur, e.g. in a column with the Images under each other, with Rectangles or Texts on top of the last two. - then trigger certain scene changes, e.g. swap the source of the second and third Image. Certain changes will end up with the incorrect merging described in the render_AlphaOverlapRebuild.qml test case. If the two Rectangles or Texts get merged in one batch, rendered before the third Image, the result is incorrect since the "background" Image is then on top. This can be difficult to reproduce as there are a number of preconditions for the scene and the changes in the scene. But when it happens, it is a critical rendering error. Fixes: QTBUG-92984 Change-Id: I016614d8465f6917ebf6c7d9b2460a31decdda34 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * MASM: Put pageSize into an inline namespaceFabian Kosmale2021-05-072-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Apple errorneously detects pagesize as belonging to their private API. Avoid this by putting the functions into an inline namespace to change their mangling. Fixes: QTBUG-69577 Change-Id: I061febdc6f961fa8a6e1d43de4154a8e26b04f27 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit 719fa10c8219537187f2e3c63eacdf44bd76d410) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * TextEdit: update all glyphnodes on QTD::contentsChanged() signalShawn Rutledge2021-05-071-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When a syntax highlighter changes formatting, the actual text doesn't change, and QTextDocument emits contentsChanged() but not contentsChange(int, int, int). We need to regenerate QSG nodes. contentsChanged() is connected to QQuickTextControl::textChanged() and from there to QQuickTextEdit::q_textChanged(). Fixes: QTBUG-74572 Change-Id: Ia62aa6d3adfc9a9d496ee8811db4c2d963dd0c54 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit d0ffa3c42bb58eef0d2a2c3326984695a60e9667) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * qquicktableview: upon forceLayout(), check for visible rows/columns at the ↵Richard Moe Gustavsen2021-05-062-30/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | origin There is a bug in TableView which will stop the user from scrolling/flicking back to the first column if it has become visible after first being hidden. The reason is that this is somewhat of a special case that happens only if the current left column is already at the origin of the viewport, since that will fool tableview into thinking that there can be no more columns in front of it. This patch add an extra section to the function that checks for visibility changes, to detect this special case. Fixes: QTBUG-93264 Change-Id: Ieaad507b45ea11dc231519e9f49cbf182d6443ba Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit 546df684e272bbbc5e8b871ae9b224fdb34a4cfa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * V4 Debugger: Collect locals also from block scopesUlf Hermann2021-05-054-3/+87
| | | | | | | | | | | | | | | | | | Block scopes can contain "const" and "let" members. Fixes: QTBUG-92224 Change-Id: Ie13d7d573e2759c510e1ea48c6edc68a095f40a0 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 051dd3178bc4c9214af60c69cecfc2c28f13174d)
| * Make PinchArea translate correctly inside a rotated parentShawn Rutledge2021-05-053-1/+143
| | | | | | | | | | | | | | | | Fixes: QTBUG-63673 Change-Id: I91231bb8555b7eb02a9580f9f184b261d8bd44c8 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit 7642205be45135add120373299df02e05f4ffc58) Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Avoid stale QSGTexture pointer accessesRomain Pokrzywka2021-05-041-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | On rare occasions, it seems to be possible for the texture to be used after deletion, which results in crashes in pixmap() after casting. Rather than storing a raw pointer, wrap the texture in QPointer to avoid the stale pointer accesses. Task-number: QTBUG-80415 Change-Id: Ia0ee556f4a3a4eee777ca14065635f4bc5f90da2 Reviewed-by: Andy Nichols <andy.nichols@qt.io> (cherry picked from commit 1c010b202506bb7eb0f0e24ab37ad50e319abada) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * V4 debugger: Properly count break pointsUlf Hermann2021-05-044-19/+88
| | | | | | | | | | | | | | | | | | | | | | | | We cannot just take the number of active breakpoints as ID for the next one. It's possible to remove breakpoints after all. Fixes: QTBUG-93404 Change-Id: Icde7a8e47c740e930f2313ffd9034b00033a54aa Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 7f12cf3346d65d0bff78fff8000ed519fbb921ba) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Fix build with GCC 11: include <limits>Jarek Kobus2021-04-291-0/+1
| | | | | | | | | | | | Task-number: QTBUG-90395 Change-Id: I5a767ffd92f5d598d1e85ed7efb970dc98a31a74 Reviewed-by: Andy Shaw <andy.shaw@qt.io>