Commit Graph

62421 Commits

Author SHA1 Message Date
David Schulz
4d10a2df36 Editor: only start block selection if alt and shift is pressed
Since it is a selection the shift modifier should be part off the
shortcuts and the old block selection also required both modifiers.
Additionally this prevents creating a block selection by accident when
there are no items in the editor history since alt + arrow left is
mapped to go back in history by default.

Change-Id: I46b0753a737f1e1b3c980d2e959bcf7b4733d790
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-25 10:25:30 +00:00
Eike Ziller
9a3431ba88 Mimetypes v3: Never use installed mime data
It gets in the way, e.g. "No plugin can open project type "application/
x-kicad-project"" when trying to open .pro files. Mostly relevant on
Linux, where mime data is actually installed system-wide.

Re-implements 4f5f5d75b4

Change-Id: Ifd34214b99b77720cfc6d22e6702ca6e9ba513dc
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-25 10:10:37 +00:00
Eike Ziller
5f70f5e336 Mimetypes v3: Re-implement adding mime types from plugin data
We get mime data specifications in text from from the plugin meta data.
Add mime providers for these.
An obvious example is application/vnd.google.android.android_manifest.
Disable automatic, time-based update of mime providers, and instead
explicitly force reloading them.

Change-Id: I07e3399ca76b1913d79b92375f679ca729c594b7
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-25 10:09:25 +00:00
Eike Ziller
3922db8ca9 Mimetypes v3: Reimplement MimeType matchesName
This makes Qt Creator set the right default editor again.
Visible in the MIME Types setting, before this change everything is
opened in the text editor.

Change-Id: I88ffc2e41688c2395925821e1d5d8ffee0d127eb
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-25 10:08:06 +00:00
hjk
79726e52d6 SdkTool: Add --builddevice option
Useful in a docker context.

Change-Id: I297654a9d65da2ce7d89b4ed8322d2ea0c80b3a2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-02-25 09:32:35 +00:00
Christian Kandeler
1a99f41fe8 QbsProjectManager: Call qbs-config directly
It's slightly faster than going through the qbs executable first.

Fixes: QTCREATORBUG-27102
Change-Id: I13297e700fed43b20e1d1185dbdfc16152584d56
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-02-25 09:30:06 +00:00
Eike Ziller
179f393f88 Mimetypes v3: Re-add internal mime database
Qt Creator ships its own copy.
With this change, Options > Environment > MIME Types shows the basic
freedesktop types again.

Change-Id: I420d9d034e31622d5ec7f2492baef5c3f1d93df0
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-25 08:52:49 +00:00
Eike Ziller
53aa9daeba Mimetypes v3: Reimplement mime startup phase
Which is used for sanity checking that we don't do expensive things on
startup, e.g. by accessing mime types before registering the plugin
provided mimetypes.

Change-Id: Ib99a5ca3bdd489c86f48dc5fbc83273fc28cc0f9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-25 08:52:22 +00:00
hjk
b178e407a4 SdkTool: Make auto test easier maintainable
Adding new kit items so far required touching test code in several
places.

Also, use more but simpler individual tests to find failing tests
quicker.

Change-Id: I540b93c01a6bdbb85353928713995c262dfc919e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-25 08:41:05 +00:00
Thomas Hartmann
44aba26a47 StudioWelcom: Slight increase in margin in SplashScreen
Change-Id: I5ea3642134ea9ff76e9dc40cc0319933c26f9fc1
Reviewed-by: Brook Cronin <brook.cronin@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-25 08:34:47 +00:00
Eike Ziller
c906f57d14 StudioPlugin: Fix build
The header was moved. The old include managed to sneak back in
via f562ebf239 without creating
a merge conflict.

Change-Id: I29c1d42887db7947693ae2bf1f30ff3c982a9d3c
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-25 08:34:46 +00:00
Jarek Kobus
ed1301005a Introduce Utils::ProcessInfo
It will substitute ProjectExplorer::DeviceProcessItem.
Add ProcessInfo::processInfoList(), it's going to substitute
LocalProcessList::getLocalProcesses().

