Commit Graph

68765 Commits

Author SHA1 Message Date
Christian Kandeler
d612581667 ClangTools: Fix include path retrieval
This seems to have silently broken ages ago, perhaps when run workers
were introduced: The clang tools' run controls no longer hold the
executable, so we passed an empty file path to the function that was
supposed to retrieve the include path, which in turn gave us compile-
time values as a fallback.

Change-Id: Ie275dab93e4a4ed551c3c8fcd604cd37a3b7bd0e
Reviewed-by: hjk <hjk@qt.io>
2023-03-13 15:27:11 +00:00
Jarek Kobus
5effb95ad9 ClangGlobalSymbolFilter: Don't remove duplicates prematurely
That's being done later, inside Core::Internal::runSearch().

Change-Id: Ib131aefdb39dbe2dfd457020ff13f1c453814597
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-13 15:22:52 +00:00
Marcus Tillmanns
cdfe9462af Debugger: Fix "Run in Terminal" with lldb
Previously lldb never actually attached to the process running
in the terminal, but started its own copy.

Since the process is interrupted by the terminal stub already,
code was added to automatically continue the process.

"Start and break on main" and "Run in Terminal" also did not work
together and are now fixed.

Change-Id: Iaeb6e7dd0f511f3bf195ab5d0008856b310615d9
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-13 14:37:48 +00:00
hjk
4f8ad43c1e Qnx: Merge qnxdeviceprocesssignaloperation.{h,cpp} into qnxdevice.cpp
Not worth a file pair anymore.

Change-Id: I86afff84586592dd05d40e573e6b9a95c54913fe
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-03-13 14:32:52 +00:00
Marcus Tillmanns
72e2df0c95 Qnx: Remove QnxProcessImpl
The LinuxProcessImpl works better. Specifically the QnxProcessImpl
process exit code would always return 0.

Change-Id: I939d486e1cf7a1bdbb61a120a303d79e7cbce8e6
Reviewed-by: hjk <hjk@qt.io>
2023-03-13 13:58:16 +00:00
Marcus Tillmanns
9f1afb0318 Utils: Add stringutils splitAtFirst
Change-Id: I221d6c6086f53ec5f94c1157ea533d862db38d52
Reviewed-by: hjk <hjk@qt.io>
2023-03-13 13:58:05 +00:00
Eike Ziller
3043f4bba9 CMake: Fix leak and crash
The crash could be reproduced by opening a project, clicking the "Kit
Configuration" button in the build configuration, closing that dialog,
opening it again, opening the settings from the "Manage" button for the
CMake tools, and closing the settings dialog.

The "KitAspectWidget"s are not really widgets, and by default do not get
a parent, or are otherwise lifetime managed. When "they" are added to a
layout, actually only their widget members are added to the GUI. When
opening and closing the "Kit Configuration" dialog, the widgets were
deleted, but the KitAspectWidget instances were leaked and lived on, the
CMakeKitAspectWidget referencing a now deleted QComboBox, and still
being connected to the CMakeToolManager's signals, which subsequented
crashed when these were sent.

Fixes: QTCREATORBUG-28740
Change-Id: I36db3b6596ef21cc01dc877bca92b9961c0606b9
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-03-13 12:28:49 +00:00
Eike Ziller
c7e94d80c7 Merge remote-tracking branch 'origin/10.0'
Conflicts:
	src/shared/qbs

Change-Id: I33e13270c8c15a51b4ce4eaa6b4584041ed124e0
2023-03-13 12:30:04 +01:00
Jarek Kobus
f1d50c0d55 ProgressManager: Add a addTimedTask() that accepts QFuture<void>
That's more convenient when QFutureInterface isn't accessible.

Change-Id: I30af82a4e731dc577d36b62d4e11c5b65852fd4f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-13 11:12:58 +00:00
Henning Gruendl
68e7bb67c8 QmlDesigner: Fix compilation unused parameters
Change-Id: Iec0d32e26cf36a176e4e6d89663bdf9317f25a5f
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2023-03-13 11:05:33 +00:00
Marcus Tillmanns
4b30ac4e9e Terminal: Fix access violation
Change-Id: I271f4bac05b64d3f4160b2f8ed5ff30cbc3e259d
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-13 11:02:33 +00:00
Eike Ziller
a98c45f9ba Examples/Marketplace: Move ownership to the "all" products model
To allow the same item to appear in multiple categories.

