Commit Graph

8097 Commits

Author SHA1 Message Date
Marco Bubke
b74c47ec66 QmlDesigner: Remove template parameter from project storage
There are now other ways to prevent locking bugs. So we don't need the
template parameter anymore. That makes it possible to move much of the
code to a cpp file. Maybe later we have to move some functions back for
performance reasons.

Change-Id: I01269912618d7cf5e070219e7edaa3a00623b7cf
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-04-22 15:35:11 +00:00
Marco Bubke
e262ec1ebb QmlDesigner: Integrate item library entries from project storage
Task-number: QDS-12102
Change-Id: Id6fbfcfb44d3b8c290f5e5d74addf33ef4d9a5e5
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-22 15:34:53 +00:00
Eike Ziller
e5640386f8 Merge remote-tracking branch 'origin/13.0'
Conflicts:
	doc/qtcreator/src/qtquick/qtquick-live-preview-devices.qdoc
	src/plugins/projectexplorer/projectexplorer.cpp

Change-Id: I682b330a278a329fc6294baeff6a28040abd10bc
2024-04-22 12:18:10 +02:00
Christian Stenger
8781befcfb SquishTests: Wait for combo box popup closing
On systems where some ui features may be using animations
the animation could interfere with the test.
Explicitly wait a short amount of time as there is no
easy way to achieve this.
This fixes a couple of tests on macOS.

Change-Id: Ib79b43955ebf218342db108a43979093994fba02
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-04-19 11:55:15 +00:00
Marcus Tillmanns
ef8455f270 ExtensionSystem: Rename PluginSpecImpl to CppPluginSpec
Since we now have multiple classes inheriting from PluginSpec it makes sense
to rename PluginSpecImpl to the more accurate CppPluginSpec as it deals with
compiled plugins only.

Amends b39b192518

Change-Id: Icae9daed2be5a258a9918731a881c72cbe4f0fa4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-19 11:26:03 +00:00
Marcus Tillmanns
7cf2e4352c ExtensionSystem: Fix compile without WITH_TESTS
PluginSpecImpl::read is used outside of tests, but PluginSpecImpl itself
is only exported when WITH_TESTS is on. So compilation without
WITH_TESTS would fail. To circumvent this the ::read functions are moved
outside of the PluginSpecImpl and friend'd to it.

Amends b39b192518

Change-Id: I4bd8ce087267ab4e059cff2470ff882c7db6fd78
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-19 10:39:17 +00:00
Robert Löhning
20f01b351c SquishTests: Replace wait condition strings with lambdas
Squish allows passing wait conditions as strings containing python code.
The only advantage I see is that the notation is a little shorter than
using a lambda. On the other hand, the strings can't get proper syntax
highlighting and cause false positive warnings about unused variables.

Change-Id: I226840fa26dc75d07d89f20647d069e2e866bbc9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-18 15:07:56 +00:00
Christian Stenger
f720835680 Tests: Fix build
Change-Id: I6d9475bf2d95a1075d7a761f49d8edff89a30f78
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-18 09:52:28 +00:00
Robert Löhning
db492c461c SquishTests: Log found shortcut in tst_HELP02
Change-Id: I144dc9961d97968d3b0355487714d287d22abb71
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-18 09:32:52 +00:00
Robert Löhning
6e44fd29f1 SquishTests: Tests wizard of Qt Quick 2 Extension Plugin again
Change-Id: Icfae5823d2b4f273350388d772a929b054879bd2
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-17 14:55:40 +00:00
Eike Ziller
0fe7350368 Merge remote-tracking branch 'origin/13.0'
Change-Id: I0892d8e54930bb5a65dc51117b8ca7d70ce300a3
2024-04-17 13:29:02 +02:00
Robert Löhning
00ac4b7ccc SquishTests: Fix supported platforms for Qt Quick 2 Extension Plugin
Change-Id: I3accd8f43c5cace3145aacff28ef068ff20ecea2
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-17 09:11:21 +00:00
Robert Löhning
6838be76aa SquishTests: Fix wait condition in tst_git_local
Change-Id: I401e3c8f8f2743ff9b108d3e25693f834d61e8ac
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-17 09:10:47 +00:00
Jarek Kobus
20e332b135 TaskTree: Introduce parallelIdealThreadCountLimit
Reuse the new element.

Fixes: QTCREATORBUG-30647
Change-Id: I79836a9243abcb1661c79842dcf6c33492342552
Reviewed-by: hjk <hjk@qt.io>
2024-04-15 11:05:18 +00:00
Marco Bubke
b01522f102 QmlDesigner: Skip QQuickItem in QtQuick.Templates
Otherwise we have to QQuickItem meta info objects and that creates bugs.

Fixes: QDS-12460
Change-Id: Iaf76df6671c4ca73913285b78bf1d6408fbe93be
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-15 09:26:53 +00:00
Marco Bubke
316d88bd12 QmlDesigner: Extract default property in qml document parser
Change-Id: I2b3576312cc2bec0c2e103fd3f342a5fe059b10c
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-15 09:26:14 +00:00
Marco Bubke
665d043e72 QmlDesigner: Extract default property in qmltypes parser
Change-Id: I0cc9ac71ba764db252e302d11d1cd3e4aff834f5
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-04-15 09:26:02 +00:00
Marco Bubke
afd1b3b6e9 QmlDesigner: Lookup the default property in prototypes too
The default property can be set too in any prototypes. Look them up
there too. Because it is expensive we cache them in the node meta info
to make hasDefaultProperty() followed by defaultProperty() cheaper.

