Commit Graph

74059 Commits

Author SHA1 Message Date
David Schulz
b97204ebb6 LanguageClient: select innermost outline widget item
Reuse the code that selects the innermost item in the outline combobox
also in the widget so the behavior is consistent.

Change-Id: I8a4758296d2d44294e2b1e11b6bb18acca2c7e32
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-23 06:21:02 +00:00
Assam Boudjelthia
c43ba1ae32 Monitor Android devices in non-polling method
Use ADB's track-devices command to watch for device
events which would replace the current polling method
with a timer. For AVDs, a QFileSystemWatcher is used
to watch for changes in the AVDs home folder which
would allow updating the AVDs only when a change is done
like edition, deletion, start, stop, even from outside
Qt Creator.

This method would also make device updates faster,
instead of unexpected waits due to timer use.

Task-number: QTCREATORBUG-23991
Change-Id: I08a92252c99c02bc111e597d671f2350817458c7
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-02-22 21:21:53 +00:00
Jarek Kobus
fd7bf831ba Introduce processImplHook
Call new hook from inside QtcProcess::start().
This hook calls new virtual method
IDevice::createProcessInterface().
That's all what should be needed from device
to setup properly device specific process.

Make QtcProcess::createProcessInterface() private now.

Change-Id: I2136698063bafc846ebc2d3db6cc11376902eff0
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-02-22 17:28:31 +00:00
Thomas Hartmann
d8b5d2b7a5 StudioWelcome: Download examples to home on macOS
Task-number: QDS-6305
Change-Id: I7e80ec6a8d5d79b75412fee975efaedd92e048d0
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-22 17:10:19 +00:00
Tapani Mattila
7dd05f8937 CMake project converter: Automatically open new project after creating it
Task-number: QDS-6249
Change-Id: I5ba1a396c7812a6aa736751fd0e7d7155d2de2d8
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-22 17:08:11 +00:00
Thomas Hartmann
12f690b8a9 QmlDesigner: Remove DesignerActionManagerView::instancePropertyChanged
This can be pontentially very expensive and the notifier should not be
required.

Change-Id: Idf1096fb69efb08196b192596353bf544783d23c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-22 17:03:44 +00:00
Thomas Hartmann
dfd9d4804e QmlDesigner: Track if QDS was opened from QtC
Task-number: QDS-6315
Change-Id: I4109e9c98ff5c27b4096b1af32ae945aec10c123
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2022-02-22 16:59:38 +00:00
Thomas Hartmann
c1c0dab2a9 Move dynamiclicensecheck.h to QmlDesigner
Change-Id: Ic49a18a6ed164d3878e69d157edd83773c93959c
Reviewed-by: hjk <hjk@qt.io>
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-02-22 16:50:03 +00:00
Henning Gruendl
872a93447b QmlDesigner: Update import version wizard qml.tpl
Change-Id: Ie1cdc6bd18cec1f6e0d1492033f43c23717d68a9
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-22 16:47:13 +00:00
Thomas Hartmann
d913f5d886 QmlDesigner: Add comment to .ui.qml files
Add comment to the beginning of .ui.qml files that explains that
.ui.qml files are declarative.

Task-number: QDS-5964
Change-Id: Ie49bae33fb18ee42d4ab20986b72c2deadd5b734
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2022-02-22 16:11:11 +00:00
Thomas Hartmann
456a949244 QmlDesigner: Add comment to all .ui.qml files in wizards
Add comment to the beginning of .ui.qml files that explains that
.ui.qml files are declarative.

Task-number: QDS-5964
Change-Id: I040443b42a0e2907452d5b6d9d056746d3b75ff3
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2022-02-22 16:09:30 +00:00
Thomas Hartmann
a998790c74 QmlDesigner: Center on item on initialize
Change-Id: Ib68c2b1a651497f9092d390b1a5b3a59c85d21ce
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2022-02-22 15:34:22 +00:00
Thomas Hartmann
78f77f4ef4 QmlDesigner: Do not mark document as dirty if zoom changes
Change-Id: I85824f695a77d107dfa1f6c8d7d3a8dbeb6bae43
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2022-02-22 15:34:11 +00:00
Thomas Hartmann
4cc94375d8 QmlDesigner: Rename custom className property to classNamePrivateInternal
This property is used for the class name, but "className" could be also
used by the actual application.