Change-Id: Ib957b1fb0d98a28ceeb1d80e9fb497cc2a6b1f48
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-03-13 10:59:02 +00:00
Jarek Kobus
0c4dff7c10 FileListIterator: Minor fixes
Add a reference to c'tor's encodings arg.
Make c'tor's args default.
Make m_items field const.

Change-Id: I74bb1829f3ba0ea8a61106bddadeb935b6405f77
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-03-13 10:57:24 +00:00
Christian Kandeler
81dcfd907b CPlusPlus: Add parser support for generic lambdas
Change-Id: Id17975a4296925c10b1b43f963412eea61ccfa5d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-03-13 10:21:32 +00:00
Jarek Kobus
8d5e08c58c CppEditor: Compile fix
Change-Id: I71838715834072a368115423cb5460c5120300e3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-03-13 10:04:02 +00:00
Jarek Kobus
7c8bb03cf6 ActionsFilter: Use QtConcurrent instead of Utils::map()
Change-Id: If29822c25f50d88ba5e4c29c2978c7e7f78e18d9
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-13 09:45:04 +00:00
Orgad Shaneh
4d2b448541 GDB: Do not skip detach for core inferior shutdown
Another attempt for 87c00b86db.

This section was added in 3b5ecac238, which was a refactoring commit,
not sure why.

It causes state discrepancy, because only on quit the "thread-exited"
messages are processed, and when the thread list is clear, the engine
considers it as InferiorShutdownFinished and triggers engine shutdown
again, which is wrong, because it quits twice and can no longer write
to the process, which is already dead at this point.

Change-Id: Ic5cfced672b640865e701ac96b6fcea34d748211
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-03-13 09:35:17 +00:00
Eike Ziller
425262ce7e iOS: Fix freeze when stopping application
The target of the connection determines in which thread the slot is
executed, and in these cases the slot needs to be executed in the
logging thread. But the LogTailFiles object is created and stays on the
main thread. So, the slot that was supposed to stop the event loop in
the logging thread was blocked from being executed when
IosToolHanderPrivate waited for the canceled threads to finish with
futureSynchronizer.waitForFinished().

Use the event loop as the "target" of the connections.

Amends 33e8251edf

Change-Id: Ie78fcb33b88c1fe7a138fac790fd4f3b7dd9bad9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2023-03-13 09:13:02 +00:00
David Schulz
e25b89ae39 Copilot: Update authenticator widget while changing settings
Use a separate client for the authenticator widget that can react on
changes in the settings widget. This removes the need to manually apply
the settings between setting up the nodejs and agent.js paths and
signing into github.

Change-Id: I6628a3a8906ccbba208f9dac968262df962f93c0
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-03-13 09:12:01 +00:00
Marcus Tillmanns
27881325a0 qml2puppet: Don't always recompile qml2puppet
Whenever cmake runs, the app_version.h of qml2puppet is
recreated. This was included almost everywhere so a complete
rebuild of qml2puppet would be triggered. This patch
moves the app_version.h include into a single .cpp to limit how
much of qml2puppet needs to be recompiled.

Fixes: QTCREATORBUG-28784
Change-Id: I5064d450ed92ec003f164bcd42be694612011196
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-03-13 08:40:04 +00:00
David Schulz
301a3cb34f Copilot: improve client handling
- centralize starting client
 - allow to start copilot with alternative settings
 - do not reset the client on finished.

A finish might be followed by a restart attempt, so untracking the
client in the plugin can result in having multiple running clients. Use
a QPointer instead to safely reset once the client is deleted.

Change-Id: Ifab8b04287d84bbdd4a0e936f4684b8d4391da2b
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-13 08:00:01 +00:00
David Schulz
2fc801e153 Copilot: robustify authentication widget
- fix initial state
- prevent accessing unreachable servers