Change-Id: I3b9ec90fc1bc5f0228dad3b580c335734f03821d
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-15 09:25:51 +00:00
Marco Bubke
db84bc43a9 QmlDesigner: Improve node creation with project storage
The file url was missing, so no valid source id could be created. That
lead to invalid imports.

The qualified path for the node instances is now created in the node
instance view.

Change-Id: I2685ab2fdbdb0fa8a5f89793be52c8fae2b8db8c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-15 09:25:46 +00:00
Eike Ziller
310d3cc041 Merge remote-tracking branch 'origin/13.0'
Conflicts:
	src/plugins/remotelinux/linuxdevice.cpp

Change-Id: Iad28a1bfa4632922931d351d2fe27757cf21dec3
2024-04-15 08:33:39 +02:00
Jarek Kobus
56c388000a Async: Re-enable onResultReady tests
Enable them conditionally, since the fix went into Qt 6.6.

Task-number: QTBUG-119169
Change-Id: I6b9f1a9da6a5b6337384f37d940195f09bd28bd4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-12 09:15:55 +00:00
Jarek Kobus
698488fc05 TaskTree: Add a test showing the parallel disorder
In parallel mode the done handlers may be invoked in a
different order than the corresponding setup handlers.

Change-Id: Ib3df668491054501d250fef9c499d127fe98626d
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-04-11 12:19:02 +00:00
Jarek Kobus
a583436365 TaskTree: Zero-initialize the Storage
Change-Id: I9d5ee11285b377abafe21d472481c941f49a5ae1
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-04-11 07:59:56 +00:00
Tim Jenssen
912082e6a8 Merge remote-tracking branch 'origin/13.0' into qds/dev
Change-Id: I1f6114244514a2b786a8b0d364a303b925ad7757
2024-04-10 17:30:10 +02:00
Thomas Hartmann
4f3bf836a9 QmlDesigner: Remove ScopeChain dependency for QDS_USE_PROJECTSTORAGE
* possibleImports() and usedImports() has to be implemented for the
  project storage
* getQMLSingletons() is not implemented for project storage and also
  does not belong into the rewriter.
* semantic errors are fully disabled for QDS_USE_PROJECTSTORAGE, since
  they require the scope chain.

Change-Id: I200ccbc1faf2631c4764a4676553a69cc0f5cf1f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2024-04-10 13:43:29 +00:00
Robert Löhning
4529644027 SquishTests: Stabilize tst_rename_file
If for some reason, the "Rename..." item in the context menu is disabled
when opening, it will not change to the enabled state later. One has to
open the menu again to get the then enabled item.

Change-Id: I86768186e18763a9b7bea9fb7032c268320807d3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-10 07:33:29 +00:00
Robert Löhning
355e3ecdf8 SquishTests: Rename object
to avoid strange errors when trying to use object.exists()

Change-Id: I919a7fe90e00daad2040b5e4f2c271de807aea16
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-10 07:31:30 +00:00
Robert Löhning
95df308bc3 SquishTests: Remove compatibility code for Python 2
Change-Id: Ibcf9a76fb163aa7167ad0ef0616c39b33c30d7c5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-10 07:30:00 +00:00
Marco Bubke
4e5a0cd02b QmlDesigner: Improve performance of prototype walk
The optimizer took quite often the slow join first. So now we have one
method to walk the prototype chain and then use the type ids in simpler
statements to get the end result.

Task-number: QTCREATORBUG-30599
Change-Id: I3e9d4ec85ba75801769eb8760fda6e0400300899
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-09 13:41:14 +00:00
Marco Bubke
6751fc82ef Sqlite: Prevent name collisions for indices
There can be unique and not unique indices with the same columns. So we
add that attribute to the name to distinguish between the indices.

Change-Id: I96eac1f0e95c135d625f09fd5399b16f2293d645
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-09 13:40:29 +00:00
Christian Kandeler
42edb0dd61 CppEditor: Make renameIncludes() also work for moved files
Task-number: QTCREATORBUG-26545
Change-Id: I0bfe203af8f091562cdd91411dbe502fc5a76956
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2024-04-09 08:18:30 +00:00
Eike Ziller
2626af4cd4 Merge remote-tracking branch 'origin/13.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	src/libs/utils/fsengine/fileiteratordevicesappender.h

Change-Id: Ia61fa12d14a4f862549509bd980cf9f66905c17f
2024-04-08 11:08:05 +02:00
Christian Stenger
5b870f101e SquishTests: Adapt key sequence
The key sequence used by the test can interfere with other shortcuts
or special handling provided by the OS itself (e.g. Ctrl+Alt can be
understood as AltGr on Windows and treated differently).
Current approach modifies the detected key on Win11, so move over to
another key sequence which may likely be usable cross platform for
some time.

