Commit Graph

62421 Commits

Author SHA1 Message Date
hjk
ae42604904 Utils: Add CommandLine::prependArgs convenience functions
For clearer code on the user side.

Change-Id: I3adf2e96628f4e59293cd2f0966fb30989e0da9f
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-05-25 10:26:46 +00:00
Christian Stenger
743dd442d7 GitLab: Introduce minimal GitLab plugin
So far only adding global settings and project settings.
Global settings allow to specify configurations used later
inside the project settings or when accessing GitLab
server instances.
Project settings already can "link" to GitLab projects,
which will allow to fetch notifications for the project
later on.
Real functionality is added in the follow ups.

Change-Id: I8a0f978001c58c6dc9e07917c183891abec9a3d0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-05-25 09:54:09 +00:00
The Qt Project
6310b84594 Merge "Merge remote-tracking branch 'origin/7.0'" 2022-05-25 09:42:43 +00:00
Eike Ziller
82ee8baad8 Merge remote-tracking branch 'origin/7.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri

Change-Id: I254066f8be63cb5b15650ef2a470206db56de026
2022-05-25 11:42:13 +02:00
Tapani Mattila
f55fc5276b QmlProjectManager: Add theming support to QDS landing page
Task-number: QDS-6897
Change-Id: I2e1cea556d906d59664cb72612ea1d67ef495f4f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-25 09:18:09 +00:00
Christian Kandeler
5ae128f634 ClangCodeModel: Fix test crash
Amends 509600da99.

Change-Id: Ia07a65e509414b41f279f50c02893d1733fd1022
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-05-25 09:06:16 +00:00
Artem Sokolovskii
8b444f88eb ScXMLEditor: Remove foreach / Q_FOREACH usage
Task-number: QTCREATORBUG-27464
Change-Id: Ic439470b7c23022fee6acbf0cdaba7760309edb0
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-05-25 08:52:57 +00:00
Christian Kandeler
509600da99 Core: Auto-suspend documents more aggressively by default
This is basically just needed to keep clangd's memory consumption under
control, but as we don't expect it to cause any harm elsewhere, we do it
on this general level, rather than introducing an additional document
management layer.

Task-number: QTCREATORBUG-26673
Change-Id: Ib4e8d191022db269546f0a9822702a2a1cb97419
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-05-25 07:51:56 +00:00
Jarek Kobus
a043b1676f Icon: Aggregate QVector instead of deriving from it
In this way we hide the public interface of QVector for Icon.

Change-Id: I7722779b3b6781ff2cbcab0e2e9894dbd0435218
Reviewed-by: hjk <hjk@qt.io>
2022-05-25 07:49:50 +00:00
Jarek Kobus
ed40753ed1 Utils: Drop unused headers [I-Z]
Round 2 - focus on sources.
For classes with initial in range [I-Z].
Try to keep the same separators between different kind of headers.

Change-Id: I8a7ab99bab8120ee72cda6433ee3dc6f260a4d76
Reviewed-by: hjk <hjk@qt.io>
2022-05-25 07:49:25 +00:00
Jarek Kobus
4b9545fe7f Utils: Drop unused headers [A-H]
Round 2 - focus on sources.
For classes with initial in range [A-H].
Try to keep the same separators between different kind of headers.

Change-Id: I838a8324ddd5b4d8d5a51b8f30605f783c663813
Reviewed-by: hjk <hjk@qt.io>
2022-05-25 07:47:09 +00:00
Jarek Kobus
f3957d383f Utils: More forward declarations / drop unused headers [T-Z]
Round 1 - focus on headers.
For classes with initial in range [T-Z].

Replace QT_FORWARD_DECLARE_CLASS with QT_BEGIN_NAMESPACE and
QT_END_NAMESPACE and forward declare inside.

Change-Id: I4ac3a8391e6167aa2db3973a9f94a45ac3c8ebd1
Reviewed-by: hjk <hjk@qt.io>
2022-05-25 07:40:47 +00:00
Cristian Adam
d76eab7d2f ProjectExplorer: Do not hardcode X86 architecture for Windows
On Windows Arm64 the aarch64 architecture would be overridden
by X86 and all the kits would be marked as invalid, removing
the ability to create / configure projects.