Change-Id: Ia8d66ad215b864b672d5a1d1651123ca5848effa
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-03-13 07:59:55 +00:00
Jarek Kobus
d558741985 Tracing: Use QtConcurrent invocation for async run
Change-Id: I40dea7276ed9d54c7ce898f0463df05929576648
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-03-13 07:39:54 +00:00
Eike Ziller
e060f82fa5 Examples: Read meta data, which includes categories
Task-number: QTCREATORBUG-28546
Change-Id: I11505d4f8b8eaef3f525185cd45757b6f41012ec
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-03-13 07:21:44 +00:00
Eike Ziller
87b5176fd2 Add test for examples parsing
Change-Id: Id2ec8afcdbdff97e12b32b836c955552589081c4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-13 07:21:18 +00:00
Jarek Kobus
3859b70375 CppEditor: Fix missing include, start dummy promise
Amends a8214665fe

Change-Id: I40c24d2895fe10105827928bb49d98c8a9a5cf74
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>
2023-03-13 05:35:01 +00:00
Marcus Tillmanns
887f6afd25 Terminal: Auto-scroll when selecting outside
Change-Id: I5dea3256524634d9c3e6c0f8132c6bdba4494978
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-03-12 09:22:38 +00:00
Thiago Macieira
5f8f2f4bcb Update perfparser to fix build with elfutils 0.188
Change-Id: Ib1d2fc7100134f7597cdfffd174aa36d069375a8
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
2023-03-12 03:44:50 +00:00
Cristian Adam
215bd2ef2b Terminal: fix copy to clipboard of bottom up selection
The multi line selection from bottom right corner to top left was broken
for copy to clipboard.

Change-Id: Ica40ec2ce5bb7b9d4b0187ebb454cd16e039e339
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-03-11 12:26:47 +00:00
Marcus Tillmanns
b138ab1510 Terminal: Fix copyToClipboard when selecting all
When selecting the whole screen (e.g. while running nano)
the iterator position would be "end", but the iterator
state was not, as "CellIterator(this, pos)" did not check for that.

Change-Id: Ie26ce27c0078f7b3fcc3c77673ac66bc273c842d
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-03-11 11:19:34 +00:00
Marcus Tillmanns
ddad64e176 Terminal: Fix multi-line copy&paste
Previously all lines would be copied into one without lines breaks.

Change-Id: Id87dbde84a19ccbc5f53438a305173d1b070eaba
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-03-11 11:19:24 +00:00
Marcus Tillmanns
7ceb185539 Terminal: Fix line selection mode
Change-Id: I03d4bf7343a49b19edfcb20d1eb57bfe18703ddf
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-03-11 11:18:31 +00:00
Cristian Adam
05d9742a96 CMakePM: Expand CMake preset macros also for environment vars
This fixes the case when a CMake variable (CMAKE_PREFIX_PATH) would
reference an environment variable (qt_path) that would contain a CMake
preset macro (${sourceDir}/../qt_install).

Fixes: QTCREATORBUG-28606
Change-Id: Ib6239b13782b2ea854969547af46c3fe82a061f4
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-03-11 08:56:06 +00:00
Jarek Kobus
fcb9194828 Docker: Use QtConcurrent invocation for async run
Change-Id: Ie5e6f5c746cf194fa00310a24db9344b72933ad5
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-03-10 18:01:33 +00:00
Cristian Adam
d154388f27 Android: add "threads" command for jdb settelment
By issuing "threads" the jdb will output the names of the running
threads. This makes sure that jdb has "settled" and is in a running
state.