Change-Id: I8b51b2221630668c6245da82a58104e7e365dbb3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-02-25 07:51:33 +00:00
Eike Ziller
f562ebf239 Mimetypes: Make implementation switchable between new and old
- configure with QTC_USE_NEW_MIMEDATABASE to switch to the new one in
  utils/mimetypes2/
- added utils/mimeutils.h header for the Qt Creator specific static
  wrappers, that also includes the "public" headers for MimeType et al
  from the new or old implementation, depending on configuration
- change all utils/mimetypes/ includes to utils/mimeutils.h
- move the implementation for the wrappers to
  utils/mimetypes(2)/mimeutils.cpp
- also move the MimeDatabase declaration in the "old" implementation
  back to utils/mimetypes/mimedatabase.h

Change-Id: Ie8de229c035d6cd9a5e4739dc0fa78d9c17228e3
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-25 07:19:58 +00:00
David Schulz
967b1d237b ClangCodeModel: remove ClangdTextMark safety net
Since all text mark created by the diagnostic manager get deleted
properly on destruction now, there is no need to react on the client
destruction in ClangdTextMark.

Task-number: QTCREATORBUG-26585
Change-Id: Ifb9b8546c8f0d94debdcf2c8de6081e4e731cfab
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-02-25 05:34:30 +00:00
Tim Jenssen
b58c57fb3f crashpad: disable calling crashpad_handler on arm64
Currently, the none arm handler binary is hanging and
needs further investigation.
Maybe a complete universal build will fix this, and
we can enable it again.

Change-Id: I60b5623d8dda500a3be3efd095f91a9609600324
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-02-24 16:27:34 +00:00
Jarek Kobus
343a567e07 LocalProcessList: Use ranged-for loop
Change-Id: Iae104436f472fd11b2cc09cf074da828a20ab3cf
Reviewed-by: hjk <hjk@qt.io>
2022-02-24 15:57:36 +00:00
Christian Kandeler
86f1864d3c CppEditor: Catch another project pointer access from a thread
Amends 33108795d6.

Fixes: QTCREATORBUG-27044
Change-Id: I53d716355b0784841fd8d965c8af14fe321c33de
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-24 14:28:23 +00:00
hjk
1172eeb060 ProjectExplorer: Introduce device://<deviceid>/...
... to identify a device in a file path.

For use from the sdktool.

This is an addition to the pre-existing way to identify devices
using e.g. docker://<id> or ssh://<ip>/

Change-Id: Ice5481eab550b2fe39eda4c6d74d9c46fa6b6626
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-24 14:27:57 +00:00
Mahmoud Badri
c077f42e23 QmlDesigner: Fix imported meshes don't appear in a model's source
Fixes: QDS-6329
Change-Id: Iec70492d8dfce4f8a0ce05cbd16991f70b9eb985
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-24 13:02:21 +00:00
David Schulz
4452f71201 LanguageClient: avoid optional::value
Potentially throws std::bad_optional_access. Use operator* and
operator-> instead.

Change-Id: Idefa137da53f3663ea88961f1105b93402ec4777
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-24 12:04:38 +00:00
Eike Ziller
41538832c3 Merge remote-tracking branch 'origin/7.0'
Conflicts:
	src/libs/utils/qtcprocess.cpp
	src/plugins/qmldesigner/components/curveeditor/curveeditorview.cpp
	src/plugins/qmldesigner/components/itemlibrary/itemlibrarymodel.cpp

Change-Id: Id0c31719e46d1c44770ea89663eee321a0517ff4
2022-02-24 11:42:57 +01:00
David Schulz
0ce098ed87 WinRt: enable plugin on Windows 11
Change-Id: Ie935b1baaa4331499143de4eb3fb9bd57b38c347
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-24 10:00:35 +00:00
David Schulz
3cf6d15096 LanguageClient: track all created diagnostic marks
Removing a block results in taking marks of that line out of the
document, but does not delete those marks. So we cannot rely on
iterating over marks of a document to delete all marks for a specific
file. Instead save all marks from text mark creator for a file path and
iterate this list to delete diagnostic marks.