Task-number: QDS-6309
Change-Id: I752fafbcae434a8b2b96646e2473b6fedd93a160
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-02-22 15:26:19 +00:00
Henning Gruendl
e714b04242 QmlDesigner: Fix shift in component type TextField
Change-Id: I5dc4f7b0887405082456b511b57598e3e6e38ec0
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-22 14:08:19 +00:00
Christiaan Janssen
7d9bb3f7e8 McuSupport: refactor McuPackage
rename 'type' to 'toolChainType' in McuToolChainPackage
'addToPath' and 'relativePath' set in McuPackage constructor
put McuToolChainPackage methods together in same source file
'detectionPath' type changed from QString to FilePath
renamed boolean getters

Task-number: QTCREATORBUG-26897
Change-Id: If59c299901a169d08efa8f39614ef7c6d48d44ed
Reviewed-by: Piotr Mućko <piotr.mucko@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-22 13:48:54 +00:00
Andre Hartmann
d979bd8da9 DocumentContentCompletion: Work with non-ASCII words
Fixes: QTCREATORBUG-26165
Change-Id: I9a72d36cf64accc32f71dfd5627302960558c69c
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-02-22 13:17:19 +00:00
Christian Stenger
ec80ae2322 Tests: Fix dumper execution on macOS
macOS may print warnings on stderr when running qmake which
in turn stops the test before starting to build.

Change-Id: I01750e984916b3e16f5d5737e44cd5a2c6e0433b
Reviewed-by: hjk <hjk@qt.io>
2022-02-22 13:14:17 +00:00
David Schulz
d73fbbcb97 LanguageClient: send exit notification after failed shutdown
Despite receiving an error in the shutdown response continue to exit the
server. Otherwise we end up with an unusable client.

Change-Id: Iacff38699cb4e5bcc5610eba1654047bf7f8ce80
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-02-22 13:12:44 +00:00
Eike Ziller
8259df00d0 Merge remote-tracking branch 'origin/7.0'
Conflicts:
	src/plugins/mcusupport/mcupackage.cpp
	src/plugins/mcusupport/mcusupportoptions.cpp
	src/plugins/mcusupport/mcusupportoptions.h
	src/plugins/mcusupport/mcusupportoptionspage.cpp
	src/plugins/mcusupport/mcusupportplugin.cpp
	src/plugins/mcusupport/mcusupportsdk.cpp

Change-Id: Ib423e9f23877176f01b188104b0a179ed32c4770
2022-02-22 14:06:41 +01:00
Thomas Hartmann
7e3585a64e QmlDesigner: Introduce dependencies for imports
QtQuick3D is added as a prefix dependency.
This means that if any import, that starts with QtQuick3D
is added we add QtQuick3D first.

Task-number: QDS-6199
Change-Id: Ic105bf0fb53a7beaa80be69f99e6bc55edd140c1
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-02-22 13:01:05 +00:00
Henning Gruendl
08668e71da QmlDesigner: Disable fill type outside base state
Disable fill type ComboBox in ColorEditor when not in base state. Add
tool tip to make user aware.

Task-number: QDS-6184
Change-Id: Iee5644fff16fe93f2090e1cb117e96bb436fe1dd
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2022-02-22 12:22:13 +00:00
David Schulz
05e102fbac LanguageClient: forcefully delete client after timeout
If the client does not react within 20 seconds on the shutdown or exit
message delete the client.

Task-number: QTCREATORBUG-27064
Change-Id: I9680242e471989ea820c4e28d28c500c27a20bb7
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-02-22 12:17:08 +00:00
David Schulz
ad9365d8fd LanguageClient: Do not assert on opening the same document twice
Just silently ignore a second open. This is now consistent with
LanguageClientManager::openDocumentWithClient that also supports calling
it multiple times with the same document client combination.