Task-number: QTCREATORBUG-26592
Task-number: QTCREATORBUG-26709
Task-number: QTCREATORBUG-28141
Task-number: QTCREATORBUG-28428
Task-number: QTCREATORBUG-28851
Change-Id: Ib371e333eb9fc4d93a6b797bf7be68793f887fcd
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-03-10 17:36:44 +00:00
Jarek Kobus
814d2f732e QMakeProject: Use QtConcurrent invocation for async run
Change-Id: I9e5027acb71eb03efef0f5f38a57286c37e74983
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-03-10 15:42:36 +00:00
Jarek Kobus
2f5aad0cdb Android: Use QtConcurrent invocation for async run
Change-Id: I275af7c52197ecdb0c02e2e1039b37bd8c9bb1c1
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-10 15:36:06 +00:00
Jarek Kobus
c2d6501e64 RemoteLinux: Use QtConcurrent invocation for async run
Change-Id: Ibf69ab82a1f1664d5290ad4a1dc14de7a15d9c3a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-03-10 15:23:27 +00:00
Mahmoud Badri
d7c57bef32 QmlDesigner: Organize includes in material browser classes
Change-Id: I4d0630553a4fd61a6d7ca45cc1c0fbe6eb896fa6
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-03-10 14:02:01 +00:00
Jarek Kobus
defa51e2c5 ILocatorFilter: De-virtualize refreshRecipe
Provide protected setter and getter instead.

Change-Id: I799db735afe4ab64f5155b6ee31fb4cade9542c6
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-10 13:09:45 +00:00
Jarek Kobus
bf059bff7d Android: Replace QFutureInterfaceBase with QFuture<void>
In case a passed future interface is used only for checking for
cancel, use QFuture<void> instead. This will properly integrate
with QPromise API.

Change-Id: I33e5e9c62dbcfb1f7aa71eace6158e5b7c0a7098
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-03-10 13:09:20 +00:00
Christian Kandeler
b63713a84f ClangCodeModel: Prefer clangd's switch header/source
It's more reliable than the built-in code model with non-trivial
directory layouts.

Fixes: QTCREATORBUG-28878
Change-Id: I02a058e7efb54e6af0998948a20d990e10293f03
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-03-10 12:55:26 +00:00
David Schulz
423b485a36 Debugger: Disable source code display in debugger log for cdb
Printing the source code line the debugger stopped at causes issue in
the general output handling and was just used to conveniently reading
the log file.

Fixes: QTCREATORBUG-25054
Change-Id: I8db54ef6aa101b2bc7e39984bbf93bd6c9e2dc41
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-03-10 12:44:57 +00:00
Samuel Gaist
f112f83511 GitLab plugin: Remove visibility public default value
The query currently used does not provide this value and showing
public for everything is misleading to the users.

Fixes: QTCREATORBUG-28882
Change-Id: Ie47a4fa24e4b1e90b8d1a53c5819742f2b5aca71
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-03-10 11:15:35 +00:00
Jarek Kobus
301f66f190 Help: Use QtConcurrent invocation for async run
Change-Id: I670d263efa979a08bbbc7c5f936e96feadda038b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-03-10 10:53:59 +00:00
Jarek Kobus
0132cd9937 SilverSearcher: Use QtConcurrent invocation for async run
Change-Id: Ia958a393e1eb42cc565d41a1d90b292257a56750
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-10 10:51:26 +00:00
Jarek Kobus
811e54145f AsyncTask: Get rid of setAsyncCallData()
Replaced by setConcurrentCallData(), potentially with QPromise.

Change-Id: I7eddb407d7df161d440c92cdce6be59dce3609da
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-10 10:20:37 +00:00
Mahmoud Badri
27e2823591 QmlDesigner: Automatically determine if CreateTexture needs import
Avoid having to pass to CreateTexture whether the asset needs importing
or not. Instead check if the asset is already inside the porject or
not. Also small relevant tweaks.

Change-Id: I6a449d76a6b70ab34fe81762fc9e3eacf9b64d04
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2023-03-10 10:16:55 +00:00
Jarek Kobus
62489e49f8 ProjectInfoGenerator: Use QPromise for async calls
Change-Id: Ibf95090bee773cabcaed82a79687508e1f017059
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-03-10 10:04:51 +00:00
Jarek Kobus
8240333f96 TestCodeParser: Apply priority to thead pool
Rather to async task.

Change-Id: I253de9f04e655e394027d15273a86049f5b61f5b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-03-10 09:52:10 +00:00