Change-Id: I3940479792aa5440e9b0ee4a63e868c01738cd90
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-05-25 07:31:43 +00:00
Jarek Kobus
a67aee30a6 Utils: More forward declarations / drop unused headers [S]
Round 1 - focus on headers.
For classes with initial in range [S].
Try to keep the same separators between different kind of headers.

SmallString[xxx] classes skipped for now.

Change-Id: Ie5c8edcb028e33eb8f9619e646afc462b91dca73
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-05-25 07:19:00 +00:00
Jarek Kobus
304ab10642 Utils: More forward declarations / drop unused headers [P-R]
Round 1 - focus on headers.
For classes with initial in range [P-R].
Try to keep the same separators between different kind of headers.

Change-Id: I01fb80b93164a7fe4c0bd2cd8f9e4f27523efefa
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-25 07:18:44 +00:00
Jarek Kobus
9508ee1347 Utils: More forward declarations / drop unused headers [L-O]
Round 1 - focus on headers.
For classes with initial in range [L-O].
Try to keep the same separators between different kind of headers.

Drop changes to NameValueDictionary for now, as apparently
environmentfwd.h is broken currently. It looks we can't
forward declare the argument T inside QList<T> - the type
must be complete.

Change-Id: If26e88357a2ffbb91a79c4d003046443d98d5673
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-05-25 07:14:40 +00:00
Jarek Kobus
4ad8fb80c6 Utils: More forward declarations / drop unused headers [H-K]
Round 1 - focus on headers.
For classes with initial in range [H-K].
Try to keep the same separators between different kind of headers.

Change-Id: Iefb032953743be41a847ee011c30527edfa425d8
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-05-25 07:14:04 +00:00
Jarek Kobus
2853660a59 Utils: More forward declarations / drop unused headers [D-G]
Round 1 - focus on headers.
For classes with initial in range [D-G].
Try to keep the same separators between different kind of headers.

Change-Id: Id42cd7b3743a816f75cecb6b576c0e37cb057473
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-05-25 07:13:52 +00:00
Jarek Kobus
7dd51acdfa Utils: Get rid of UTILS_DELETE_MOVE_AND_COPY
Use Q_DISABLE_COPY_MOVE, it exactly the same.

Change-Id: I574d52a0abdf9101f86054f881f6ce0cd498bb36
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-05-25 07:13:43 +00:00
Tasuku Suzuki
8a6c033ede Imageviewer: add button to copy image as data url
Change-Id: Ia30751ebb9b567b22de9d1256bb59aa2116366ba
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-05-24 16:57:41 +00:00
David Schulz
f35cd3c13f Editor: skip unnecessary text mark priority reevaluation
Only remove and add the text mark to the text block user data if the
priority changed. In all other cases a layout update is sufficient.

Amends a8cad01887

Change-Id: I9f8552e766838917c0e296cc7f7c7730669c45cd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-05-24 16:39:22 +00:00
Jarek Kobus
123a6e61de TerminalImpl: Set a parent to all the children
ProcessInterface subclasses may be moved between threads,
that's why we need to make them children of ProcessInterface.

Change-Id: Ia58f1ea05f85e22315dc22dbafce06ee6bcf0be6
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-05-24 16:05:02 +00:00
Thomas Hartmann
07d9075d47 QmlDesigner: Add QtQuick 6.3 as supported version
Change-Id: Icbb1d2a3c7584cc24f0d8dde467d07678925711c
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-05-24 15:00:39 +00:00
Cristian Adam
ee98c98676 CMake: Remove libclang references
Now that libclang is no longer used, make sure that all references
to libclang are gone.

Change-Id: I4b66eff992b22adb6a9c25d34053f2b36079583c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-05-24 14:57:22 +00:00
Alessandro Portale
f54097fefb QtSupport: Remove screenshot cropper
Reduce maintenance by removing a feature that broke in 7.0, caused
assertions. The absence of the cropper won't most likely be noticed,
because the examples thumbnail size was increased quite a bit in the
last Welcome Screen redesign.

Instead of cropping, we now always scale the thumbnail to
ListModel::defaultImageSize. As a benefit of this simplification, the
thumbnail is now also High-DPI enabled.

Fixes: QTCREATORBUG-27141
Change-Id: I57cafb000c3095dd387cd96814b6e946980b2aed
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-05-24 13:54:46 +00:00
Eike Ziller
2577ce8ba1 CMake: Add 'Profile' configuration
Get rid of the hardcoded QML Debugging for Debug & RelWithDebInfo from
the project template, because RelWithDebInfo is actually a good
configuration for doing releases (we use it for Qt Creator), and
enabling QML debugging for releases is a bad idea.

