Commit Graph

80111 Commits

Author SHA1 Message Date
Marcus Tillmanns
d05faf64f4 Terminal: Correctly parse url links with empty path
Previously urls such as http://google.com were appended to the current
dir, as FilePath::isAbsolute would return false since there is no path.

Change-Id: I17546aed322a74f6b8cbcc166d37608fd809fd1e
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-04-06 13:06:11 +00:00
Robert Löhning
f7ad1f02a1 SquishTests: Fix waitForProjectTreeItem() for python3
Amends 892ccd2097

Change-Id: I18e2c9a5407e4c70dfdae5e9c17959897ea33d50
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-04-06 13:05:40 +00:00
hjk
46b9cd952a Debugger: Add skeleton for a debugger adapter protocol using engine
- Support the launch of an application
- Support continue/pause an application
- Support add breakpoint only after an app is launched
(I.e. preset breakpoints won't work)
- Support stop the debug session
- "Remove one break breakpoint" works but removes all breakpoints

ToDo:
- Polish the transition between stages
- Fix breakpoints handling
- Add support "Step in", "Step out" and "Step Over"

Task-number: QTCREATORBUG-27279
Change-Id: I5c32ce713f5a0f19cc3b9d995cbbadd8adf6a413
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-04-06 13:04:43 +00:00
Marcus Tillmanns
45c2e3fe58 Copilot: Add insert next word action
Fixes: QTCREATORBUG-28959
Change-Id: Ied53ad5676133e2eb71988ecfcce90c5ad77e3c3
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-04-06 12:52:55 +00:00
hjk
a8a9bf1713 ProjectExplorer: Be more generous on what the manual copy step accepts
That's a manual fallback for odd cases, do not artificially restrict usability.

Change-Id: I6e5433559534ae1d7be29a218442b46c306b2bed
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-04-06 12:49:09 +00:00
Artem Sokolovskii
e0be80a19d ClangFormat: Change Override check box name and ToolTip
Change-Id: I3d80ca3c2fd9dd6210220eca0db1ecec5dad9f0e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-06 12:03:48 +00:00
hjk
2c3373172b RemoteLinux: Simplify RsyncDeployStep implementation
Change-Id: Ife6eb2d1f7ab2202e7ddc6c13c68f3ed09403553
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-06 11:51:04 +00:00
Artem Sokolovskii
028686b419 ClangFormat: Grey out Clang-Format Style config when not overridden
Add feature to grey out the Clang-Format Style configuration widget
after unchecking the 'Override' checkbox.

Change-Id: I94bbb1f4436f3caeaed55d49582211257e480d0d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-06 11:20:29 +00:00
Marcus Tillmanns
166c0d6558 Terminal: Safety checks
Change-Id: I095ca03dcc7bf943638d7ce785c658c0fed3b2f1
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-04-06 11:20:29 +00:00
Marcus Tillmanns
392c13be11 Terminal: Enable by default
Change-Id: Ic21d4f0431c5999a3671dd1afe04fa27c3d816fe
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-04-06 11:20:22 +00:00
Marcus Tillmanns
ccbab62461 Docker: Make end of auto detection obvious
Fixes: QTCREATORBUG-28819
Change-Id: I2d93c472ed7b29329642cb8052b6f7b980d017d9
Reviewed-by: Janne Juntunen <janne.juntunen@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-04-06 11:20:12 +00:00
Marcus Tillmanns
6583f27caa RemoteLinux: Fix double-remote terminal process
Change-Id: Ibfc6b6f2ce218be39ca0aa9fc582516b0efe4536
Reviewed-by: hjk <hjk@qt.io>
2023-04-06 11:20:03 +00:00
hjk
7e63574764 CMake: Disable the default "install into temporary host" deploy step
This is not needed with the new option in the actual cmake build step.

Change-Id: I3bf8bd4ed96c44223ad401406a168d3c8d07fa23
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-04-06 10:07:48 +00:00
hjk
4753b658bb CMake: Allow to run staging installation in CMakeInstallStep
User configurable, on by default (only) for cases where build and run
device are different.

The staging dir is by default a randomly named directory on the build
device, but can be changed by the user if needed.

Overall, this does not change anything for a pure local setup (but
would let the user opt-in into staging, too)

Change-Id: Ic1c5fd1f1261e067692710c9e3aa9d821897478d
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-04-06 10:07:37 +00:00
Robert Löhning
42c653b53c SquishTests: Don't filter out code model issues when we need them
Amends c46dff0199

Change-Id: I5f2613edf15f86161a576ab21f16f079bd12a59f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-04-06 09:38:54 +00:00
Marcus Tillmanns
388e516200 Terminal: Improve link copy
* Show link if control key is pressed (without mouse move)
* Copy link on Control+Shift+Click
* Add Copy Link Action to Right click menu

Change-Id: Ide4ff4e77c03e015117c67f09c9d60dedd14dfcb
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-04-06 09:25:36 +00:00
Christian Stenger
db2c5f87b1 Squish: Prepare perspective for object picker
Visual adaption for the later addition of the object
picker functionality.

Change-Id: Id1c422465d4cebcea9eb366621b57a3c076385cc
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-04-06 08:59:42 +00:00
Marcus Tillmanns
f65206f990 Utils: Rename Port::parseFrom function
It can parse both netstat and cat /proc/net/tcp output

Change-Id: Iafe37be7ace6a1eda068340b1f07e24a71724db1
Reviewed-by: hjk <hjk@qt.io>
2023-04-06 07:18:28 +00:00
Marcus Tillmanns
3cd5e32e9c Debugger: Start debugserver for remote macOS
Change-Id: I5f713892dfbaaaecb7459c288df109bfe337f891
Reviewed-by: hjk <hjk@qt.io>
2023-04-06 07:14:45 +00:00
Marcus Tillmanns
522de9bfd7 Devices: Unify Port Gathering method
All devices that support it use the same mechanism to gather ports
so this patch removes the individual implementations in favor
of a single one in IDevice.cpp.

This patch also removes:
* canAutodetectPorts() as it was not used.
* Port::parseFrom...Output as they are not used anymore.

Change-Id: I8ecedec2d71e60985402387982c64311c5a651e6
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-04-06 06:58:44 +00:00
David Schulz
f5c41a7f83 Python: Allow installing multiple pip packages in one task
Change-Id: If6cc1373cd38c07b29ac48fa51bf0ed35d6f104b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-04-06 04:44:55 +00:00
Assam Boudjelthia
4b73de5580 Android: allow non-integer platform sdk versions
Some of the more recent SDK platform versions don't follow
the form android-xx (x being integer) and can contain non-integer
characters or other sections such as android-33-ext4, which were
not showing on the list of SDK platform versions in the project's
settings.

Task-number: QTBUG-112465
Change-Id: I3de14c4f1b15a64dcced48c6e8817efbda6677bc
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-04-05 17:38:45 +00:00
Christian Stenger
66f939c758 Wizard: Fix generated project file
Change-Id: Ibef37ad8ecc696a35766bbda94a113e747d69771
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-04-05 14:25:34 +00:00
Christian Stenger
0bb8cd2d68 AutoTest: Tweak wizard a bit
Provide a version for creating Boost tests using the
shared library approach.
Add second variant for creating Boost tests.
The former version is the header only variant and can
not get extended with further cpp files without
modifying project files and the existing cpp file.

Task-number: QTCREATORBUG-28846
Change-Id: Ie7ecc339dcbe11804ce19bdba20e8db36b893a50
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-04-05 13:52:05 +00:00
Semih Yavuz
5b220e3a49 Fix typo in method name
Change-Id: Icd8c057fa55cf1fb5d7cba7ab283237a20ab091f
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
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>
2023-04-05 12:49:01 +00:00
Jarek Kobus
55cdfeab97 GenericGdbServerProvider: Fix a warning about unused variable
Amends 617d93761e

Change-Id: I7f9d89f8ff10e1618e9a02912a6c993311e9622b
Reviewed-by: hjk <hjk@qt.io>
2023-04-05 12:30:03 +00:00
Jarek Kobus
37f2d68464 CppModelManager: Pass context object into signal connection
Change-Id: I6b66fbc6300597534a1498e4abbd8c3162cee73e
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-04-05 12:29:47 +00:00
hjk
14ecda9ca2 ProjectExplorer: Rename BuildStepFactory::cloneStep{,Creator}
It clones the functor to create the step, not a step as such.

Change-Id: Ie07b321e28fae888bb800a574a717251f3661a2f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-05 12:24:21 +00:00
hjk
aa5472ac1b RemoteLinux: Hide GenericDeployStep implementation
And un-export its factory. Re-use down-stream is now done via
step ids instead by inheritance, so the implementations do not
have to be visible anymore.

Change-Id: I258adf7ede404b1eeedb8d703238b1a8b4793302
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-05 12:20:31 +00:00
hjk
25c33be9f4 Boot2Qt: Switch deploy step creation to clone-by-id
This finally cuts the compile-time dependency on individual
factories or even step implementations.

Change-Id: I764d489231762982dad803ce1cad9aca6352f1d9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-04-05 12:15:48 +00:00
hjk
7265fd479c ProjectExplorer: Add more functions to find FolderNode children
Will be used to avoid some of the temporary lists created by
FolderNode::{file,folder}Nodes.

Change-Id: Iac4bd1473a480971230a0d2426b993afb82648e0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-05 12:11:01 +00:00
Alexander Drozdov
617d93761e BareMetal: add ability to connect to already running GdbServer
Allow GenericGdbServerProvider connect via TCP to the already running
GdbServers. Useful for the remote debugging for BareMetal devices
like Xilinx UltraScape+ PSU: Xilinx provide his closed hw_server
component that allow a Gdb connections.

Change-Id: Ifd3af542a83d3357db366d6842461c2b2e49c4e5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2023-04-05 10:51:05 +00:00
Jarek Kobus
e22d79fbb5 ClangModelManagerSupport: Drop namespace scopes
Change-Id: Id8d9474a35e367469b435d10b3eba0700dffc304
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-04-05 10:48:54 +00:00
Christian Stenger
36ca97d32b PE: Silence soft assert
Change-Id: Ie07d261cc49a20fd57d885e9be9d63c4b4a8743f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-05 10:11:34 +00:00
hjk
663bbbfb0e Utils: Also list dot files when using the ls fallback
Change-Id: I6763280134e8cb040b6bc627b4f67d595dc2fb5e
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-04-05 09:44:10 +00:00
Alessandro Portale
a73c1b47f6 CppEditor/ClangTools: Version tooltip for clang tools path choosers
Change-Id: Idaacb8449ef298dfe9e54a06cefd373816011360
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-05 09:22:55 +00:00
Marcus Tillmanns
cb4074713f Dumpers: Fix std::string for clang >= 15
libc++ has changed the layout of std::string again.
(see https://reviews.llvm.org/D128285)

This patch adds checks to differentiate between the two versions.

Fixes: QTCREATORBUG-28806
Change-Id: Ic21c488cf1c173120beddf414ca39040dfaba096
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2023-04-05 09:16:45 +00:00
Marcus Tillmanns
c378df273c Docker: Fix windows terminal
Do not send the marker when running in a PTY. On windows it gets encased
in junk and duplicated otherwise.

Change-Id: I9017066b0f1d22d4700704bfa2120c4f5d66daa9
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-04-05 09:15:24 +00:00
Alessandro Portale
c53c9592fa CMakeProject templates/examples: Fix the install line
The installation command needs to define
  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}

Fixes: QTCREATORBUG-28999
Change-Id: If3f6ed15ef248eb07628bdc9fa4d11a678839a27
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2023-04-05 08:47:20 +00:00
Jarek Kobus
3108892c5c DocumentLocatorFilter: Refactor internals
Avoid use of LocatorFilterEntry::internalData inside
LspCurrentDocumentFilter.

Change-Id: I5eb4831919281ab11a630bf7810890a72a1423bb
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>
2023-04-05 08:00:35 +00:00
Cristian Adam
9f6209a228 CMakePM: Do not check for changes for CMAKE_PROJECT_INCLUDE_BEFORE
This was the case previously when the path was tied to the Qt Creator
version.

This fixes the docker case when the expanded value gets replaced with
the unexpanded value from the initial configuration.

Change-Id: If005d410bc4408403fd79fa619c58217a499d3a5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-04-05 07:53:29 +00:00
hjk
e3565d41b8 Utils: Code cosmetics
Change-Id: I34b566371fc4d6666439ed14c8ba95417584f0f5
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-04-05 07:23:48 +00:00
Marcus Tillmanns
4c2e08912c RemoteLinux: Fix control signal if running in PTY
Change-Id: I8bc6c5f686a2e20ead1742e1567ad5530dd13eaf
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-04-05 07:23:14 +00:00
hjk
de546ff3ec Debugger: Support piping dumpers into gdb
This allows using dumpers available on the host being used from
remotely running gdb. No lldb/cdb yet.

Task-number: QTCREATORBUG-29000
Task-number: QTCREATORBUG-16246
Change-Id: Ib1a40a8c0284dcf41e8800d70ca3e632c699b2fa
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-04-05 06:26:11 +00:00
hjk
808f5c0e1d RemoteLinux: Use only ID based creation of install step
Also for configuration fixes due to upgrades.

Change-Id: Iba48313fabfb0ae605cb56052ea9c0fe7fc414e7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-04-05 06:25:27 +00:00
Jarek Kobus
a22e3acf28 LocatorFilterEntry: Discourage the use of internalData
Drop internalData from c'tor. The internalData is going to be
removed, soon. Drop also the icon arg from c'tor since
LocatorFilterEntry instances are usually created in non-main
thread, while operating on QIcon instances isn't really safe
in non-main thread. The use of QIcon inside this struct is
a subject to change in the future, in a way like it was done
in other parts of code that generated icons from non-main thread.

Change-Id: Ic6aa719a64e5fbd65883c54149796057c632780e
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>
2023-04-05 05:33:57 +00:00
Jarek Kobus
79c8e60a22 WorkspaceLocatorFilter: Get rid of prepareSearchHelper
Filter out in advance the clients for which locators are
not enabled.

Change-Id: I74234fb39db737db86a0d6320f53297bcaa89a8a
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-04-05 05:29:27 +00:00
Jarek Kobus
da7009ac16 Python: Remove unneeded mutex
The mutex may potentially block concurrent calls to
Pip::infoImpl().

Make infoImpl() a static method in cpp.

Change-Id: I06e2de08674b5669e58684743d67a569da43d662
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-04-04 18:50:33 +00:00
hjk
fbd3285a7f ProjectExplorer: Add functions to iterate over FolderNode child subsets
Will be used to avoid some of the temporary lists created by
FolderNode::{file,folder}Nodes.

Change-Id: Icc4bd1473a480971230a0d2426b993afb82648e0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-04-04 15:08:11 +00:00
Christian Stenger
5a5d6f7548 Android: Silence soft assert
Change-Id: Ie4916e2de2cb51388df674219a45df0e7d4d5abf
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-04-04 15:04:52 +00:00