Commit Graph

72811 Commits

Author SHA1 Message Date
hjk
3aee6b6985 ProjectExplorer: Move two json wizard factories closer to their products
... and clean up/modernize a bit and use new setup pattern.

Change-Id: Ie1b5f8da1fcc884a32869db2ce0f43e97e0f3aab
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-11 17:19:39 +00:00
Jarek Kobus
8487df5130 Process: Ensure the application is of QGuiApplication type
Checking the existence of qGuiApp isn't enough, since the
implementation just static_casts qApp to QGuiApplication.

The issue might happen in autotests if some function calls
methods of QGuiApplication. The autotests instantiate just
QCoreApplication by default.

Change-Id: Id384fb21b2a2ad66fac59bf5de35668ce50df1d1
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-11 17:16:24 +00:00
Jarek Kobus
a88dac86c0 ModelingLib: Avoid using keys()
Instead, iterate directly over the container.

Notably, sorting the result of keys() didn't play any
significant role in this contexts.

Change-Id: Iba82f3d503143ff0036509d0bf08c87747aeb40c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-11 14:30:41 +00:00
Jarek Kobus
b406bf36f5 ModelingLib: Hide areStackingRoles() in cpp
Make it static.

Change-Id: I05786425ade0d942b0e83349dc959a5dce72813e
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 14:30:28 +00:00
hjk
792b1c5b3e AppMan: Inline plugin class definition in .cpp
Change-Id: Ib5ccfec0726497421d24e9892de822d7259bcd7a
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-01-11 14:15:02 +00:00
hjk
1ab1ba02bf AppMan: Use new setup pattern for run related factories
Change-Id: I416d9a5f0b83770c7ef7673f499ed2f6b4529197
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-01-11 14:08:56 +00:00
hjk
734d111747 AppMan: Use new setup pattern for AppManagerDeployConfiguration
Change-Id: I151e233da5b69f9180c0268529430b78151cab0b
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-01-11 14:08:49 +00:00
hjk
9c96565756 AppMan: Use new setup pattern for AppManagerDeployConfigurationAutoSwitcher
Change-Id: Id5c487318c5dfbefacc5c2600da6511cbf6f4fec
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-01-11 14:08:37 +00:00
Dominik Holland
a9b3e8a852 AppMan: Add support for qmlprofiling and qmlpreview
Change-Id: I9142489f99288c4313495f14602a8c4b42776c65
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 13:58:10 +00:00
Marcus Tillmanns
75ac93db00 LSP: Make it obvious which functions need overloads
Change-Id: Ib452770a2ec3938183428ac86bfb3955de231a13
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 13:48:36 +00:00
Jarek Kobus
0a69aeb56b ToolChainOptionsWidget: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: Ie4bb30f71616f8e9ccaf2272a3e5f5529c6c0831
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-11 13:14:32 +00:00
Jarek Kobus
202d6a37d2 TaskModel: Avoid using keys()
Call contains() directly on the container.

Change-Id: I787ecccf5de872f615d8cc490652a7a758561b79
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-11 12:58:24 +00:00
Jarek Kobus
126e88814b QmlInspectorAgent: Avoid using keys()
Call contains() directly on the container.

Change-Id: I89c7714b98d86d9c0bb6811e013138d1e51ddc9f
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 12:58:13 +00:00
Dominik Holland
23da92e60b AppMan: Improve RunControl handling
* Native Runtime apps are now supported properly
* Support using a vanilla appman-controller by NOT closing the write
  channel.

Change-Id: If2d4367595f12f0e46a8dbcda4a26d5dc03be324
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 12:57:08 +00:00
Dominik Holland
fe6dd92f99 ProjectExplorer: Allow to set the ProcessMode in SimpleTargetRunner
Change-Id: I92bdd355159da2ea9c0f913c8238696a93918ce8
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 12:56:27 +00:00
Eike Ziller
f8ac4a9744 FancyMainWindow: Save collapse state
Change-Id: I5ed336eff1eb5381c3033b2bde2db0df1576ee78
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-01-11 12:55:15 +00:00
hjk
d362129432 Core: Some initial documentation for ActionBuilder
Only a few functions for starters.

Change-Id: I66d1faaf7a94061a19586e3a806fdc596715f053
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-01-11 12:28:44 +00:00
Christian Kandeler
063234c179 ProjectExplorer: Fix CustomToolChain::operator==
We need to take the compiler command into account.

Fixes: QTCREATORBUG-30133
Change-Id: I5f120d4b3e41cbeeae255a2566332389d3eba508
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 12:12:25 +00:00
Dominik Holland
d0fa07ea88 AppMan: Remove automatic B2Qt Device cloning code
Change-Id: I3d2c39be9ae95f016197a388af44055c9c454e3b
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:51:33 +00:00
Dominik Holland
627d764b33 QMake: Remove Appman specific variables and exports
Those are not used anymore.

