Commit Graph

80509 Commits

Author SHA1 Message Date
Jarek Kobus
b414268427 DiffEditor: Use AsyncTask
Change-Id: Id5b21b10c7a8805b560eb4fb36fd955b7af34afa
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 16:12:46 +00:00
Eike Ziller
f5efd9acc0 JSON wizards: Don't add paths from environment over and over
It would add the paths from the environment variable again, each time
the searchPaths are requested

Change-Id: I2650ba832e23b5fcd6bfd363389e1eaf3beddb9d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 16:08:40 +00:00
Jarek Kobus
30eac65e09 Utils: Introduce AsyncTask
AsyncTask encapsulates a function and arguments list
for further asynchronous invocation (using Utils::runAsync).
This is going to be a part of TaskTree hierarchy.
It will enable keeping asynchronous tasks inside the tree.

This means we will be able to construct a task tree
consisting of a mixture of processes and asynchronous tasks.

Implementation-wise this is a simple templated subclass of QObject,
where template parameter is of asynchronous result's type.
It holds QFutureWatcher object internally in order to
track task's running state.

Change-Id: I96f307cdf663cadc840465debb353ab55a2c3550
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 16:06:18 +00:00
Jarek Kobus
95609cdd57 Reuse TaskTree inside LinuxDeviceTester
Change-Id: Id0e8df92acf3602dd755f728c79505f266f90eb6
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 16:05:01 +00:00
Jarek Kobus
3a1f94ec28 Add adapters for FileTransfer and DeviceUsedPortsGatherer
Change-Id: I2ead2129625ae54919cf75e517e9b2180bb4bc47
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 16:03:32 +00:00
Jarek Kobus
5d4667e682 Introduce TaskProgress
It's responsible for showing progress of the running task tree.
It's able to cancel the running task tree automatically after
pressing a small 'x' indicator on progress panel.
In this case TaskTree::stop() method is being called.

Change-Id: Ia1b3d88de74571e3e56f431b1a31755492ad4aa2
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 15:52:10 +00:00
Jarek Kobus
4e4176a3d3 TaskTree: Add task tree adapter for task tree
Now it's possible to nest TaskTrees. A nested TaskTree
is seen as one, singular task inside parent tree.

Change-Id: Iad95de39c7b79580e0b589c222594de91d5b51a1
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 15:31:03 +00:00
Jarek Kobus
d21acbd413 LayoutBuilder: Add support for tab widget
Change-Id: Ia35fa234c8ac1befd7e8fd2be57998e94294a5a1
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 15:30:49 +00:00
Jarek Kobus
1f59f42287 Remove unused includes of QLayout
Change-Id: I12777e07f3d6fcc639b48f02080e73b1a0a3ea30
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 15:29:35 +00:00
Jarek Kobus
02f384115e Remove unused includes of QBoxLayout
Change-Id: I74204eaf70dbcb31a8bd13609bef35459c8c6b5f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 15:29:29 +00:00
Jarek Kobus
bf0d716b51 Remove unused includes of QGridLayout
Change-Id: Ia0823fe1dbadb7c68efc431c3bf0f1ba621a9484
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 15:29:15 +00:00
Jarek Kobus
3caf82f746 Remove unused includes of Q[H/V]BoxLayout
Change-Id: Ia90b30b634281414268e00722771470f1e7b69c0
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 15:29:06 +00:00
Christian Stenger
c18d8773db Debugger: Fix interrupting Qml
Fixes: QTCREATORBUG-28469
Change-Id: I421dd18e0aedbe6628d4817fddf271c1a2bfbeb0
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 15:01:04 +00:00
hjk
5688c84fcf Python: Initialize settings in the pimpl
Change-Id: I172136851c3002bf785d9b8f378c0cccc408e0e2
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-18 14:51:17 +00:00
Eike Ziller
5c37cfc54b FilePath: Avoid QStringView::first, which is only available in Qt 6
but FilePath is still used with sdktool = qt 5.15.2

Change-Id: Ibb196411fc37efc74db6df4ab024ac98db6cf4ea
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 14:51:09 +00:00
BogDan Vatra
661bec83d4 Prefer ARM/X86_64 for Android, prefer 64bit
Change-Id: I8729f6975fc9d99f3ef00a087d4f4eebd0f7e8e5
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2022-11-18 14:21:06 +00:00
Christian Stenger
966498f9a4 PerfProfiler: Be more verbose when running perf
If perf cannot be started for whatever reasons it is quite hard to
figure out its reason.
Add a note how perf is started and give some hint on the application
output pane as the message box points the user to it.