Instead enable QML Debugging in Qt Creator for the Debug configuration,
and add a 'Profile' configuration that is 'RelWithDebInfo + QML
Debugging'.

When importing a build, we only set the "QML debugging" option of the
build configuration, if it is enabled in the imported build, even if it
uses CMAKE_BUILD_TYPE=Debug .

One drawback: When not importing a build, but just setting the build
directory of a "Profile" or "Debug" configuration to an existing build,
Qt Creator asks if it should apply "-DCMAKE_CXX_FLAGS=-DQT_QML_DEBUG".
The user can choose not to, but then is asked the next time again, and
it is not obvious that the "QML debugging" option is responsible for
this.

That is somewhat orthogonal to this change though: Even without this
change, if the user changes the QML debugging option from "Leave at
Default" to "Enable", the same happens, and it is also not clear to the
user how to get rid of it. The user might not even have realized that
they changed the option (e.g. on platforms where the mouse wheel cycles
combo box values).

I think the correct solution is to 1. make clearer where the CMake flags
came from in that dialog, 2. allow the user to cancel a build from that
dialog, 3. allow the user to discard these changes (by changing the
setting) from that dialog. But that is for another patch.

Amends 3300182d40
Amends 77fed0b0fd

Change-Id: I95de59473b67c5afd6a53ea7f49838dbaef770d4
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2022-05-24 13:34:29 +00:00
Mahmoud Badri
917ae81ce6 QmlDesigner: focus material browser upon open
When clicking the open material browser button in the material editor,
focus the material browser window if it is already open. Also do the
same when opening the material editor by double clicking a material
in the material browser.

Fixes: QDS-7006
Change-Id: If64d1ff6595dea5e33771485622322df708405d9
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-05-24 13:10:42 +00:00
Mahmoud Badri
71e553f497 QmlDesigner: Disable apply material to selected when no selection exist
When there is no valid model selected, disable the "apply to selected"
actions in the material editor and browser.

Change-Id: Id8e771c64e69c0ba2f42dff01d19ffbf4afafb77
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-05-24 13:01:20 +00:00
Jarek Kobus
f9433c79b7 QtcProcess: Use Utils::Guard instead of self made substitute
Change-Id: I36b6db25998b5c34c2c96cfb5dc8c60537dbb7b6
Reviewed-by: hjk <hjk@qt.io>
2022-05-24 11:46:38 +00:00
Christian Stenger
6fc98722e2 Valgrind: Fix callgrind function call calculation
Broke with 7450bcb2b9.

Change-Id: Ib5e2506bc69fa9bdbda7a95c064727069b430a06
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-05-24 11:28:22 +00:00
Dmitry Shachnev
4d9215e44d Correctly include KSyntaxHighlighting headers
In external KSyntaxHighlighting, these headers now have paths like
/usr/include/KF5/KSyntaxHighlighting/KSyntaxHighlighting/AbstractHighlighter,
where /usr/include/KF5/KSyntaxHighlighting is passed to compiler as include
path.

Old headers which had only one KSyntaxHighlighting fragment in path were
removed in v5.94.0:
https://invent.kde.org/frameworks/syntax-highlighting/-/merge_requests/305

Adjust our vendored version to make the code work with both external and
vendored versions.

Change-Id: Iadcc668c3c705c563ae359301d227ee19eadca0f
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-05-24 11:28:08 +00:00
Jarek Kobus
ef2ddeb00b Utils: More forward declarations / drop unused headers [A-C]
Round 1 - focus on headers.
For classes with initial in range [A-C].
Try to keep the same separators between different kind of headers.

Change-Id: Ieab893d644af035c42590401c90728719394221f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-24 10:32:53 +00:00
Artem Sokolovskii
7954c4cc69 ProjectExplorer: Add a common template for project settings
- Added base widget class for common options among project settings tabs
- Added usage new template class to all pages used in project settings

ToDo
- Make CodeStyle tab standardized

Change-Id: I8f70413b6ee764c5e43fbeae104b9389237c582f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-05-24 10:02:45 +00:00
Christian Stenger
80609733a5 QmlDesigner: Fix build with Qbs
Amends f09d4538e7.

