Commit Graph

72811 Commits

Author SHA1 Message Date
Miikka Heikkinen
9d6d521643 QmlDesigner: Fix crash when reparenting items into effected item
Some effect related objects such as QQuickShaderEffectSource can be
silently removed alongside another object, so use QPointer to ensure
all objects are still valid before readding them.

Fixes: QDS-11973
Change-Id: I75ee2dc81e27774f8be87b031e149b135ec84023
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-02-16 14:30:44 +00:00
hjk
7c5a0e6bb2 Rename RunControl::aspect to RunControl::aspectData
It's the "persisted" form of the content of the original aspect's data,
calling it 'aspect' already confused me a few times.

Change-Id: I88a6f76f0ca39d3d36dde9b84287032ceecf7033
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-02-16 10:21:15 +00:00
Christian Kandeler
64393a714d QbsProjectManager: Fix potential freeze when importing projects
We forgot to quit the event loop in the case of an incompatible build
graph, causing each such operation to take ten seconds instead of
fractions of a second. In directories with lots of qbs builds, this
could result in Qt Creator freezing for several minutes.

Change-Id: I9f3de2e23fd67a87e9f487eb2a1b6e45fbde6f31
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2024-02-16 09:31:51 +00:00
Christian Kandeler
2abe04ff34 CppEditor: Do not duplicate minimum clangd version
Amends 5516188290.

Change-Id: I1de7249c06c0e262d0c36f980cc687f0e792f755
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2024-02-16 09:31:27 +00:00
Jarek Kobus
8f23a64ac3 DocumentClangToolRunner: Fix isEmpty() condition
Since we were adding the parallel item unconditionally to the
tasks list, the if(tasks.isEmpty()) condition was always false.
The intention was to check whether any call to addClangTool()
added at least one task.

The fix is to add parallel item after the condition is checked.

Change-Id: Iafdf21f1ac0f8fdd547a462990313e09a2dc46fd
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-02-16 09:10:19 +00:00
hjk
7201fa0e4d Debugger: Create more uniform summary for debugger selection
Change-Id: I82ddcae84e4ff8d4776aa5fa988bb49b943b8d6f
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-02-16 08:01:24 +00:00
hjk
7b198ea3ce Debugger: Select C++ debugger if there is nothing else selected
We want one-or-more debuggers enabled. This was accidentally not
done if the python debugger was the last one to unselect.

Change-Id: I1bcdb43a66dc110dc213eba0db079e6d02c00170
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-02-16 08:01:16 +00:00
hjk
8ab6b94c48 Debugger: Move string length annotation to type column
... and make it clear what it is.

Fixes: QTCREATORBUG-30065
Change-Id: Iccbe0f069569ef2682363eb889f34081e2c2b4d7
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-02-16 07:32:39 +00:00
Jarek Kobus
d0ae84539e Axivion: Don't leak model on shutdown
Detected by memory analyzer.

Change-Id: I715c604f5769b958ad53da6444fd3763f3bdcc30
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-02-16 07:30:11 +00:00
David Schulz
2ceb1e2ad7 TextEditor: update ksyntaxhighlighting engine to v5.249.0
Task-number: QTCREATORBUG-22558
Change-Id: I0f75fd00828992df37f596148fac98069794248e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-02-16 06:28:19 +00:00
Jarek Kobus
f1f4422dce PythonSettings: Reuse Tasking::nullItem
Change-Id: I50675730fa7a7e228b151213610996456a8eacf4
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-02-16 06:21:59 +00:00
Jarek Kobus
36241b4462 TaskTree: Add global nullItem
This might be useful when using conditional operator.
Might also be used in place of the default c'tor for GroupItem.

Add a test for it.

Change-Id: I622e5d3d94f7020dc294cf5bca643c53a0813d8a
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-02-16 06:21:53 +00:00
Jarek Kobus
d95fa019d4 PythonSettings: Don't leak running watchers
Detected by memory analyzer.
When shutdown comes while pythonsFromRegistry() or
pythonsFromPath() is still running, the corresponding
QFutureWatcher is leaked.

Employ TaskTreeRunner instead. It handles the cancellation
of the running tasks automatically on its destruction.

Make pythonsFromRegistry() and pythonsFromPath() cancelable,
by providing QPromise as a parameter and check for canceled
state on every iteration.

Change-Id: Iae7c7d1ed764646b8203bd7ca8b9580cb999b80c
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-02-16 06:21:44 +00:00
hjk
e3b62d0aa5 Debugger: Make DebuggerRunConfig sub-aspects direct members
Change-Id: I53979892598164b26c8fc1977b1366b0a56fa152
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-02-15 16:56:32 +00:00
Jarek Kobus
01f106b279 DebuggerRunConfigurationAspect: Don't leak m_pythonAspect
Change-Id: Icef93f08d0d24306c5f187c25cc4ca8d809a4c9f
Reviewed-by: hjk <hjk@qt.io>
2024-02-15 15:59:55 +00:00
Jarek Kobus
a6374bc5a9 ProjectManager: Add a hint on how to run the testSessionSwitch()
Change-Id: I4852d15bb3f17dd9f2495f44376f62e85046db36
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-02-15 15:57:46 +00:00
Jarek Kobus
3e7ef867dd QmlJSPluginDumper: Prevent potential crash when no results in QFuture
Ensure we don't reference non-existing QFuture's result.

