Commit Graph

88653 Commits

Author SHA1 Message Date
hjk
fc4067a118 Debugger: Annotate internal debug output with engine type
Makes it easier to reason in mixed setups.

Change-Id: I4f7aa43847dab51d4041fb1b9850ed9860a6dafc
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-03-14 08:31:36 +00:00
hjk
5ebd4c833e QtSupport: Restrict QtVersionManagerImpl lifetime to plugin lifetime
This occasionally triggered crashes on static destruction when
hard-killing Qt Creator.

Giving QtVersionManagerImpl the plugin as QObject parent effectively
re-instates the lifetime behavior from before we moved to delayed
initialization. We keep the delayed initialization, at the (acceptable)
prize of a somewhat quirky setup.

Change-Id: I1b4be284a1b573325ed5cc441778eeb48b94c24b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-14 08:30:55 +00:00
Leena Miettinen
75b9b31c62 Doc: Turn "Using GitHub Copilot" into a how-to topic
Task-number: QTCREATORBUG-29361
Change-Id: Ie682ebd399b0f478d106dba9876f4fea9834d340
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-14 08:07:01 +00:00
Marcus Tillmanns
1942506b2c Utils: Fix IntegerAspect::addToLayout
The UI should show the volatileValue, not the value().

Change-Id: Ia4b4e596e757cfb3590d6df2f359f6a90f7c5790
Reviewed-by: hjk <hjk@qt.io>
2024-03-14 05:49:17 +00:00
Tim Jenssen
6ea8c6290c Merge remote-tracking branch 'origin/13.0' into qds/dev
Change-Id: I3adcadf18eb19344461c5a6a0b6d3aec9045430c
2024-03-13 18:25:08 +01:00
Eike Ziller
cdad61d08a QmlDesigner: Add optional dependency on LicenseChecker
It is important that the LicenseChecker's initialization (if that is
available) happens before QmlDesigner's, so add an optional dependency
to reflect that.

Add a PLUGIN_MANUAL_DEPENDS option to add_qtc_plugin, which explicitly
specifies the name, version and type. The existing PLUGIN_RECOMMENDS
requires the plugin target to exist to extract the plugin's version.

Change-Id: Ie2cf84e75964ce91ed8bbcdbeee9fa9770bed641
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-13 17:19:07 +00:00
Ali Kianian
43ee39361f QmlDesigner: Add Ids to icons for Squish tests
Task-number: QDS-12204
Change-Id: Ib63409e9092db4446756ec9dec6092947d5f0697
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-03-13 15:16:41 +00:00
Alessandro Portale
e604f285e8 Android: Provide direct JDK download link to required version
This changes the JDK download link to the JDK 17 packages on
adoptium.net, which is the latest source for JDK binaries for all three
host OSses.

Fixes: QTCREATORBUG-30335
Change-Id: I54322c82b7854d948fe15462f198f8eac1f58981
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-13 14:51:58 +00:00
Christian Stenger
e97791ea6a Axivion: Make columns movable again
This got lost when replaced the default header implementation
with a customized one.

Change-Id: I5824b0e35a39746eb7056fbc95ea085505129f4e
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-03-13 14:48:32 +00:00
Christian Stenger
4a17bbbfd1 Axivion: Left-align the header columns
Change-Id: Ie1384cf10bc30e12cac3c8b1d120edb030738a22
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-03-13 14:48:27 +00:00
Ali Kianian
9780e05ef2 QmlDesigner: Check the validity before accepting the import dialog
Fixes: QDS-12068
Change-Id: I5341214b43edf8fb7d3693a861a09c7fd3461ac2
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-03-13 14:15:59 +00:00
Eike Ziller
988832ae76 Do not use original ID when creating kit for vanished target
If we use the same ID for the new kit as for the original, we get into
problems if the original kit re-appears.

This can happen when uninstalling a Qt version with the online
installer, and later re-installing it. Or when changing the install
settings path to a different online installation and back again via the
command line or the "Link with Qt" functionality.