Task-number: QTCREATORBUG-28462
Change-Id: I4d386078f6e3719fefc9b3dc7d77fffbdb294030
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 14:20:01 +00:00
Ali Kianian
9880d9a33a QmlDesigner: Less delay in opening context menu of 3D editor
A comment line is prepended to the content of the clipboard data in
order to mark it as a 3D content. So, we might check if the content
of the clipboard is suitable for being pasted in the 3D editor or not.

Task-number: QDS-8347
Change-Id: Id4319c31ffeb3f43fd032500f92a7cb7c21910eb
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-18 12:55:35 +00:00
Eike Ziller
9a4a3f6bf9 German translation: C++ editor
Change-Id: I07df59d56ac2c4761c873992b67096997388ed34
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-18 12:31:38 +00:00
Eike Ziller
ce26985b6d German translation: Utils
Change-Id: I2cd3d0f8ee0c3ecab9301a2baa5086ef7f4c1172
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 12:31:33 +00:00
Thomas Hartmann
1f7383096c QmlDesigner: Add more output to debug view
Change-Id: I305778e71eda6675fc63daba58763dbc570ad722
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-11-18 10:28:02 +00:00
Christian Stenger
8d88932f41 PerfProfiler: Set working directory
Task-number: QTCREATORBUG-28462
Change-Id: Ie1f4cc505bb859abe40c6e95bb6733a54b8b610c
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 09:53:32 +00:00
Eike Ziller
c84d12227d FilePath: Fix pathView() and use at more places
pathView was constructing a QStringView on a temporary, which silently
does weird stuff.

After the change to a single-string representation, the QString
construction for path() is expansive for the comparison operators.

Change-Id: I543c7115d3ad52f971d1692230b6eab82645b810
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 09:35:18 +00:00
Jarek Kobus
db76087213 Git: GerritPushDialog: Use Layouting
Change-Id: I5b0a95680e683cf6e5b938b4a4a74bfc0c5b45e2
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2022-11-18 09:11:00 +00:00
Thomas Hartmann
e471417539 FilePath: optimize comparison
* The QTC_ASSERT in pathView() is quite expensive
* Constructing the scheme using scheme() is not required

Change-Id: Ibea33dd6abf67c8bd184d118f23e2598075c362c
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 08:41:30 +00:00
hjk
dc620e987d Python: Avoid flashing a separate widget when opening settings
Change-Id: Id0518c222ffa91bc8791cfa71edb9b715ce65cde
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-18 08:39:12 +00:00
hjk
6046fa8354 Utils: Fix FilePath::hash() regarding to case sensitivity
Change-Id: I2b7f7fa141ec80ec6f0256c4f384ed622b35ba15
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 08:39:03 +00:00
Jarek Kobus
47b5613c53 CppCodeStyleSettingsPage: Use Layouting
Change-Id: Ied8991d32d5799af944c94a65ff3e85f3f454b26
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-18 08:14:00 +00:00
Christian Kandeler
4db30d9b60 Update qbs submodule to HEAD of 1.24 branch
Change-Id: I595bcd4789dfcf21a87391e465d33faf00bdd808
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-18 07:48:23 +00:00
Jarek Kobus
1a70403f94 Remove unused includes of QFormLayout
Change-Id: Ia877cb57037342f2a7b332b29d9cb45e9b01c4bc
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-11-18 07:33:29 +00:00
hjk
a2f0922334 CppEditor: Inline cppquickfixsettingswidget.ui
Change-Id: I5110e71122cbcb349d46945da8e7d7fb3733b691
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-11-18 07:24:48 +00:00
The Qt Project
cd68ffeac9 Merge "Merge remote-tracking branch 'origin/9.0'" 2022-11-17 15:57:52 +00:00
Eike Ziller
81629e9228 Merge remote-tracking branch 'origin/9.0'
Change-Id: Id7665d5a269ef58cbbb2dbfc1e5b0d1820c4e13e
2022-11-17 16:11:52 +01:00
Jarek Kobus
0a2213d359 TaskTree: Add default c'tor and setupRoot() method
Make it possible to setup root later, after TaskTree
was already constructed.

Change-Id: I59e8e6a12102f9b8ed0f40357ab12e47d67572c2
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-17 15:08:11 +00:00
Jarek Kobus
7ab95906b9 TaskItem: Move enums outside of TaskItem
Change-Id: If8a2b285bf9d9bd5a5b7222c13772c1a873daf23
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-17 15:07:59 +00:00
Jarek Kobus
a4b7e10861 TaskTree: Implement simple progress reporting
The progressMaximum is the number of tasks in tree.
The progressValueChanged signal is emitted whenever task is done
(advance by one) or when some number of tasks were skipped or stopped
due to workflow policy or dynamic setup group handler.