Change-Id: I57668390e6ca83ae30c0b1de3e3a083a344ddbaa
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-02-15 15:50:21 +00:00
Marco Bubke
12ad750d16 Nanotrace: Remove ObjectToken
There is no direct support in Perfetto. It can be simulated by
asynchronous tokens but then asynchronous tokens can be used directly.

Task-number: QDS-11952
Change-Id: I62dff6e8c1e93b71ccdc7b1678817d1909afa37c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:55:34 +00:00
Marco Bubke
6fa00b8129 QmlDesigner: Add more tracing to properties
Task-number: QDS-11952
Change-Id: I27376acc1a77291de2253a295df0e3cecce1427e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:55:27 +00:00
Marco Bubke
effaff5365 Nanotrace: Add connect to a tick
Task-number: QDS-11952
Change-Id: I07f075c7a556fc713ef56558a7a79a6bf68f2126
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:55:17 +00:00
Marco Bubke
edd8d442e5 Nanotrace: Add QVariant string converter
Task-number: QDS-11952
Change-Id: I874d29c0a7e21a61d3205d64a5c6137084ffcbab
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:55:10 +00:00
Marco Bubke
e1a2454e83 QmlDesigner: Tracing shows the node model relationship
Task-number: QDS-11952
Change-Id: I02769f07f3eadbe7f3e4095203619924cd545579
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:55:03 +00:00
Marco Bubke
1b64158c7a Nanotrace: Make category uncopyable
Leads to subtle bugs.

Task-number: QDS-11952
Change-Id: I022af297e89a08d9ed98cee6b76c6e2114043987
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:54:56 +00:00
Marco Bubke
4b0ea7b8fd QmlDesigner: Make model nodes invalid on model deletion
Change-Id: I37fabba902ed2a6cd0940abeb63606e335bb76ab
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-02-15 13:54:48 +00:00
Marco Bubke
a430ffc6cb QmLDesigner: Improve node and property tracking
Task-number: QDS-11952
Change-Id: I83afdc892e0c196e5e5abe56a4e9c32feb5ad1bf
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:54:40 +00:00
Marco Bubke
4ba5090543 Nanotrace: Remove global tracer
It creates a tracing file and is not used anyway. So we remove the code.

Fixes: QTCREATORBUG-30331
Change-Id: I5b62a9d428d10b248821ae76d45221f84f407d3a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:54:33 +00:00
Marco Bubke
7a73b7a6b1 Remove entries with default value
Change-Id: I1f78c85a5a8d2a6e22d7bc3537ecb13018f4a661
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-02-15 13:37:19 +00:00
Marcus Tillmanns
4329b67c74 Clangd: Fix version check to use (remote) executable
Fixes: QTCREATORBUG-30374
Change-Id: I4a98a82ea24bb55a2ab3eed72f13d3d6f648df8a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-02-15 13:02:23 +00:00
Christian Stenger
6849c173c1 QtKeychain: Fix export for includes
Fixes the qbs build.

Change-Id: I8dc3427b35468685d03adfbf6bfffef9936015c6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-02-15 12:44:40 +00:00
Christian Stenger
b9671bcffc Axivion: Fix disabling filters
Enabling and disabling a layout does not do so for
its child components which had been assumed.
Explicitly disable or enable filters to avoid
crashes when accessing them without a project info.

Fixes: QTCREATORBUG-30371
Change-Id: I56633dad4b3ffbb1c0c7c7d154c2af5d3c3cde6b
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-02-15 12:21:32 +00:00
Ali Kianian
efe114872c QmlDesigner: Use FileSaver instead of file in Model Editor
* Also the warning is removed for internal changes on local files

Fixes: QDS-11903
Change-Id: Ic35966888433a2bd9b1cc10a47bb7ed51280ffb1
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Shrief Gabr <shrief.gabr@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-02-15 10:41:31 +00:00
Eike Ziller
10a97be988 Merge remote-tracking branch 'origin/13.0'
Change-Id: I923d0054e306528825e1b36f9f24c378b151d85a
2024-02-15 11:30:32 +01:00
Jarek Kobus
27df099c15 Axivion: Introduce CredentialQuery
Accompanied by CredentialQueryTask, to be used in Axivion recipes.
It wraps QKeychain::Job subclasses into one asynchronous task.