Change-Id: Id99a3560ebed6264ad13dab5ff48945b30a8229f
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-03-13 14:14:02 +00:00
hjk
1c64f2bd4e AppMan: Fix crash when creating AppManagerInstallPackageStep
... in a situation where no device is present. This happened to me
when trying to restore a "vanished" kit.

Change-Id: I7019385af115a5cd653b9a79e4420f1f8df4797d
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-03-13 14:06:03 +00:00
Eike Ziller
d70450d849 Examples: Ignore remote Qt versions
While showing examples from remote Qt versions would probably be
possible, it is not a great idea performance-wise.

Task-number: QTCREATORBUG-30512
Change-Id: I2d00640bc8cbb3b19a89af1b17108e28604ef5a8
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-13 13:59:26 +00:00
Jarek Kobus
d738d3ab95 Axivion: Ensure the username matches on unauthenticated access
Disallow the unauthenticated access when the username doesn't
match the dashboard's username.

Change-Id: If4a38091b0bba42d89da911be45f823c248cc25f
Reviewed-by: Andreas Loth <andreas.loth@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-13 13:54:18 +00:00
Jarek Kobus
5211a9457a Axivion: Break the authorization process on error
Break the authorization process on any error coming from
unauthorized access trial except the UnauthenticatedException.

Call onUnauthorizedGroupDone only after successful execution
of dashboard's dtoRecipe(). Rename it to onUnauthorizedDashboard.

Change-Id: Ia7ce0f326c91722d0e68d5228cb46b94b47a7892
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Andreas Loth <andreas.loth@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2024-03-13 13:54:03 +00:00
Ali Kianian
d90828b055 QmlDesigner: Detect literal types from string values in ModelEditor
Fixes: QDS-12213
Change-Id: I58d56c42b94be99309a344e084c68703b0b25b82
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-03-13 13:45:23 +00:00
hjk
b33fee0ded Debugger: Be a bit more explicit about states while quitting
... and make sure to use notifyInferiorIll only in states
where the inferior might still be alive.

Change-Id: Ie002cd8b70cc610b15bab00554c027494a0ad2e3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-03-13 13:29:35 +00:00
Ali Kianian
fbb8bd89f9 QmlDesigner: Set null value for the empty properties of json objects
Fixes: QDS-12211
Change-Id: I0b85c6fb2f059317ab412f083e2130e8c1cfb6b6
Reviewed-by: Shrief Gabr <shrief.gabr@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-03-13 13:01:04 +00:00
hjk
a7bf5f17c5 CppEditor: Code cosmetics in cppeditoroutline.cpp
Mostly inlining and namepsaces.

Change-Id: Ib5d22d40844d55ae029158d8cf3d694ecf2bc4c4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-03-13 12:47:29 +00:00
hjk
a2ee1043c7 RemoteLinux: Fix crash on running test of an already configured device
I got a crash when clicking "Test" in the configuration of an
already existing ("Local Remote") device that was intentionally
not yet set up with working authorized keys after dismissing the
qtc-askpass dialog. The full reason is unclear, but this here
fixes it for me.

Change-Id: Ie07b89b85576beb59583370191e337fd1219db51
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-03-13 12:47:09 +00:00
Cristian Adam
52c39d007f CMakePM: Do not crash with CMake presets and no CMake tool
If no CMake is found, show an error message (reusing an existing
translated string).

Fixes: QTCREATORBUG-30505
Change-Id: I6e3037ee97dfba21791191483fffab769a451125
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-03-13 12:32:54 +00:00
Alessandro Portale
90f66d63fa Welcome: Enable hover effect on Welcome screen buttons
Some styles (e.g. macOS, KDE) disable the hover effect on
QAbstractButton. Setting the Qt::WA_Hover on our own button enforces the
hover effect.

Change-Id: I9f2f22c7e7c869a70ebb0e9032d162bd29e94166
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-13 12:23:06 +00:00
Alessandro Portale
f6727adc10 Use Qt::TextShowMnemonic for text metrics and drawing
Qt installations on KDE systems may insert shortcut ampersands into
widgets texts. For self-painted widgets, we need therefore consider
Qt::TextShowMnemonic when retrieving metrics of a text and when drawing
it.