Change-Id: I34579b59181c81150934b63dfe8a69e6488df816
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-05-24 08:15:22 +00:00
Artem Sokolovskii
a4d6956c73 QmlDesigner: Remove foreach / Q_FOREACH usage mostly in components
Task-number: QTCREATORBUG-27464
Change-Id: Id7c1ebdc83ef355fe7a978ce57757f63005de0ab
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-05-24 08:12:50 +00:00
Artem Sokolovskii
639802efec QmlDesigner: Remove foreach / Q_FOREACH usage in designercore part 2
Task-number: QTCREATORBUG-27464
Change-Id: I9cd42aca59406551611e55d47ed8366ee2d3d381
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-24 08:12:14 +00:00
Artem Sokolovskii
6b8277fcd2 ClangTools: Remove foreach / Q_FOREACH usage
Task-number: QTCREATORBUG-27464
Change-Id: I1c4711d87e5f95fc1653dd9aa6448b105d017435
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-24 08:02:52 +00:00
hjk
e155a49d90 ProjectExplorer: Change argument order in one message
Less weird, and the changed-to string already exists.

Change-Id: I84412dfe25efd9ba2d35d1e06fd1b21346421acb
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-05-24 07:11:40 +00:00
Cristian Adam
21ed15fcc9 Debugger: Add auto-detection for arm64 version of cdb.exe
This would allow native debugging on Windows Arm64.

Change-Id: I77dd479606335bab9f7c7ae27889f056d4ea57f4
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-05-24 07:10:32 +00:00
hjk
e8d62c1f2c ProjectExplorer: Replace ex-ApplicationLauncher signals
... by direct function calls. All local in runcontrol.cpp nowadays.

Change-Id: I40233ded4caad46ebac59d06030e41bd6ca1f211
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-24 07:05:02 +00:00
hjk
af1351d27b ProjectExplorer: Drop workaround for Qt 4.7.1 bug
This was introduced for QTBUG-17529.

Change-Id: I4cbf63b0118b5bfe063501a547687a2f0c8cc94b
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-24 06:04:01 +00:00
Christian Stenger
ce76fb11b3 RemoteLinux: Fix tests compile with Qt5.15
Amends 283cd4690f.

Change-Id: I17262b23fd3f94e25f9559154a09c09899e5c676
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-05-23 20:18:08 +00:00
Jarek Kobus
928c16950a ProjectExplorer: Remove unneeded includes
Change-Id: Idb81f2d1b3dc0ca7dc45d9f3e8e3f49878b50445
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-23 18:21:50 +00:00
Jarek Kobus
9db911ae12 Get rid of Ssh lib
Move the rest to ProjectExplorer plugin.

Change-Id: Id2f022359e7e01728779228ea1f7f0b05a81c8e4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-23 18:21:28 +00:00
Jarek Kobus
10ad238c16 Move the question mark icon into utils.qrc
Change-Id: I91eab75a89fdbf9852e92153d4edb42af8c42373
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-23 17:52:27 +00:00
Mahmoud Badri
f09d4538e7 QmlDesigner: Implement Material Editor
Task-number: QDS-6438
Task-number: QDS-6439
Change-Id: I04e899a68aea665f0df8b65e21523632174ec76b
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Samuel Ghinet <samuel.ghinet@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-05-23 16:44:02 +00:00
hjk
bf4b94e4b8 ProjectExplorer: Dissolve ApplicationLauncher
Make its members part of SimpleTargetRunnerPrivate.

Change-Id: Ib6f700f7b849db761a1bd0b5ea401bbe010c010f
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-23 14:53:31 +00:00
Jarek Kobus
b9e53428b5 Move SshKeyCreationDialog into RemoteLinux plugin
It's being used only there.

Change-Id: Ie2917f34268eba3ada4f152d3feeaa4130350236
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-05-23 13:36:45 +00:00
Christian Kandeler
760cf632af Move clang diagnostics config settings to clangd settings page
It was confusing to have both "Clang Code Model" and "clangd" project
settings pages, so we merge them.
Along the way, a lot of code dropped off.

Change-Id: I780850b716195c3729403ae59f0794c11b5c556d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-05-23 12:15:40 +00:00
The Qt Project
c117e3d3c9 Merge "Merge remote-tracking branch 'origin/7.0'" 2022-05-23 12:07:34 +00:00