Change-Id: I78a06255d880b02cba657c822976ef09454ac261
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2024-02-15 10:27:17 +00:00
Thomas Hartmann
4c79e1b8d8 QmlDesigner: Correct import versions for Qt 5
Task-number: QDS-11898
Change-Id: I4e59e31f9396ab957eac5effbf17fd6edc930798
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2024-02-15 10:26:39 +00:00
Jarek Kobus
035e948536 Axivion: Introduce postDtoRecipe()
For posting dto data to the server.

Change-Id: Id519c311f13e7c42c85b758f97fefd79fa2c41e9
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2024-02-15 10:10:01 +00:00
Jarek Kobus
02ac5deb4a TaskTree: Fix progress reporting with nested LoopUntil(false)
Fix also a case when parent iteration isn't progressive.
Add a test for it.

Amends e059b62421

Change-Id: Ic2f8c047d413ab2e2b98af4592f7cb60185bea06
Reviewed-by: hjk <hjk@qt.io>
2024-02-15 10:08:49 +00:00
Ali Kianian
6996687392 QmlDesigner: Keep the order of the columns in imported CSV
Fixes: QDS-11667
Change-Id: I5f4bba2224878f404e333425502f084c589be99c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-02-15 10:07:42 +00:00
Orgad Shaneh
029ac3c4a1 TextEditor: Simplify settings initialization
* Consolidate and simplify behaviorSettingsChanged callbacks.
* Do not call the callbacks during initialization, they are called later.

Change-Id: Ica4b601e091de2112c7737047cbffa8a98fc9f70
Reviewed-by: hjk <hjk@qt.io>
2024-02-15 10:01:54 +00:00
hjk
41131eadaa TextEditor: Drop TextEditorSettings::m_instance
This can be null when accessed too early. Using the function-static
global instance directly ensures initialization.

There is more simplification potential in this area, but I'd leave
that for master.

Change-Id: Ide35f4119e9fbcb392d1abac180ef46c02c16b87
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-02-15 10:00:54 +00:00
hjk
c6aeb2cde1 TextEditor: Fix initial loading of settings
Amends e784b1e58b.

Done-with: Orgad Shaneh
Change-Id: I727983a96ac9aae204974adfabfa7a794bf99907
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-02-15 10:00:48 +00:00
Christian Kandeler
f00666a985 ProjectExplorer: Accept plain folder nodes as drag & drop targets
As opposed to just project nodes.

Task-number: QTCREATORBUG-26545
Change-Id: I33eb2623763fdfacb9b6b8bb1bcd6b4626b3d71e
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-02-15 09:40:57 +00:00
Christian Kandeler
837e951b29 CppEditor: Add curly braces for more control statements
Fixes: QTCREATORBUG-24542
Change-Id: I3e0893e1c736730d94e2c9ab2baa0aa580393fe4
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2024-02-15 09:39:56 +00:00
Christian Kandeler
e24ce364ce QbsProjectManager: Do not create language client without build system
A session without a build system can happen via the project importer.

Change-Id: I04e77a790e595e9a5249b27569a0e79033fddad1
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-02-15 09:37:18 +00:00
Christian Stenger
c2f25f72a7 Update qlitehtml to latest master
Fixes the qbs build.

Change-Id: I0860acd2d63cf727696dfdb4f35ee2dd83c51dbe
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-02-15 08:45:51 +00:00
Marcus Tillmanns
f6ad82a0eb CompilerExplorer: Use global network access manager
Change-Id: I03589a1b5abd42b36281c1c733adf20fcb51d272
Reviewed-by: hjk <hjk@qt.io>
2024-02-15 07:42:04 +00:00
Christian Stenger
a5c4c34c9a Raise minimum supported libclang
ClangFormat needs 14.0+ nowadays.

Change-Id: Ib5e38c79c5ec629fed4e5d8da5435769a71b2626
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-02-15 07:16:28 +00:00
hjk
4c4d297d15 Core: Use ActionBuilder in a few more places
Change-Id: If578ea89fd8af9aca9d5f137dab5c4dbebfaa2e8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-02-15 07:15:40 +00:00
Eike Ziller
65fcb9b746 Help: Update litehtml to v0.9
And adapt the attributions to use the attribution.json from the
qlitehtml repository, so it is automatically in sync.

Fixes: QTCREATORBUG-29169
Change-Id: I96343162880b6aa0e38ee356b3b5f98db4a85cc3
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-02-15 07:02:23 +00:00
The Qt Project
10e2ff5362 Merge "Merge remote-tracking branch 'origin/13.0'" 2024-02-15 07:00:47 +00:00
Eike Ziller
046ae752f6 Fix ODR violation with Spinner
Spinner is already added to and exported by the Utils library. Do not
add it again to more (plugin) libraries.

Fixes: QTCREATORBUG-30368
Change-Id: I6ddf43f8bf1c4972b786b82dbafd3201bc8e0a0e
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Tim Blechmann <tim@klingt.org>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2024-02-15 07:00:30 +00:00