Change-Id: I86b53b91d3ada46a4a125cde9530bb325826fbf2
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:51:21 +00:00
Dominik Holland
cacbe7f470 AppMan: Remove qmake support
The new plugin will only support CMake for now.

Change-Id: Ibe61642403272ecc6b6d3ce032591a841c42c8a4
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:51:03 +00:00
Jarek Kobus
8ab7f1bd1d DebuggerMainWindow: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: I13291bac9722ca87aa2f945342e04933c37d109f
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 11:48:39 +00:00
Mathias Hasselmann
a63368efdd Markdown: Use regular text editor's toolbar
This allows to have custom toolbar actions while preserving the regular
text editor actions.

Fixes: QTCREATORBUG-30166
Change-Id: I4a22f415d05d80355cfdbe4a2c61501af2292e85
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 11:35:19 +00:00
Jarek Kobus
e8904041c2 TaskTree: Introduce Forever group
Rename Forever -> LoopForever, Repeat -> LoopRepeat.

Change-Id: Ic999c876762d2b092f23ae88ea6de341b68a1fc2
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:34:43 +00:00
Mathias Hasselmann
2e353aa1b2 TextEditor: Give access to m_toolBarWidget
The TextEditor doesn't export its actual toolbar via IEditor::toolBar(),
but an internal container widget. This forces other editors that want to
reuse TextEditorWidget to poke into internal details of TextEditorWidget
if they want to provide the full toolbar including line number button.

By giving access to m_toolBarWidget, other editors like the Markdown
editor can show the full toolbar including line numbers without risking
to break, if TextEditorWidget should refactor its toolbar container.

Task-number: QTCREATORBUG-30166
Change-Id: Ic54f21be1897f00801c6a3cfe29c89131d61e3a5
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 11:34:05 +00:00
Mathias Hasselmann
5be8110137 CMake: Fix MinGW builds with BUILD_WITH_PCH=OFF
Set the minimum required Windows version not only for PCH builds, but
also for builds without precompiled headers. While there also increase
the minimum required Windows version: Qt 6 already requires Windows 10.
Therefore its safe to require the same API level for Qt Creator.

Fixes: QTCREATORBUG-30189
Change-Id: Icbbc63657e3c64be1151dda06004234d56e33990
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-01-11 11:32:55 +00:00
hjk
1936103fe6 AppMan: Use current setup pattern for build steps
Change-Id: Ia69b9ea67fdec6a33f13fba665ee4589e82a2574
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:22:52 +00:00
Artem Sokolovskii
f6cc15c2b7 SyntaxHighlighter: Fix crash for annotation highlighters
Change-Id: I439c0581e197f59276095b37361ccf52f97e50d2
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 11:11:42 +00:00
David Schulz
2e96194681 LanguageClient: also check for inherited mime types
... when trying to auto setup language servers as well when matching the
configured mime types against a document mime type.
In particular this fixes showing the auto setup editor info bar for the
newly introduced clang format mime type as well as starting the yaml
server for those files, since this clang format mime type inherits the
yaml mime type.

Change-Id: Id3ec64b0a1a128b070eadbcad600b3aaf4e667c3
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
2024-01-11 10:34:57 +00:00
hjk
6adb82eabc Core: Use new setup pattern for OpenEditorsViewFactory
Change-Id: Ice38c0c0a8fd927db61ec639a8d6d8a7ea01d421
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 10:33:05 +00:00
hjk
101a6193a5 Core: Some code cosmetics in FolderNavigationWidget
Change-Id: I75e78cbd8707bf47b12bdb1bc497514da90ac4f6
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 10:32:30 +00:00
hjk
06c9898dbf HelloWorld: Move the plugin class definition to the .cpp
The latest trend.

Change-Id: Ic70739dec71e2102735021f5cf152abae6dfea12
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 10:32:20 +00:00
hjk
28b06e89d5 Core: Use ActionBuilder in FolderNavigationWidgetFactory
Change-Id: I1f113724c2c9aba6657bddcc9ecfa9c0f151a7e8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 10:07:19 +00:00
Eike Ziller
65af79af84 ExternalTool: Fix output handling for General Messages
The handling of lines was wrong and only happened to work if the output
was delivered in one batch. Otherwise it would add line breaks - and if
the tool output was delivered not in batches of lines, that could break
in the middle of output lines.

Change to code to use the Process API for handling lines of output.
That also makes the codec handling in ExternalTool unnecessary. The
corresponding members can be removed in the next binary incompatible
release.

Fixes: QTCREATORBUG-29977
Change-Id: I9d37e5e374a43f34a28418272692cca17599c8b4
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 09:05:44 +00:00
Jarek Kobus
cdb5514040 AppMan: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: I56fbd18acd2faec7596141990f87e5be4f122639
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 08:37:49 +00:00
Jarek Kobus
b1da5533aa SemanticTokenSupport: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: Ice5ec7c6aaf2e0f0d1090414e57bc1c03689f28f
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 08:34:08 +00:00
Jarek Kobus
5f5d9e4b0b LocatorSettings: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: I55cbc374e5d6a068b8cd9e2febcdcc0ab5381677
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 08:33:55 +00:00
Eike Ziller
150441bf88 iOS: Avoid iostool for info gathering if possible
Previously we had a small workaround for retrieving the state of
developer mode for iOS 17 devices integrated into our own iostool.