Fixes: QTCREATORBUG-26585
Change-Id: Idc41fce5de4ade68f4a29c23ba02844701b44d3c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-02-24 05:25:25 +00:00
Mahmoud Badri
787bbfaf1c QmlDesigner: Fix path when importing a 3D model inside a component
Fixes: QDS-6319
Change-Id: Ia9dbdf9a2d32eaf996cca2ba84e89ca8111dab1c
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-02-23 18:48:06 +00:00
Assam Boudjelthia
c1512dce87 Android: don't stop deployment if the kit's ABIs list is empty
If for some reason we cannot get the list of kit's ABIs or it's not set,
don't stop the deployment because of that, let it continue and fail
later.

Fixes: QTCREATORBUG-27103
Change-Id: I973e5ffdca1e8fb6af3f6e6438969b38b8e375c8
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-23 17:21:51 +00:00
Assam Boudjelthia
0586418f83 Android: Differentiate between same devices connected via usb and wifi
ADB allows connecting the same device via USB or WiFi, so we need
to make sure the name of the wifi which appears as a different device,
make sure it does mean something instead of "Name2" as proposed by
default by QC. So this adds the term wifi to the name to make it clear.

Change-Id: I5923ca2430c8b51ae2525744dcc1f803ab976b35
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-23 17:21:36 +00:00
Thomas Hartmann
ef6fbe373f QmlDesigner: Fix crash
For some files rootFormEditorItem() can be null.

Change-Id: I71672e4d43bfd086011f6a6cb3c93572f6ba0a05
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-02-23 17:01:47 +00:00
Thomas Hartmann
3a210bb811 QmlDesigner: Rename views for consistency
"CurveEditor" -> "Curve Editor"

Task-number: QDS-5852, QDS-6325
Change-Id: I709b54c338708f4387d0d1cb4b928d8eebbfb3be
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-02-23 16:57:27 +00:00
Christian Kandeler
cac1c3d501 Fix more warnings
Found by compiling with clang

Change-Id: Iec0ed8aa8b6a742a5a3996a6c19c410e209fb048
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-23 16:57:25 +00:00
Eike Ziller
fff5944e65 Fix lupdate issues
When updating translations with
cmake --build . --target ts_de
(or other language ID)

- Qualifying with unknown namespace/class ::PluginSpecPrivate
- <class> lacks Q_OBJECT macro

Change-Id: Ic42d8dffea935e6b10e59223bdedb9a8a4dcf446
Reviewed-by: hjk <hjk@qt.io>
2022-02-23 16:53:00 +00:00
Tapani Mattila
24274cd907 CMake project converter: Enable only if project is old format
Task-number: QDS-6250
Change-Id: I41ca02ff76e53cb7470056b2f956b05d2027e773
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-02-23 16:43:15 +00:00
Jarek Kobus
f1e973de79 RunControl: Drop IDevice * from doStart()
Use device set inside passed runnable instead.

Grep for all usages of RunControl::start().
If passed device wasn't nullptr, set this device
inside passed runnable. Otherwise ensure that
passed runnable contains device set to nullptr.

Change-Id: I06fd42a16246fa9fedd81eeb47481a217f887cb0
Reviewed-by: hjk <hjk@qt.io>
2022-02-23 16:28:01 +00:00
Thomas Hartmann
5c13dd1ac1 QmlDesigner: Optimize setResourcePath()
Only update the resource path if it is actually different.

Change-Id: Iaabe3129c9a094a6166a17cd9cba56c123221fba
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-02-23 15:33:51 +00:00
Jarek Kobus
3f259da6d5 ApplicationLauncher: Treat DesktopDevice as local
Treat DesktopDevice and all derived devices as local
in application launcher.

Change-Id: Ie1a025c03f1c96158c67e0c900f89e33ec7c4663
Reviewed-by: hjk <hjk@qt.io>
2022-02-23 15:26:56 +00:00
Christian Kandeler
52e26a360b Fix newly introduced warnings
Change-Id: I0b9cf3496d536e1173fbd6587e5b491305eb876c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-23 15:26:31 +00:00
Jarek Kobus
10abf43afa ApplicationLauncher: Remove start(IDevice *) overload
Take the device from runnable passed in setRunnable().
If the intention is to run locally, set the device
to nullptr inside runnable. Otherwise we don't run locally.

Follows 47957de2dc

