Previously isChildOf would only look at the path.
But if the two paths are from different devices
it would mistakenly return true if the paths were
similar.
Change-Id: Icdb1aebe61167183ec85fa56ae0708681a59a9f8
Reviewed-by: hjk <hjk@qt.io>
So far, this had been just a visual representation.
But, global script folders have quite some deeper meaning
than just some convenience inside the IDE.
So, if the user adds or removes global script folders
inform the server that this has been done.
As on it, fix model mapping.
Change-Id: I239de61c6b49006dd2f1e0275138aaa3022d1482
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
...when preparing the runner process. Gives more control on
how the arguments are used.
This allows to pass arguments as "raw" arguments to avoid
CommandLine internal quoting.
Change-Id: I1cdf8bafa53d8618db8ab4711b04404154d3b90e
Reviewed-by: David Schulz <david.schulz@qt.io>
The previous setup doesn't buy much in comparison to new + setDeployService()
combo. Making that explicit now opens the path to simplify the two-phase
creation (i.e. move setInternalInitializer to the service c'tor).
Change-Id: Ib66c7d02efcddd6909fe612a786034e2728cdedf
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
When linking we should now consider the new sdktool location within the
Qt installation first. The new location of QtCreator.ini will be <Qt>/
Tools/sdktool/QtProject/QtCreator.ini on macOS, and <Qt>/Tools/sdktool/
share/qtcreator/QtProject/QtCreator.ini on Windows/Linux.
When resolving an existing install settings path to the old location
within the Qt Creator installation (Qt Creator.app/Contents/Resources or
Tools/QtCreator/share/qtcreator), the QtCreator.ini at that location
will itself redirect to the new sdktool location. So, try to follow that
as well, to keep existing setups working.
Task-number: QTBUG-28101
Change-Id: Idbb09ad6961f6fd4a4112830959a615d8186a132
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
CMakePM was setting the default generator to Ninja if the ninja
executable was set in the build environment.
This had the side effect of having to instantiate the build environment
for Visual C++, which meant running vcvars.bat files. This operation can
be costly if clink is also installed in the system.
This way the users that have ninja installed via choco, or manually set
it path, will not be affected by this delay.
Note that this only fixes the issue for the first start of Qt Creator
with new settings.
Some number from my machine:
- with clink 21s
- without clink 10s
- with this patchset 4s
Task-number: QTCREATORBUG-27906
Change-Id: I74d19b08211d93b3962a8877b49a58089310fbd6
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Update shared folders if the path to Squish has changed.
Change-Id: Iea861d1f51dd4170bc4b481176fa1a8019c24d3d
Reviewed-by: David Schulz <david.schulz@qt.io>
Global scripts get registered to the server. If we have valid
squish settings we are able to automatically re-open them.
Change-Id: Iaeed2629dac30b786b6e8faf371bc6987a4a5681
Reviewed-by: David Schulz <david.schulz@qt.io>
We currently only transfer host->remote device (or back),
not host->host or remote->remote. Inform the user if we
hit an (currently) unsupported combination.
Change-Id: Icd33414d7d0bc2b5db284a62b5d757989f1596c6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
...when "querying" the server. There are other queries which
need to get handled properly.
Reduces maintenance as using a callback here allows to avoid
unnecessary connects and drops the need of the disconnects.
Change-Id: Ib1c2c2b5b20c84b7eee5503ad134f5ab0e18c5a6
Reviewed-by: David Schulz <david.schulz@qt.io>
Neither cmake nor qmake know the full iOS compiler command line, so we
have to construct the target triple for the code model ourselves.
Fixes: QTCREATORBUG-28278
Change-Id: I6cac06f340e9388de5c86509a8df4ac00eef87cd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
- private field 'm_postId' is not used
- private field 'm_hostChecked' is not used
- missing field 'AcrossEmptyLines' initializer
Change-Id: I1e31c79e078bcb68d053202ad322299b92c4fa38
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
The replacement for %1 is always empty and does not read nice.
Change-Id: I5d23aa3dfc2a8d7365e113328f13dfd8ce7a946b
Reviewed-by: Dawid Śliwa <dawid.sliwa@qt.io>
Reviewed-by: Sivert Krøvel <sivert.krovel@qt.io>
Reviewed-by: Yasser Grimes <yasser.grimes@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Installing Qt 6 via the distribution packages has a
misconfigured qtchooser. To allow us to find Qt6 on these systems,
we directly search for "qmake6" as well.
Change-Id: I43f190bd2c69a0ea818308ff47bb6d9f2968e12f
Reviewed-by: hjk <hjk@qt.io>
Creating nodes via 3D view context menu now adds required import if
it is missing.
Fixes: QDS-7950
Change-Id: Ibd4faff9d494a232e0fbf0fd5db3690449516bf6
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
FilePath::isSameFile() checks if two files are the same file.
It first checks if its on the same device. If it is, it will
try to read the fileId of the files and compare them.
Change-Id: I83668955cacd4e5ed03d43a3fee2be29e9d0a6f0
Reviewed-by: hjk <hjk@qt.io>
It turns out sending ctrl+c events to cdb results in inconsistent
behavior when trying to interrupt with the range from interrupting twice
to not at all. Use the previous method of using signal operation for
local debugging, and use the ctrl+c event only when cdb is attached to a
remote server.
Fixes: QTCREATORBUG-28279
Change-Id: Iccd2016685ba707b375aebfd88eccc253dde1d1d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
We are now able to interrupt via Ctrl+C so we do not necessarily need a
local inferior with a pid.
Change-Id: I31997c5d2885b748699756908ef46686798ccafa
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The file accessing functions form now a class hierarchy by themselves,
the devices return a suitable point.
The previous implementation was mildly confusing by the special handling
of the DesktopDevice, fallbacks and remote cases in the same function
leading to unnecessary boilerplate when adding new functions and
codepaths that sometimes passed the FilePath API twice.
Implemented are a "DesktopDeviceFileAccess" taking care of the
previous !needsDevice() branches and a "UnixDeviceFileAccess"
covering the current docker and RL uses.
As a side-effect this unifies to a large degree the current docker
and RL code paths with were occasionally deviating from each other
while they shouldn't.
Change-Id: I4ff59d4be2a07d13e2ca5e9ace26a84160a87c9d
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
When clicking an asset and then moving the mouse, drag is still
active. Happens on mac and linux only.
Change-Id: Ic61a9316013271e8e16a30629416787c863840a3
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
The results of a profile run are not displayed as clickable textmarks
anymore but moved to the annotation area. So do not block setting
breakpoints in those lines.
Fixes: QTCREATORBUG-28288
Change-Id: I517ce6f16dd9e03ff24b674e6b97aa4fcb5fe404
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Changes the MainWindow to use FileUtils::getFilePaths function
to access files on devices instead of QFileDialog.
Change-Id: I0981c960b643edd69510cfed1cce16346962d75a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>