Change-Id: I403059a6466ae0534ef647c3c1c61c0318f10325
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-11-17 15:07:47 +00:00
Jarek Kobus
e38db06203 TaskTree: Add taskCount() getter
Will be helpful when implementing progressMaximum.

Change-Id: I9204b53425054a01c96f3b926b595f7888f81e3a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-11-17 15:07:34 +00:00
Jarek Kobus
234b3d1e6f TaskTree: Add DynamicSetup handler for groups
DynamicSetup enables finishing group (with Done or Error)
immediately before the group was even started.
The handler is invoked dynamically, just before starting
the group. The handler may also allow for running only
selected children and omitting others, so it may serve as
dynamic condition or dynamic multiplexer. This can be achieved
by modifying QSet<int> childrenToRun field inside returned
GroupConfig and setting the policy to ContinueSelected.

Change-Id: I15bddbb866a89ae9f783c59cc4bca89dd6a81c75
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-11-17 15:07:22 +00:00
Jarek Kobus
9e8d208cad CMakeProcess: Do some cleanup
1. Get rid of unused started() signal.
2. Remove lastExitCode() getter.
3. Add int exitCode arg to finished() signal.
4. Make some string variables const.

Change-Id: I3e9774f64a8f34fd2be4436d766285cad1c539a3
Reviewed-by: hjk <hjk@qt.io>
2022-11-17 15:07:10 +00:00
Jarek Kobus
165d364a6d CMakeProcess: Simplify implementation by using ProcessProgress
Change-Id: I9e9665f7e57ebb7d3028396e792161aa2c3a648e
Reviewed-by: hjk <hjk@qt.io>
2022-11-17 15:06:44 +00:00
Christian Kandeler
953000b981 CPlusPlus: Add new usage tag "Template"
For use in follow-up patch.

Change-Id: I49c057280be9b09862a89fa385a7396f1b1093bb
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-17 15:02:09 +00:00
Tim Jenssen
409f7f226f deployqtHelper_mac.sh: make sdktool optional
Silents the warning about not existing sdktool
in QtDesignStudio build.

Change-Id: Ia8e3f341936f4b20d340f9c66a5da3d01f14bccf
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Burak Hancerli <burak.hancerli@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-17 14:21:53 +00:00
Marcus Tillmanns
d7869967ce ProjectExplorer: Remove duplicate devices
In rare cases it can happen that the installer creates a device that happens
to have the same rootPath as a user created device. We need to filter
these out since otherwise it can be random which of the two devices
is selected.

Change-Id: I8269795a2e4f439fb2f02d819272723a504c6703
Reviewed-by: hjk <hjk@qt.io>
2022-11-17 14:10:11 +00:00
hjk
e0b856f0b0 Debugger: Remove DebuggerCommand::arg(FilePath)
It's better when the user code has to be explicit in what
format and/or which parts of the FilePath is needed.

Change-Id: I9d70e073f853a1bbc47c8482ebe77d7c4612b4b7
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-11-17 14:03:57 +00:00
Thomas Hartmann
04864bd0d1 QmlDesigner: Show message when generating package
Task-number: QDS-6825
Change-Id: I4bc826789de51778f7e9ad1314f9b0e029c7949f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-17 13:51:08 +00:00
hjk
c5296c0bf6 Perforce: Inline submitpanel.ui
Some unusual stuff removed, some unusual stuff left in.

Change-Id: I53d9f4677540c2401d6ddfcd687b5f18c5f70667
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-17 13:41:27 +00:00
David Schulz
0e4b0a26d3 Editor: move ownership of assist interface to processor
This way the base class can manage the lifetime of the interface object
and it doesn't need to be done in each implementation of perform.

Change-Id: Ie1ce742e31b688a337533ee6c57d376146e25ace
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-17 13:23:55 +00:00
David Schulz
aa6633ca21 Utils: improve assert stack printing on windows
Ignore the two top level frames since those only contain the assert
infrastructure and indent the stack to make it better distinguishible
from the actual asserts.

Change-Id: I7aaa4996de5f96404bd3766310a3ae07616fb705
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-17 13:23:50 +00:00
Christian Kandeler
86770f28d0 ClangCodeModel: Keep a ref count for "extra files"
These are files that we temporarily report to the server as "open"
without actually having a document for them. Since this mechanism is
used in several places, we'd like to keep a consistent state even when
such actions overlap.

Change-Id: I0cfe3427740ec479926bc114848ad08f8866bdbb
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-17 13:15:03 +00:00
hjk
e202138fb0 Utils: Use QStringView in FilePath implementations when it makes sense
Change-Id: I7346d873008f8ff1ab88f298a8d90e41f8c6d0b9
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-11-17 13:12:30 +00:00