Change-Id: I33e981215ef09fc62c4c2913b3a72b43f39f8684
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-04-08 04:31:36 +00:00
Eike Ziller
309a01337f Merge remote-tracking branch 'origin/13.0'
Change-Id: I12578a55fb61a3a9620c749c0b3bbbae6dcb4493
2024-04-02 14:54:30 +02:00
Robert Löhning
b887825661 SquishTests: Make sure that *UnderCursor() return a str
Without this, "line in lineUnderCursor(w)" can be False
although "line == lineUnderCursor(w)" is True.

Change-Id: I7fa6be7d237957706bf1ad93d7303c55b81f24ec
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-02 09:36:34 +00:00
Miikka Heikkinen
fd3047bac2 QmlDesigner: Join sleeping task queue thread
Threads are still considered joinable after their execution. So sleeping
thread have to be joinded first. Add test

Fixes: QDS-12308
Change-Id: Ie01588293e3b7ce9fe149d52a25ba03d174cca88
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-27 11:05:37 +00:00
Thomas Hartmann
f63bd7f933 QmlDesigner: Crash fix
* Add QTC_CHECK for crash
* ActionAreas should not be "garbage" collected if they have no target.

* Initial ActionAreas do not have a target and ActionAreas without target make sense to a user. We do not want to delete them together with the target.

Task-number: QDS-12181
Change-Id: Ie520c47aad990a8ff07fc3346e6772226d334ce5
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-27 09:33:20 +00:00
Tim Jenssen
8a18423175 Merge remote-tracking branch 'origin/13.0' into qds/dev
Change-Id: I28e2e8cacf9a20c8b2f5073f4a492862d814fb99
2024-03-26 15:59:34 +01:00
Christian Stenger
3b7d9178ae SquishTests: Fix default settings test
QC nowadays provides lldb on Windows which gets automatically
registered.
Beside this correct expectations for the compiler based on the
LLVM path that had been used for building the QC package and
might be the same on the machine the test runs on.

Change-Id: Ie9553b79bb0eb0012386bd71422005c184638046
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-03-26 07:06:43 +00:00
Robert Löhning
e32d6c482f SquishTests: Update tst_HELP06 once more
The tree of help contents changed again.

Change-Id: I9e40d8c2e248abb5b631b27f5013d1ef4cf9212c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-03-25 11:35:43 +00:00
David Schulz
d4e775ebc6 TextEditor: handle syntax highlight in batches
Use an elapsed timer in the syntax highlighter to periodically return
from the highlight and push a continue highlight to the end of the event
loop.
This allows the user to interact with the editor in between those
batches. If the user modifies the document in between highlighting
batches, the area that still needs a rehighlight is increased if needed.

This also reverts 62ea85ee6a and the
related changes.

Task-number: QTCREATORBUG-28727
Change-Id: I7c394dbdff658330bb72f3b68b9928980947db75
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-03-25 08:57:37 +00:00
Eike Ziller
8500dd03bf Merge remote-tracking branch 'origin/13.0'
Conflicts:
	doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc

Change-Id: I2db85da9f4a0593217951313020d71d430986961
2024-03-22 15:13:34 +01:00
Christian Stenger
c0a02ecd4e Tests: Adapt expectation for lldb
Amends 74a17e4521.

Change-Id: Ib144c15af7e8d83f110752e9898fef0d7466a812
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2024-03-22 05:37:26 +00:00
Robert Löhning
e3302afd09 SquishTests: Update tst_HELP06
The documentation page "Building and Running an Example" is not listed
in "Contents" anymore.

Change-Id: I7fdc01707f63d924bf215f398b7c710e62ec41f7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-21 08:41:10 +00:00
Christian Stenger
4cb18ded74 SquishTests: Stabilize welcome page related tests
Change-Id: I3596f2d1f7ca2de27a25075309ccb6015a1bb619
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-03-21 08:19:44 +00:00
Eike Ziller
90e1d96019 Merge remote-tracking branch 'origin/13.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc
	qbs/modules/qtc/qtc.qbs
	src/plugins/remotelinux/linuxdevicetester.cpp

Change-Id: I8434e41dcfbb50f6ed032a3e0af1591eb19b79eb
2024-03-20 15:05:58 +01:00
Marco Bubke
26870406cd QmlDesigner: Trace project storage exceptions
Change-Id: I58c261bea4cca6c5bede0d2ad504be8bc687ddc6
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 13:13:27 +00:00
Marco Bubke
cea24ad00b Utils: Add char append to SmallString
Change-Id: I644db7635010da8bc29d87926a64c4e6939d7c83
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 13:06:46 +00:00
Marco Bubke
4fc1ca984f Utils: Add number Smallstring::append
Saves some overhead.

Change-Id: I7d46e41f29e66cd01f5a11f16e6f78ff7a4d0aa8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 11:13:53 +00:00
Marco Bubke
c9527e0341 Sqlite: Improve tracing
Change-Id: Id5d6ee448a7f2cf06cda2e2776f3dbbe7c8f66c4
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 11:13:33 +00:00