Change-Id: I6e8eaf312805cd4e82070209b414d63433158360
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-22 11:31:23 +00:00
Mahmoud Badri
f7020a83c6 QmlDesigner: Fix project path inside imported subcomponent
When user goes inside a Qml that is part of an imported component, project
path is not accessible. This commit fixes it.

Fixes: QDS-6201
Change-Id: I4efff48399e487b586b10383f19c2d6877714dc9
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-22 10:48:09 +00:00
Thomas Hartmann
3f078ee89d QmlDesigner: Add preview of pure 3D component in form editor
If the root node is a 3D node we show a preview similar to
the state preview in the form editor. The size of the preview
is hard coded as (640, 480).

Change-Id: If7f96522b093c17422fa38102bffe11ede016063
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-02-22 10:43:49 +00:00
David Schulz
298765c262 ProjectExplorer: get clang cl version via windows api
If it fails fall back to executing clang-cl --version.

Change-Id: Ia344f6eceb1ad2117dc2f7dc7f91b79daa2235ce
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-22 08:48:44 +00:00
Andre Hartmann
a8e44df681 CppCheck: Add copy to clipboard action to tooltip
Fixes: QTCREATORBUG-27092
Change-Id: Ie5b504b0b23c54fd72d56df8ff72971864475ee8
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-02-22 08:32:18 +00:00
Christiaan Janssen
e4da779653 McuSupport: move auto-kit-creation option to McuSupportOptions
It was part of McuPackage, and only used by the SDK instance.

Task-number: QTCREATORBUG-27093
Change-Id: I9d9eaac621e9997129c227fae3ac88b502ba4340
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-02-22 07:15:33 +00:00
Christian Stenger
eccbc0fbcc Qbs: Factor out gtest dependency check
..to make it re-usable.

Change-Id: I7653ee7b3ced5fb9d2b7262aecdab12438628928
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-02-22 05:33:10 +00:00
David Schulz
e59b7612b1 LanguageClient: do not disconnect client from everything before deletion
Otherwise cleanup code connected to QObject::destoyed might not be
executed.

Change-Id: I12bf2b614cf0d216b2f2c0762cc153b4bb845e1f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-02-22 05:20:40 +00:00
Jarek Kobus
d502f78c4f TerminalImpl: Drop ProcessImpl and Terminal mode from c'tor
Change-Id: I0571eabb1a20389055a8e98dd942776b3d054981
Reviewed-by: hjk <hjk@qt.io>
2022-02-21 16:49:43 +00:00
Jarek Kobus
02d9a9b7b7 ProcessInterface: Fix parent-child relationship
Make ProcessInterface c'tor accept nullptr as parent.
Remove parent argument from subclasses of
ProcessInterface, as calling setProcessInterface()
sets the parent anyway. Fix parent-child relationship
in subclasses of ProcessInterface - pass *this as a parent.

Change-Id: I3c37c305a87bad0e6d11251ec3db538f3a5dd64b
Reviewed-by: hjk <hjk@qt.io>
2022-02-21 16:49:24 +00:00
Leena Miettinen
0c13c1c084 Doc: Describe formatting in CMake Build Settings
Italic text indicates that a value was inherited from
the kit configuration or initial configuration. Red text
indicates mismatches.

Change-Id: Ief30eef1d2667d0b4e570ea439ffb6af681db2b7
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2022-02-21 16:44:10 +00:00
Jarek Kobus
098e3794db Get rid of SshProcess (one process class less)
Introduce static SshRemoteProcess::setupSshEnvironment()
method instead.

Change-Id: I9a49bc68bd96ddf0f58234d28b92a721f7d4bb56
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-02-21 16:17:31 +00:00
Tim Jenssen
c3bd3d6a62 qds: make code reusable
Change-Id: Ic11917f8a442a1ed15482a1ea492a7cef9f2a7ff
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-21 16:01:01 +00:00
Jarek Kobus
6360cffc80 Fix passing environment to remote
After removing Runnable parameter from DeviceProcess::start()
(see 95c9579c58) we are now
setting the runnable's environment to the remote process
directly. This is now used in 2 places:

1. For forming the proper fullCommandLine(), so that
the passed environment is expanded to command line
arguments