Change-Id: I5b381bb499cf76e469c844ac7474ce2f60761cef
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-02-23 15:03:30 +00:00
Thomas Hartmann
59982f1ca9 QmlDesigner: Remove superfluous update
Change-Id: I3bc4fc4b480e9cb895357580968c6568e7150cbb
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-23 15:01:45 +00:00
Eike Ziller
8e0bc89e64 Mimetypes v3: Fix build with Qt 5
Change-Id: I871952c5c4ed97d04bd7acdb9f4af225f1550b69
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-23 13:47:14 +00:00
Eike Ziller
d8be61343a Mimetypes v3: Add dummies for API that was added for Qt Creator
Change-Id: I6216f3f109893bb40ffa06bc0de10965fa7904e2
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-23 13:47:07 +00:00
David Schulz
98a9dcfeea LanguageClient: show snippets only completion proposals again
This reverts commit 5f1e6b15bf.

We already prevent inserting snippets in some unwanted contexts in
ClangdCompletionAssistProvider::createProcessor.

Fixes: QTCREATORBUG-27051
Change-Id: I292d2816b366df6f0d0b070b7d732c199742fc7e
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-02-23 13:47:03 +00:00
Eike Ziller
f8d7542fe6 Mimetypes v3: Add static wrappers for MimeDatabase
Avoids "MimeDatabase db; db...." everywhere in user code.

Add overload for FilePath.

Change-Id: I68d07f20159d970cd5ee2eab995bab46ef0da669
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-23 13:46:54 +00:00
Eike Ziller
f112fd0572 Mimetypes v3: Rename classes
- fix includes
- use pragma once
- use namespace Utils
- rename QMime -> Mime
- fix exports
- don't use QFileSystemEntry
- don't use QT_REQUIRE_CONFIG
- disable QT_CONFIG(mimetype_database)

Change-Id: I3e27b7644a9db987ad213efada3b0d8c7199cfd9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-23 13:46:42 +00:00
Eike Ziller
88d892c13a Mimetypes v3: Rename files qmime... -> mime...
Change-Id: I0e36b52124295d07c3ca2d16aa4593dbde3a888d
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-23 13:46:37 +00:00
Eike Ziller
e2ccf20c66 Mimetypes v3: Copy version from Qt 6.3
State from qtbase/67b2eb8b302c19c9b3a80028e20141bde9aef01a
from 6.3 branch

Change-Id: If1be497af3907f31f1388e9db42150cf9ae60d66
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-23 13:46:23 +00:00
Maximilian Goldstein
05d34a7e1a tracing/MainView: Fix broken MouseArea signal handler
onCancelled tries to trigger the signal pressed() which is shadowed
by the property of the same name. Properly handled this by moving
the onPressed handler into its own function.

Change-Id: I8ed966e256acdd8dc76d9ee5b244682217323a0d
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2022-02-23 13:11:53 +00:00
Mahmoud Badri
ed21e25e14 CrashPad: Remove the 1 crash per hour limitation
Change-Id: Ie7634012f15059fd204cb03e37afd3d63d7bfb29
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-23 13:00:59 +00:00
David Schulz
22dda4f8a5 ProjectExplorer: only use local files for size comparison
Change-Id: Ifbf218d4e459462ec6a115e69a5f3688642fddda
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-02-23 12:15:29 +00:00
Christian Kandeler
cf90264971 ClangCodeModel: Fix more false output arguments with clangd
For some reason, we never checked the actual matching AST node for
const-ness.

Change-Id: Icb58ba169d82e1ec02c9ff8d17f0170f0a78f99d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-02-23 10:54:32 +00:00
Christian Kandeler
7b82b55b73 ClangCodeModel: Don't highlight streaming operator args as outputs
... with clangd.
As with operator++ etc, it's immediately obvious to a developer which
arguments are modified.

Change-Id: Ia2b15d5eef7848b7ed284f8d544f039fe2927292
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-02-23 10:53:52 +00:00
Mahmoud Badri
08d1f30d4a QmlDesigner: Clear assets search when adding assets
Fixes: QDS-6195
Change-Id: I80c078d3b182bfa76980191bd875d76cb5683854
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-02-23 10:32:12 +00:00