This change addresses the issue for Utils::DetailsButton and
Core::Button. Most likely, there are more places where this needs to be
fixed.

Task-number: QTCREATORBUG-30534
Change-Id: I98ef9bf8c8502d92d3a3884d1588be190934f5bd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-13 12:18:34 +00:00
Jarek Kobus
a8d339271e Axivion: Disconnect from Job's finished signal
Just to be sure we don't re-emit task's done signal.

Change-Id: Ibcd0076c2c14044355e838be2e6ba47d1019b9d1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-13 12:01:50 +00:00
Christian Stenger
8a8f26d39a Axivion: Avoid sort indicator overlapping column text
If the column is too narrow we may overlap the text of the
column header. Explicitly clear the area before painting the
icon.

Change-Id: If73c1e2cc66c21dd9ffa41710873faa654bf235e
Reviewed-by: hjk <hjk@qt.io>
2024-03-13 11:32:51 +00:00
Shrief Gabr
f3782aed90 EffectComposer: Prevent overwriting when creating a new composition
Task-number: QDS-12144
Change-Id: Ie54ef39172969c9bfb008d70169a439b992f52fd
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-13 10:20:38 +00:00
David Schulz
b72c3bc8a2 LanguageClient: add a tooltip to deprecated items in the call hierarchy
Change-Id: Ica03cdd06eea755852e6e9e3335ffeb5f8cae499
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-03-13 09:55:14 +00:00
Marcus Tillmanns
3cdc4f5a96 Docker: Allow starting Container from all threads
Limiting starting the container only from main thread is worse than the
potential for data access races. DockerDevice needs a rewrite here.

Change-Id: I485f5253d1f0ba0e7fb40ca7e1ddb37dd615212c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2024-03-13 09:43:02 +00:00
Leena Miettinen
6760e2d64b Doc: Fix typo "a installable" > "an installable"
Change-Id: Iea7ac4825de671ac892a8cbb228fb462a1f5be15
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-03-13 08:57:14 +00:00
Jarek Kobus
3107633731 TextEditor: Split FormatText into input and output structs
Remove output data from FormatText and rename it into FormatInput.
Use Utils::expected_str<QString> for output data and alias it with
FormatOutput.

Change-Id: I2cf21d73d2e973eeeb4431ae30b56bb5987986f6
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-03-13 08:20:00 +00:00
Jarek Kobus
0b656452dd GenericLinuxDeviceTester: Fix warning about QFutureWatcher connect
Fix the warning:
QFutureWatcher::connect: connecting after calling setFuture()
is likely to produce race.

Amends e8ad29d3af

Change-Id: I834f41bd3b7c51520fb36945d4c09a8eafd2affc
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-13 08:07:44 +00:00
Jarek Kobus
5399eff2a9 BaseQtVersion: Get rid of MacroExpanderWrapper
Apparently the reasoning for having it, i.e. make
std::unique_ptr<Utils::MacroExpander> "copyable" is not
valid anymore.

This change also fixes the leak of a MacroExpander
returned by QtVersion::createMacroExpander().

Change-Id: I811ecf2eca8e5ce3a1da267da8290ba89df66db6
Reviewed-by: hjk <hjk@qt.io>
2024-03-13 08:07:36 +00:00
Jarek Kobus
3529f3115d ToolChainOptionsWidget: Don't leak QActions
Change-Id: I2018c10a708c4b4bfa2402620874735da5860fde
Reviewed-by: hjk <hjk@qt.io>
2024-03-13 08:07:09 +00:00
Jarek Kobus
c1015dde15 DeviceSettingsWidget: Don't leak QActions
Amends 662aabd29f

Change-Id: I353a93b3b3752d639f9fc5d45467c843bed6a604
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-13 08:06:59 +00:00
Ali Kianian
4b035bd4cb QmlDesigner: Fix the tooltip for integer in Model Editor
Task-number: QDS-11676
Change-Id: I6eb531dae75126ad83e5f744313d801810c56678
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
2024-03-13 08:05:43 +00:00
hjk
7a769c59e7 Debugger: Add missing state transition
DebuggerProcessFinished in EngineSetupRequested means EngineSetupFailed.