Instead use devicectl for gathering device information for devices that
it can handle, and only fall back to iostool for the devices that it
cannot handle.

Since iostool cannot handle deployment, running, and debugging for
iOS 17 devices anyway, the end goal would be to only use devicectl
for these.

Also add a TaskTree wrapper for IosToolHandler for convenience.

Change-Id: I5bcd09eb354c2dce9b21e62e140de16f2e740d6e
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 07:38:11 +00:00
Christian Stenger
e595c3f615 AppMan: Fix qbs build
Amends 3916a0637a.

Change-Id: Id18e85d8d0db08c72b86a63488437290cdcb5328
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 06:36:20 +00:00
Christian Stenger
e9f4b319a6 AutoTest: Fix location parsing for Qt Test
There are multiple ways to print the location depending on
the OS the test is executed on.
Do not "parse" again the location string, but use named
captures instead as they are present anyhow.
Former approach would return no location in case the location
would be printed like /path/to/file:10 which might be used on
UNIX.

Task-number: QTCREATORBUG-30143
Change-Id: If48bd0d9d9d8121522a44dfa69a15a0ccabde708
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2024-01-11 05:39:03 +00:00
Jarek Kobus
981a0160a2 AppMan: Compile fix
Amends 3916a0637a

Change-Id: Ic93f356a14dcb1be349acec002b87abbaedfee71
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-10 21:13:25 +00:00
Dominik Holland
3916a0637a Appman: Initial CMake integration
* Detection of packages created using CMake API
* Run target for all detected packages
* Special CMake package step for installable packages
* Run/Debug of builtin apps
* Package/Install/Run/Debug of installable packages
* Works locally and with Remote Linux

Change-Id: Ic297ba04f20caf0a5383ed016d759e654864a065
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-10 16:47:52 +00:00
Alessandro Portale
5e1993e0ae Core: Fix size of expand tool button in SearchResultWindow
In "Relaxed" mode it was a bit to small.

Change-Id: Ie611ce876206967221f696da639f940e59dbac29
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
2024-01-10 15:30:23 +00:00
The Qt Project
820881afc4 Merge "Merge remote-tracking branch 'origin/12.0'" 2024-01-10 15:25:29 +00:00
Eike Ziller
3e40f227f5 Merge remote-tracking branch 'origin/12.0'
Change-Id: I70bcac4195095a7646dcdc31532d8f61b643d869
2024-01-10 16:06:29 +01:00
hjk
e7d71c6c58 ProjectExplorer: Treat disabled UseLibraryPathsAspects as not selected
These are used to steer the addition of Qt library paths from
the build device to suitable environment entries of the run device
The aspect is hard-disabled for setups where these differ, but
so far checked only its value, which could be true independently.
Make the default access using operator()() also consider the
enabled state.

Change-Id: Iccf708999bad0336024c771e95a952118f2b2562
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-10 15:06:09 +00:00
Jarek Kobus
776e0346a3 PluginSpec: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: I07f19eff23412b8953500e00d749d0477ce64543
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-10 13:15:54 +00:00
David Schulz
2bfa7aff9f Debugger: avoid nested event loop while parsing output
Use a message box that does not spawn an additional eventloop. Otherwise
we might end up with an unusable parsing state.

Fixes: QTCREATORBUG-30168
Change-Id: I628c7b915b5e4e13751f342b23191ff20ed61253
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-01-10 11:35:46 +00:00
Eike Ziller
542ae405fc Welcome: Avoid duplicate examples when searching
When adding examples for a category/section we also add them to the list
of all examples. To avoid ownership issues we duplicate examples when
they appear in multiple categories, but that means that the existing
mechanism of filtering duplicates based on item pointer does no longer
work. Filter duplicates based on name+description.
It would possibly be nicer to give the examples IDs (serial numbers)
when reading them and just using that for filtering duplicates, but that
isn't possible in a binary compatible manner atm.

Fixes: QTCREATORBUG-30069
Change-Id: I0ee9ef7b86955af5ee8ccdb9c5683ced81097671
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-10 11:30:48 +00:00
Eike Ziller
c07b453486 Examples: Fix reading the category ordering from manifest
qtcreator_tutorials.xml contains ordering information for the tutorials,
and if we read that (first) we ignore any subsequent ordering that the
set of Qt examples defines (in qtdoc/examples-manifest.xml).

Only read the tutorials.xml if we are actually interested in tutorials.

Amends 08bbe885b4

Change-Id: I9148cc9f1060500f46be2bbc9c9ef6c2512c2f6c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
2024-01-10 11:27:10 +00:00