2. For running the remote process itself.

Before the mentioned change these two environments were
separated (1st was taken from run environment aspect,
2nd was left with its default value - see SshProcess c'tor).
After the mentioned change 1 and 2 are equal (i.e. both are
env aspect). This affects running app in terminal,
as the aspect env is applied to the stub process, so it
can't start properly.

This change brings the separation back.

Amends 95c9579c58

Change-Id: I5efe82e19d3fb5608f97e56c2f4b7651643e156a
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-02-21 14:21:33 +00:00
Jarek Kobus
192bbb7618 ProcessInterface: Place the class in separate header file
Change-Id: I9f3924f7cf69af58f93fc19f0af25c6fa9cfb55e
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-02-21 14:18:40 +00:00
Thomas Hartmann
3be545123a QmlDesigner: Add QMLSCENE_CORE_PROFILE for Qt 5
Task-number: QDS-5522
Change-Id: Iff3591e05a172716f3f37963e0430875e3ad9e04
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-21 13:22:14 +00:00
hjk
3eac52dc7d Mercurial: Fix saving of settings
Fixes: QTCREATORBUG-27091
Change-Id: I59297993f19c60a9eaf67910638818ffd17b4ff8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-02-21 11:40:36 +00:00
Thomas Hartmann
6104806208 QmlDesigner: Add new workspaces
Task-number: QDS-6234
Change-Id: I839459c18fd0937615d97c7b74584e97300b430b
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2022-02-21 11:32:26 +00:00
Christian Stenger
38f5415d9a McuSupport: Do not use compiler specific syntax
Change-Id: Ib466c989318b5d303f89def56fcd3f1369407843
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-02-21 10:35:47 +00:00
Christian Stenger
8b994bd79b McuSupport: Fix test expectation
Change-Id: I4cd0fa4d326e7681f187980c11d37668ae46c798
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Piotr Mućko <piotr.mucko@qt.io>
2022-02-21 10:34:26 +00:00
hjk
de328378a8 ApplicationLauncher: Move started() connection to more common code
Even though so local specific code needs to stay.

Change-Id: I57b66e746861716bd95592c8aeb03d627d17fc92
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-02-21 09:57:49 +00:00
Christian Stenger
4318bfb9b6 QmlDesigner: Fix qbs build
Amends c82937a78c.

Change-Id: I7438fbc84351e9de61dc27dfb5ecb4226974d6ce
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-02-19 18:50:49 +00:00
Jarek Kobus
357c39f2d7 Base QtcProcess on ProcessInterface
Change-Id: I51bc6b7aea8e2d3aa0ef9fbba3b5fc796058c8cb
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2022-02-18 23:35:55 +00:00
Robert Löhning
00c7161e33 Squish: Run tst_save_before_build on CMake and qmake
Change-Id: I91501633e0fe7c863c43af4224474c09f57dbf8c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-02-18 22:01:14 +00:00
Thomas Hartmann
c82937a78c Convert old projects to project that supports the cmake generation workflow
Task-number: QDS-5992
Change-Id: I9dd4204d7422052c80c86665ded558d959bb020b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-02-18 21:10:21 +00:00
Alessandro Portale
a0d19e088e Wizards: Remove the .ui.qml wizard
Qt Creator does not offer editing .ui.qml documents, so it should not
produce them. For creating and editing .ui.qml, please use Qt Design
Studio.

Fixes: QTCREATORBUG-27085
Change-Id: I8bce9379a4bff8762a694067c25a0b266c41c417
Reviewed-by: Kimmo Leppälä <kimmo.leppala@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-02-18 15:55:22 +00:00
Thomas Hartmann
4cbe956722 QmlDesigner: Cache result of eventListEnabled
Calling EventList::hasEventListModel() takes time, since it includes
file access. Since eventListEnabled() is called on each selection change,
we cache the result. If the root node is the same, also the document is the
same and there is no reason to check again.
This way we check only once per document.

Change-Id: Id664811b1319a306c70283d2b37de258a129892f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Knud Dollereder <knud.dollereder@qt.io>
2022-02-18 15:06:44 +00:00