Could be triggered with LLDB "Run as Root" plus <Cancel> in the dialog.

Change-Id: Idbfcaebfc302c7646f9b85275d1d57be17cd0922
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-13 07:54:57 +00:00
hjk
3322186b0d BaseQtVersion: Drop cache related paramenter QtVersion::fromMap
Not used anymore.

Change-Id: I992bde278af360d9d67fd86fd79bb035cafd2bec
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-13 07:54:50 +00:00
Marcus Tillmanns
3f8bc98109 Debugger: Add "Run as root" support for lldb
Fixes: QTCREATORBUG-30516
Change-Id: I2f1e7522dd95847ad548a2390795a91a90c63a17
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-13 07:50:31 +00:00
Marcus Tillmanns
41f1bc141d Process: Preserve environment when "runAsRoot" is enabled
Change-Id: I2078925b48d8fc3053e2be9632248e3fff9ea608
Reviewed-by: hjk <hjk@qt.io>
2024-03-13 07:50:16 +00:00
Jarek Kobus
16decfec67 LanguageClientSettingsPageWidget: Don't leak QMenu
Change-Id: Ia1bfc4aa66e6ed2e2b0e87ae89cf92b1bd5fa97a
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-03-13 07:47:24 +00:00
Jarek Kobus
84166b4eaf PyLSConfigureWidget: Don't leak the editor
Change-Id: Idc283b2cfabfcd1120520c5bbb4258b085c410a0
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-03-13 07:47:17 +00:00
Xavier BESSON
2166647682 Add option to display locate results using relative paths to project root
Task-number: QTCREATORBUG-29462
Change-Id: Idc52ec206d73d23b958a60391e8d0be9a6b000b0
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-03-13 07:46:54 +00:00
Christian Stenger
0aff252264 Utils: Fix qbs build
Amends 4e8bdd610b.

Change-Id: I6a187c8cd28320836a12cfc4a778d507193c52a5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-13 07:44:08 +00:00
Christian Stenger
fe5f959925 QmlPreview: Fix enabled state of editor action
Kind of amends 42c1b15874.

Change-Id: Ifd340d0f9bb206c48fd82cecf4e735cca0d70a7d
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-03-13 07:00:12 +00:00
Alessandro Portale
0817f7ae5e Utils: Replace imageFileWithResolution with qt_findAtNxFile
qt_findAtNxFile does a better job at returing a suited @Nx-image for
"exotic" device pixel ratios. This change fixes for example the active
mode icon when running Qt Creator at 250% ui scaling.

Task-number: QTCREATORBUG-30464
Change-Id: Ia90ba3573fcd4af7941322d7dbc8905fe140192b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-03-13 06:49:55 +00:00
Alessandro Portale
c6ed1d42c3 Welcome: Fix application icon size for > 200% ui scaling
Use the actual image dpr for arithmetics rather than the application
dpr.

Fixes: QTCREATORBUG-30464
Change-Id: I52083bcca067282a677a9d0e1b7c62e9c7270c64
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
v13.0.0-rc1
2024-03-12 21:50:58 +00:00
Cristian Adam
8713919f31 CMakePM: Fix dll path addition for MinGW
Amends 0d8a542b4f

Fixes: QTCREATORBUG-30529
Change-Id: Ic786f1e7075ef68cf9d590d27ef90b9d1e8631b0
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-03-12 21:37:48 +00:00
Leena Miettinen
1cf925bc17 Doc: Describe the application manager plugin
Task-number: QTCREATORBUG-30209
Change-Id: Icd40d6da99e7fa53f667745a4de32b03b1157c99
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-03-12 15:43:42 +00:00
Leena Miettinen
6a74c829df Doc: Extend "Using CMake with Conan" to vcpkg
The automatic setup also works with vcpkg.

Change-Id: I755e59ef0a88105da195e9abe30adca5e3011fae
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-03-12 15:43:23 +00:00