aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* DeliveryAgent: stop sending hovering mouse moves to grabberHEADdevShawn Rutledge6 hours3-1/+25
| | | | | | | | | | | | | | | | | | | | For applications running under Qt Wayland compositors, touch events may be accompanied by fake mouse moves coming from the touchscreen device. That might or might not be useful: but since most of Qt Quick ignores such stray mouse moves, and PinchHandler was getting deactivated by them, we now make an effort to avoid delivering them to PinchHandler after it has become the exclusive grabber of those touchpoints (which looks the same as being the grabber of "that" mouse). Added a reminder to the handlePointerEvent() comment that tablet events are different: hover events are not enough, in fact we need to deliver TabletMove events to HoverHandler so that it has a chance to change the cursor (i.e. keep the tst_HoverHandler::deviceCursor test working). Pick-to: 6.8 6.9 6.10 Fixes: QTBUG-123985 Change-Id: I513caf277e2fb87401b3e0bb5547f9623467b423 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* sg: optimize Renderer::cleanupBatches() by removing sorting and copyingAurélien Brooke7 hours1-9/+12
| | | | | | | | | | | | | Replace the previous stable sort + filter approach with an in-place compaction loop that moves valid batches forward and recycles invalid ones immediately. This removes the need for temporary heap storage and avoids redundant copying and sorting, while preserving the original order of valid batches. Change-Id: Icbe2c3d96b5d38a0a1f2c14ce175eb19d45d5a63 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Fix QSGGeometryData::hasDirtyIndexData used wrong dirty flagDheerendra Purohit18 hours1-1/+1
| | | | | | | | | | | The method incorrectly returned m_dirty_vertex_data instead of m_dirty_index_data. Pick-to: 6.10 6.9 6.8 6.7 6.6 Fixes: QTBUG-123988 Change-Id: Ib99175adabc711c8449ff3db755fbade968f7c63 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Skip reordering content model if items aren't reparented to item viewSanthosh Kumar18 hours1-9/+31
| | | | | | | | | | | | | | | | | | | | | | | The container reorders the content model items after component completion. The content model can be assigned as a model to the item views to visualise through a container content item. The content item can have item views anywhere in the object hierarchy. If the item views are somewhere down in the line and not at the top, there is a chance during component completion that some of the items are reparented to the item views, and others are with the container content item itself. Thus, reordering at this stage (having partial items) can lead to changing the order of elements within the content model, which further causes repositioning of items within the item views. This patch resolves this issue by skipping reordering the content model, if any of the items are not reparented to the item views. Fixes: QTBUG-138490 Pick-to: 6.10 6.9 6.8 6.5 Change-Id: I1673e600774e2821653542c003d2d573f62d024d Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QtQml: Properly null-check module exports when iteratingUlf Hermann37 hours1-2/+2
| | | | | | | | | | | | | We construct the iterator from the exports of the module in all current code paths. Therefore, this case can't happen in the current code. Still, the fact that we have a branch that throws a reference error there tells us that it's intended to work on other collections of names, too. Let's complete the check and also check for nullptr since resolveExport can indeed return that. Coverity-Id: 486706 Change-Id: Ieaf3996e76265e9e6ef59c2168699e47e41e8ff5 Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
* JSRuntime: Add const correctnessOlivier De Cannière37 hours2-5/+5
| | | | | | Change-Id: I2fc82de562909ab2e0eecfbbe1e2e53953a33756 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QtQml: Optimize retrieval of string from ValueUlf Hermann37 hours1-2/+2
| | | | | | | | stringValue() already checks isString(). We don't have to do it twice. Coverity-Id: 486710 Change-Id: I074228f9a120c3bbfe6d4a65f05fe11322fbd07b Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
* QtQml: std::move strings rather than copying themUlf Hermann37 hours2-4/+5
| | | | | | | | Coverity-Id: 486699 Coverity-Id: 486697 Coverity-Id: 486715 Change-Id: Icdd15ff578f8be55fe9db3ffc38e893f667edc40 Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
* QtQml: Drop dead codeUlf Hermann37 hours1-2/+0
| | | | | | | | | The propertyList is an array allocated on the JavaScript stack. None of it can be null. Coverity-Id: 486709 Change-Id: I3178181aa89bfff86fb5aa469660a912b4f1691c Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
* Adapt to removal of QAbstactFileEngine::entryListLuca Di Sera37 hours2-8/+0
| | | | | | | | | | | | | The method is (going to be) removed in 6.11 and is currently producing a compilation error, as the method is marked `override` but is not overrinding anything anymore, on current development builds that use a recent qtbase. Follow along the base class path and the resolution method in similar patches (e.g for Qt Creator) by removing the method in its entirety. Change-Id: I6a334681764d9589317ef2121691f8d4e7888b98 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Curverenderer: Make QQuadPath::Element::isSubpathEnd() reliableEirik Aavitsland40 hours1-0/+5
| | | | | | | | | | QQuadpath did not maintain the isSubpathEnd-flag, so it would typically be lost during path processing. Fix to ensure that algorithms that test for it work correctly. Pick-to: 6.10 Change-Id: I793b06ef87087cce4a4545bcd7fd2e20ca3790ad Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Document QQmlComponent error handling in detailed descriptionMitch Curtis47 hours1-0/+9
| | | | | | | | | | | | | | QQmlComponent has two stages where it can produce errors that weren't accounted for in the first example (which is what most users will see first): in its constructor and in create(). Add error handling for these so that users aren't confused when their QML silently fails to load or they get crashes trying to access non-existent objects returned by create(). Pick-to: 6.5 6.8 6.9 6.10 Change-Id: I42d0222a997b3cac01cd191bb076513642f5716d Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Android: Add braces to m_hasQueuedStatus checkAhmed El Khazari2 days1-1/+2
| | | | | | | | | | | | | Added braces to the m_hasQueuedStatus check for consistency and to prevent potential errors if more statements are added later. No functional changes. Amends 76bb559e5fbf2dfaf017f8b4a3435938b4d5f4fa Pick-to: 6.10 6.9 6.9.2 Change-Id: Ic465f41cf08aed0f3f6222786f8fa13f8657d385 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* FileDialog: Fix binding loops for Fusion, Material and Universal stylesOliver Eftevaag2 days3-2/+3
| | | | | | | | | | | | | | | These binding loops were introduced in 0e4d470d3df3963db3546f94e580994473052283, since the nested overwriteConfirmationDialog's width were still determined by the contentItem, but the contentItem's width depended on the overwriteConfirmationDialog's width. This resulted in a binding loop, which could be fixed by giving the overwriteConfirmationDialog an explicit width. Pick-to: 6.10 Change-Id: I3bb2957fd31710b093eb7f7e887df8f045809921 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* FileDialog: Fix major sidebar issuesOliver Eftevaag2 days5-19/+15
| | | | | | | | | | | | | | | | | | | | | | | | The SideBar were facing two major issues. The first had to do with the buttonDelegate's `required icon` line, which didn't work after 7322e051c9c3d8dc715c20a3d42d9be83ea2295c, resulting in an error during component creation. The other issue had to do with the icons qrc paths only working for the Basic style. Since the paths were relative, they'd assume that no file selectors were being used, and thus a simpler path resolution. This caused all non-basic styles to resolve the url to an invalid resource. The first issue was fixed by removing `required icon`, and the latter was fixed by using complete qrc paths. In addition, we do a small drive-by fix, by putting a user facing string into qsTr(). Pick-to: 6.10 6.9 Change-Id: If6cd7ab638ec349b39fe0e4bc763ead78a51a0f4 Reviewed-by: Jonas Karlsson <jonas.karlsson@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* SearchField: Use highlightedIndex instead of currentIndex in stylesDilek Akcay2 days3-6/+6
| | | | | | | | | | As highlightedIndex property is added to SearchField, relevant style implementations that previously relied on currentIndex have been updated to use highlightedIndex. Pick-to: 6.10 Change-Id: Ib8bc065c92aa95a1ea5ea3cd5c3825bbd15c2f2d Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* QtQml: Deduplicate enum handling in QtObject and clean up APIOlivier De Cannière2 days6-76/+146
| | | | | | | | | | | | | QJSValue is slow and can be avoided. Use more specific types. Also, switch to an exception based error handling instead of returning undefined. Amends 5e312953f6c41f244344bbd05a41f205a8d3f86d, found in API review Pick-to: 6.10 Change-Id: Ie7c304a0dd76c8096e7c1f9b7cc3cfe7471649da Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QQmlJSTypeResolve: Support T -> QmlListProperty<T> conversionFabian Kosmale3 days1-0/+6
| | | | | | | | | | The engine handles this just fine, and we had examples (and probably documentation) shownig this pattern. If we want to warn about it, it should have a dedicated warning. Pick-to: 6.10 Change-Id: I105f4a49ecfc6fbd5f00c683e0dbef7d34a64a1d Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
* FolderDialog: Declare FileDialogDelegateLabel from its module aliasOliver Eftevaag5 days5-5/+5
| | | | | | | | | | | | This was already done for FileDialog, but not for FolderDialog. It prevents a crash. Amends 87f6e63dfc32e4eac861f3490cb961dfbb028b23 Pick-to: 6.10 6.9 6.8 Change-Id: If6ab9152b9f1f5dcef92dfa891d09202968ef81e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* qmllint: allow mixing ID based with text based translationMasoud Jami5 days5-95/+60
| | | | | | | | | | | | | Since 6.10 Qt i18n component allows mixing id based with text based translation and this is reflected in lrelease, lupdate, and documentation. This patch is a partial revert of 8b61addfa42525c1bd5f27febbe62dcbdb645fc9 and removes the qmllint warning in the case of mixing these two. Pick-to: 6.10 Change-Id: Iae2407da2bc5cc21fc3664051834c99b8c72fe58 Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
* Android: fix broken link under QtQuickView pageAssam Boudjelthia5 days1-1/+1
| | | | | | | | Amends e0791e838daeb0dc99a3f28270bbfda3214a9fbf. Pick-to: 6.8 6.9 6.10 Change-Id: I8bf20c2cb01e1ff8e261fbb0c596a5b6b6c8aa68 Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
* QQ4A: Docs: Update connectSignalListener docs in QtQuickView/ContentPetri Virkkunen5 days2-7/+16
| | | | | | | | Update return value and behavior descriptions in QtQuickView/QtQuickViewContent::connectSignalListener functions. Change-Id: I566b5c7940c74daec6f20072d2db35bb66d3f86f Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* QQ4A: Enable signal connection queuing in QtQuickView and ContentPetri Virkkunen5 days2-26/+43
| | | | | | | | | | | | | | | | | | | | | Use SignalQueue, implemented in an earlier patch, in QtQuickView and QtQuickViewContent to handle connecting to QML signals before the QML is done loading, in these cases: * QtQuickView: If the underlying QAndroidQuickView object has not been created * Once the QAndroidQuickView is created and the view reference is set, we can send the queued connections to the C++ side safely. * QtQuickViewContent: If the Content has not been attached to a QtQuickView * Once the Content has been assigned a QtQuickView, we can send these queued connections to the QtQuickView safely. The QtQuickView may or may not queue these as well. Task-number: QTBUG-137057 Change-Id: Id84fb184d2d60a95f0ffb77896d0c553d7f52338 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* QQ4A: Add QtSignalQueue class to manage queued signal connectionsPetri Virkkunen5 days2-0/+59
| | | | | | | | | | | | | | | This class will be used in both QtQuickView and QtQuickViewContent, to keep track of queued signal connections and eventually process them, connecting them to the QML view. This class also introduces an internal class to represent the data required to make a successful signal connection, to assist with storing the data. Task-number: QTBUG-137057 Change-Id: I798dbf0c0b377f2bf07874b17b83d493aa4905d9 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* QQ4A: QAndroidViewSignalManager: Move signal connection ID gen to JavaPetri Virkkunen5 days6-62/+85
| | | | | | | | | | | So that later patches can return valid values from the API when connecting to signals of QML views that have not been loaded, the Java API must be able to generate listener IDs. These calls can even happen before the Qt libraries are loaded. Task-number: QTBUG-137057 Change-Id: If2cafe8fd65841d2bcfc4a079939d81a279c7982 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* QQ4A: Add possibility to register signals before QML is loadedPetri Virkkunen5 days4-28/+105
| | | | | | | | | | | | | | | | | | | | This commit adds a queue mechanism and API in QAndroidViewSignalManager that allows callers to add signal listeners before the QML view has been loaded. API Added to QAndroidViewSignalManager always returns true, but might still fail if a signal with the desired signalName does not exist. If using the QtQuickViewContent API, this should never happen, but with the QtQuickView API, this is a possibility with typos or signal names that are computed with some logic in code. Internally, QAndroidViewSignalManager listens to the QQuickView::statusChanged signal to detect when the QML view is done loading. Task-number: QTBUG-137057 Change-Id: I2ea95f096517f2b7f45a60f236923d42cb5cf1fe Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Harden namespacingTim Blechmann5 days23-21/+91
| | | | | | | | | | | | | | | When using namespaced Qt, we need to prevent symbol clashes with symbols of the same name. * namespace some publicly visible classes * hide classes in implementation in an anonymous namespace * rename read/write to readValue/writeValue to avoid name clash with c functions. Task-number: QTBUG-138543 Pick-to: 6.10 Change-Id: Ica77462c1f81f1e01cc60477e5b56ecfe3c1abb4 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* qmlls: remove unused headersTim Blechmann5 days1-5/+0
| | | | | | | | Flagged by qtcreator/clangd Pick-to: 6.10 Change-Id: I155d56e89d47e7c09cd7d1b5cb6ade13af565671 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Improve error message for invalid import qualifierDheerendra Purohit6 days1-1/+1
| | | | | | | | | | | | Previously, the error message for an invalid import qualifier did not show the qualifier name or explain what was wrong. This change adds the qualifier name to the message and says it must start with an uppercase letter. Pick-to: 6.10 Fixes: QTBUG-133313 Change-Id: I0bd4bb143f7b4cdc3b26cae73ab42a4fb05977b1 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Qml[Table|Tree]Model: Put column handling in abstract classMatthias Rauter6 days8-470/+338
| | | | | | | | | | | This is the 7th patch in an attempt to make QQmlTreeModel and QQmlTableModel more similar and eventually merge common parts in a common abstract class. Task-number: QTBUG-138703 Pick-to: 6.10 Change-Id: Ie73ae28617efd83d2644c7a745eb7c583c0b68e6 Reviewed-by: Mate Barany <mate.barany@qt.io>
* VerticalHeaderViewDelegate: set 6.10 with set_source_files_propertiesMohammadHossein Qanbari6 days6-0/+18
| | | | | | | | | | | | Found in 6.10 QML API review amend 9601b74dabed53e93a7a5144d4c1fadb7876db18 Task-number: QTBUG-137478 Pick-to: 6.10 Change-Id: I3a26307f304277dfd259da3736d1069a43c0cd03 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* HorizontalHeaderViewDelegate: set 6.10 with set_source_files_propertiesMohammadHossein Qanbari6 days6-0/+18
| | | | | | | | | | | | Found in 6.10 QML API review amend 9601b74dabed53e93a7a5144d4c1fadb7876db18 Task-number: QTBUG-137478 Pick-to: 6.10 Change-Id: I11fcf5317add4c07e211cff70d3b2e86bd470000 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Curve renderer: Fix filling of certain paths with degenerate partsEirik Aavitsland6 days2-15/+45
| | | | | | | | | | | | | Determining the fill side of a segment would fail if the path contained an overlapping segment in the opposite direction. If a subpath started with such a segment, the resulting fill could be incorrect. Fix by iterating over the subpath for a segment with a determinable fill side. Fixes: QTBUG-133247 Pick-to: 6.10 6.9 6.8 Change-Id: I07c4f884d525b19af93609bcb31b412d340bebd5 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix invalid access to enginePriv in QQmlIncubatorPrivate::clear()Dheerendra Purohit6 days1-0/+2
| | | | | | | | | Add null check to avoid accessing enginePriv after it is set to nullptr. Pick-to: 6.10 6.9 6.8 6.5 Fixes: QTBUG-138927 Change-Id: I180828066a100465694337c4378139cfd9e4ab06 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* Fix qt.qpa.menus warning in tst_qquickmenuMitch Curtis6 days3-52/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The warning was: QWARN: tst_QQuickMenu::FluentWinUI3::nativeStatic() qt.qpa.menus: QPlatformMenuItem(0x60c0001c5040) does not belong to <QCocoaNSMenu: 0x6070000884a0> Title: Supermenu: 0x0 (None), autoenable: YES Previous menu: 0x0 (None) Next menu: 0x0 (None) Items: ( ) In nativeStatic.qml, we have an item tree that looks like this: Menu { Action { /* ... */ } MenuItem { action: Action { /* ... */ } } Menu { Action { /* ... */ } } } Removing the first two menu items of the top-level menu works. When we get to the menu item for subMenu, we see that it has a Menu of its own, and so we call recursivelyDestroyNativeSubMenus. That removes all of the menu's native items, and at the end it does this: menuPrivate->resetNativeData(); Here, menuPrivate refers to subMenu's private object. This line severs the connection between subMenu and menu, which leads to the warning. We then return from recursivelyDestroyNativeSubMenus and end up here in QQuickMenuPrivate::removeNativeItem: if (nativeItem->handle()) { handle->removeMenuItem(nativeItem->handle()); syncWithNativeMenu(); } The removeMenuItem call then triggers the warning. To fix this, we need to have control over when resetNativeData is called, so that we can do it after the removeMenuItem call. Do so by rewriting removeNativeItem to be recursive, and using it in favour of recursivelyDestroyNativeSubMenus, which we then remove. Improve internal docs while we're at it. Pick-to: 6.8 6.9 6.10 Change-Id: I4955a5e4d8e5aa5c9d46873b8b3a27f65446ea35 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* QuickDialogs: Do not use QFLAGSFabian Kosmale6 days4-4/+4
| | | | | | | | | | | | | | | | | Dialogs uses QFLAGS to bring in various classes via related meta-objects. The goal is to expose specific enums in the QML API. What it does instead is to expose all enums of those classes at runtime, but not to tooling. Switch the code to use QML_EXTENDED_NAMESPACE, which also exposes all enums at runtime, but also to tooling. Task-number: QTBUG-137075 Pick-to: 6.10 Change-Id: Id8d5858575a445f957572fc090df482db1b6fce8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
* ListElement: Remove historical FIXMEFabian Kosmale6 days1-1/+0
| | | | | | | | | It predates the public history, and a look at the private history confirms that it is no longer relevant. Change-Id: I08d743a1963ae49fa3f21909725350e05936b725 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Luca Di Sera <luca.disera@qt.io>
* qt_add_qml_module: Support enabling lint target for examplesFabian Kosmale6 days1-1/+12
| | | | | | | | | | | | | | | If QT_LINT_EXAMPLES is set, any target defined below the "examples" folder will add its lint target to the ALL target. Together with a change in CI to actually pass that define down, we can enforce absence of qmllint warning by combining it with a .qmllint.ini file setting max warnings to 0. Pick-to: 6.10 Task-number: QTBUG-108448 Change-Id: I0f4fd1d18221e503d93e3f435bbc47292857ec20 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
* qmltyperegistrar: Update jsroot metatypesUlf Hermann6 days1-0/+23
| | | | | | | | A few enums have been added and uiLanguage got a change signal. Pick-to: 6.10 Change-Id: I2554c65c9d948881b3694e07df5df8309fc29073 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QmlCompiler: Pass QQmlJSSaveFunction as const refUlf Hermann6 days2-7/+7
| | | | | | | | std::function is quite heavy-weight. Coverity-Id: 486648 Change-Id: Ia7c61a726bde9c9d6a02412b9aa5f683bb4d355a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QtQml: Deduplicate import finalizationUlf Hermann6 days2-65/+88
| | | | | | | | | We can re-use the same code for file and directory imports. And we can avoid copying a QString this way. Coverity-Id: 486646 Change-Id: Id95226674e382a722527ba3ff6205682ffe1075a Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
* QmlCompiler: Remove pointless null checkUlf Hermann6 days1-5/+4
| | | | | | | | | We have already dereferenced passMan a few lines before and that obviously succeeded. Coverity-Id: 486649 Change-Id: I36dcef5757013acf98d665396a3f8f3d289bfee1 Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
* QtQml: Assert on currentStackFrame in direct eval callUlf Hermann6 days1-2/+12
| | | | | | | | | | | If we're called directly from a CallPossiblyDirectEval instruction, that instruction must live in a function which must have created a stack frame. Coverity-Id: 486651 Change-Id: I8136f40a8b6058ad499a7fdaaed99bf85485b11c Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* wasm: a11y - Implement ParentChanged eventEven Oscar Andersen6 days1-0/+7
| | | | | | | | | | | | | | | Implement the QAccessible::ParentChanged callback. Probaby not possible with a perfect implementation. What can reasonably be done is to issue ParentChanged on; QWidget::setParent, QWindow::setParent, QQuickItem::setParentItem. However calling these functions do not necessarily map 1:1 to QAccessibleInterface::parent(). One common reason for why the two hierarchies will diverge is because of the Accessible.ignored state Task-number: QTBUG-134923 Change-Id: Iaa8cfd3d65c0fac137c95434ec21176e7aea6699 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* Doc: Fix incorrect usage of \generatelistTopi Reinio7 days3-3/+3
| | | | | | | | | | | | | | | | | | | | | The \generatelist command takes an optional argument that affect how the members are listed, for example, `classesbymodule` which creates an annotated list of the classes in a named C++ module. `groupsbymodule` is not recognized or documented. QDoc falls back to generating a list of all members of a group in this case. While the end result is correct, this relies on an undocumented feature that is likely to change and break. Replace these instances with an explicit \annotatedlist command that produces the same output. Pick-to: 6.10 Task-number: QTBUG-138901 Change-Id: Icebe063937cdf1e2ef034b723cce646cd6c96bbe Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* QQmlDataTest: drop default try timeout from 5 seconds to 1Mitch Curtis7 days1-0/+2
| | | | | | | | | | | | Make debugging of failing tests less painful. The tests that had to be changed as a result are listed in the comments of the linked task. Fixes: QTBUG-138662 Task-number: QTBUG-81979 Change-Id: Iee50f2d4f2160e3e9bc2c7985925583fad810811 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Spinbox example: Make the first * non greedyAlbert Astals Cid7 days1-4/+5
| | | | | | | | | | Otherwise it will consume the - as part of it, and we want to keep the - for negative numbers. For it to work we have to add the $ at the end Pick-to: 6.10 6.9 6.8 Change-Id: Ibe4750ccd4d36fef604ae424fea34ee9d64432cd Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QML Tooling: Streamline SearchResult constructionUlf Hermann7 days2-17/+15
| | | | | | | | | | | | | Realize that the "Error" enum value is unused and remove it. This way there is only a single invalid SearchResult: The default-constructed one. Using this, we can localize the SearchResults to the places where they are returned, hopefully helping compilers and tools to perform return value optimization. Coverity-Id: 486146 Coverity-Id: 486135 Change-Id: I110c3773b9089ae0c1ca3e1340c303991b4cfbe1 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Qml Tooling: Fix searchDefaultLocationUlf Hermann7 days2-13/+18
| | | | | | | | | | The .ini file searching can be extracted into a separate function, the visitedDirs can be const, and the iniFile string can be moved. Coverity-Id: 483437 Coverity-Id: 486143 Change-Id: Ifb051e2cd750a5a99d655d534a4fefa4b744defc Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
* Derive QmlTableModel from QAbstractItemModelMatthias Rauter7 days3-4/+25
| | | | | | | | | | | | | | | | | | | | | Previously QmlTableModel was derived from QAbstractTableModel. The upsides of QAbstractTableModel are very limited but disable the possibility to combine the similar aspects of QmlTableModel and QmlTreeModel in a common class. In QQuickHeaderView, QAbstractTableModel is treated in a special way. In Order to keep all existing code working, we are treating QmlTableModel the exact same way also after this change. This is the 6th patch in an attempt to make QQmlTreeModel and QQmlTableModel more similar and eventually merge common parts in a common abstract class. Task-number: QTBUG-138703 Pick-to: 6.10 Change-Id: Ifb1f12d147e659320bddccf6c183ac0308cfb99b Reviewed-by: Mate Barany <mate.barany@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>