Commit Graph

69993 Commits

Author SHA1 Message Date
hjk
90e9de5d5d Tests: Move auto/qtcprocess to auto/utils/qtcprocess
Change-Id: Ied95a0f0109ed96703b96c9e79d268d509eda211
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-05-31 13:17:03 +00:00
David Schulz
84ea908b2d Utils: move line column parsing again
This will allow us to just parse the postfix without fileName
extraction.

Change-Id: Ied6b80f25078473e2b91ced68913205a17f9068e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-05-31 11:29:22 +00:00
Miina Puuronen
6caa8cc289 QmlDesigner: Fix Component Library header
Hover was not working on LibraryHeader.qml. There seems to be some issues
between QQuickWidget and QML Item. Header width and height are now set with
m_headerWidget instead of root Item.

Fixes: QDS-4387
Change-Id: Ic587be319bb7aa6755fa26f6211ce11eb9795c67
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2021-05-31 10:25:55 +00:00
hjk
9ba5d9d8a8 Docker: Fix indentation
Change-Id: Ice8634c7de27a10dcb4ad7d25fdc3c5933146815
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-05-31 09:29:23 +00:00
Oliver Wolff
841b6a84cd MSVC: Add support for ARM64 toolchain
Qt nowadays supports ARM64 builds using MSVC. While running from Creator
is not possible, support of building projects can be done with this
patch.

Change-Id: I39eed497b222a05b01af7f251e933432afca0cef
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-05-31 08:38:38 +00:00
Cristian Adam
637a20c34c CMakePM: Have only one "Scan project tree" task
Check if asyncScanForFiles returns true, which means it added
a future, which then can be used for Core::ProgressManager::addTask

Task-number: QTCREATORBUG-24564
Change-Id: I347c027e676023a782e7d4822fe2d51385888a64
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-05-31 08:30:33 +00:00
Christian Stenger
2a375a4f60 AutoTest: Silence coverity warning
Change-Id: I8195e9d17a7dfa90724e062c0974e98b74ae2548
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-05-31 07:41:02 +00:00
Christian Stenger
73c2a98b39 Utils: Make Link a class
Change-Id: Ia2f1c9589f65064eca2416b093b3fecf568058d2
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-05-31 06:45:03 +00:00
Christian Stenger
626a79488f Utils: Fix build on Windows
Amends b9c7ca0096.

Change-Id: I1fb2f8a8857c716b4ce9842f102e86d2ddfd51d5
Reviewed-by: hjk <hjk@qt.io>
2021-05-31 04:34:40 +00:00
David Schulz
ee06b995cb Core: move the fileName line column parsing of openEditor
Move it from EditorManagerPrivate::openEditor to the
EditorManager::openEditor overlaod that take a QString so no line or
column number should be passed via FilePath now.

Change-Id: Ia98058195045cbe555fb6a15c1010057746051d8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-05-31 04:31:53 +00:00
Eike Ziller
07b0aa89f5 CMake build: Improve default qmake for dumper tests
We can do better than just "qmake" and instead take the path to
the qmake that the test was compiled with.
(Can still be overridden with environment variables.)

Change-Id: Icc045d4f96946aeb1f324e6f1334dc9747215f3f
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2021-05-28 16:17:59 +00:00
Thomas Hartmann
de2e106475 QmlDesigner: Properly convert <cpp> types
This is something that requires a close look when we update the
meta system.

Task-number: QDS-4407
Change-Id: Ibb2bc79142bd4ae166c47ac261a3fe2aa5464a57
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2021-05-28 15:39:22 +00:00
hjk
b9c7ca0096 Utils: Use Utils::Link instead of TaskView::Location
Same layout, effectively the same purpose

Change-Id: I742d85ed06c07009ebb9696734f00894275859a3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-05-28 15:18:57 +00:00
Eike Ziller
0f64c88510 CMake build: Fix running tst_sdktool from different directory
It would only run exactly from the Qt Creator build directory.

Change-Id: Ifd105bdaab7405f93b6fb6084a85014fc4023b2f
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-05-28 12:15:47 +00:00
Cristian Adam
ab55fb2446 CMakePM: Fix conan compiler path setup
The conan toolchain.file was not passed to the cmake process that
was setting up conan install, only inside for conan.

Task-number: QTCREATORBUG-21785
Change-Id: I5f315e7de823d4ef3237081da9b294b236fedebb
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-05-28 11:53:46 +00:00
Eike Ziller
b768ba2412 QmlDesigner: Fix build
Add missing include
Amends 4786b03594

Change-Id: I68b44b2817baf4f9518d8bcb10cade6cb99eafac
Reviewed-by: hjk <hjk@qt.io>
2021-05-28 11:35:37 +00:00
Alessandro Portale
8cb4ab733a Utils: Add auto test for SynchronousProcess::runBlocking
QTCREATORBUG-25667 appeared a few Months back in corellation to a
seemingly unrelated change, and I was much later scratching my head a
day or two.

Therefore, it should be fine to have a test for the usage of
SynchronousProcess::runBlocking with interactive cli processes. Those
cli processes might output lines without terminating \n or \r and thus
hang until timeout.

We are IMHO lacking process IO tests, anyways.

Task-number: QTCREATORBUG-25667
Change-Id: I3b7ea471b2ac9fa4554f0ce51752ce54c4a7d304
Reviewed-by: hjk <hjk@qt.io>
2021-05-28 10:55:57 +00:00
Alessandro Portale
642318c325 Utils: Add an auto test for QtcProcess::exitCode()
Exit code handling can break during refactorings. This addition to
tst_QtcProcess tests negative, zero and positive exit codes of sub
prcesses that are launched asynchronously and synchronously.

Change-Id: Icbcc036d3fda7fa681958b57fd0a6f67d3a90352
Reviewed-by: hjk <hjk@qt.io>
2021-05-28 10:55:48 +00:00
David Schulz
fcd93256c0 Snippets: Allow defining a final snippet tabstop
Change-Id: I8b9704f66c9f0ac33dfb9d8f5e970a85bbcf143e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-05-28 10:39:35 +00:00
hjk
2ccf5e2795 Core: Use FilePath in ExternalEditor interface
Change-Id: If3360eb7db9cec373551c2eb0fcffaf3bc5460e6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-05-28 09:13:23 +00:00
Christian Stenger
ce04dcdcf2 QmlDesigner: Fix Qbs and qmake build
Amends 4786b03594.

Change-Id: I0355d5858f744a2e91f9e6c2e298bf2a660e7559
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-05-28 09:00:32 +00:00
hjk
e5b3ebecea Docker: Add a DockerFile for a test image for manual testing
Change-Id: Ic030ff3a78f20009c0f031afd315caf26bc1b154
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-05-28 08:51:07 +00:00
Eike Ziller
57f889feb5 CMake build: Fix extend_qtc_test
extend_qtc_test should gracefully do nothing if the test was declared,
but disabled for any reason.

add_qtc_test failed to add the test to the list of declared tests, if
dependencies were missing, so extend_qtc_test was complaining that the
test didn't exist in that case.

add_qtc_test must always add the test to the list of declared tests, and
extend_qtc_test must only fail if the test was never declared, but do
nothing if the test target does not exist (because the test was disabled
for some reason).

Change-Id: I414a169e3e23c3c0e11c11e2ee86effa706b545c
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-05-28 08:34:21 +00:00
Christian Stenger
95ff7a6c80 LSP: Fix logic to avoid nullptr access
Change-Id: I5511d266b52b1bc1763bdf3cd430f49f30ae3f37
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-05-28 08:03:58 +00:00
Leena Miettinen
0ae67dc83f Doc: Add GIF images of custom controls generated by QDS wizards
Fix the location of the controls in Library.

Fixes: QDS-4379
Change-Id: I998950722d1068fd5eadc974664bf8f8d759f8f6
Reviewed-by: Johanna Vanhatapio <johanna.vanhatapio@qt.io>
2021-05-28 07:54:32 +00:00
Alessandro Portale
4398c3498d Autotest: Remove 1-pixel frame around the test result pane
Change-Id: I0826aa4ecc0c5ecc4c03fe895e3ad09456c5f423
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-05-28 07:14:07 +00:00
Cristian Adam
9237f66bc9 GitHub Actions: Fix Ubuntu Linux test runs
By using the "offscreen" platform plugin we can get away by not
having an X sesion for the default "xcb" plugin.

Change-Id: Ie274036f9f3efb2ec37a8dcbc0feb8a847788500
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-05-28 07:04:48 +00:00
hjk
decf59120b Core: Restrict ProcessReaper to QtcProcesses
Long term plan is to make that part of QtcProcess proper (removing
the QProcess base of QtcProcess, have a QtcProcess * in the private
data instead, and reap that e.g. on QtcProcess instance destruction.

Change-Id: Ic7e60fdd69f56e8e22bad3dfbc246e7de2fe9cd4
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-05-28 06:36:28 +00:00
David Schulz
447a719fe2 Debugger: more QString > FilePath replacements
Change-Id: I7242546574d7692f97419a9df876330c800719ab
Reviewed-by: hjk <hjk@qt.io>
2021-05-28 04:47:56 +00:00
Alessandro Portale
588af658ee CMake build system: Fix error message in extend_qtc_test
Print out "${target_name}"

Change-Id: I6978856bfe010cdfc934260db1a3490a1329eb6a
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-05-27 21:35:14 +00:00
hjk
015204a7c3 ProjectExplorer: Split Kit::*environment into build and run
They may differ in a containerized setup.

Change-Id: Ib7e60fdd69f56e8e22bad3dfbc246e7de2fe9cd4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-05-27 14:35:05 +00:00
Mahmoud Badri
4786b03594 Implement new Assets library
Build a new Qml based item library assets view.

Task-number: QDS-3590
Change-Id: Ib3a4bcac8f873469ec5f3429817c49f466ec1e2a
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>
2021-05-27 13:55:51 +00:00
Christian Stenger
5525f2b112 AutoTest: Use Utils::FilePath for files and directories
Still some missing bits as some QString members had different meanings
depending on their context.

Change-Id: Ib48eab54498974a26bbd5123cbffeefee5f7e79c
Reviewed-by: hjk <hjk@qt.io>
2021-05-27 12:24:05 +00:00
hjk
e8286088b1 Docker: Implement DockerDevice::systemEnvironment() function
For synchronous retrieval of the system environment of the device.

Change-Id: I057f9591866b72e37733d495a2a6b203fae91ac4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-05-27 11:28:36 +00:00
hjk
523ae2c868 Core: Use QtcProcess in SpotlightLocatorFilter
After that, all Core::Reaper::reap are operating on QtcProcess
instances. That would allow for moving this into QtcProcess and
making some more widespread uses easier.

Change-Id: I7a8f3a0b63997ae4c883b723197d9f480a9506f8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-05-27 11:28:15 +00:00
hjk
85613d662a QtSupport: De-noise BaseQtVersionPrivate::updateVersionInfo()
... by using a local lambda.

Change-Id: I28ab825d32a4a13f33f839f77591216902554435
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-05-27 11:26:50 +00:00
Thomas Hartmann
4a1e195978 QmlDesigner: Set size of root item when showing the widget
Change-Id: I6cdbed1015bdb32a8e91919563624a7a0a829a9a
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-05-27 11:24:37 +00:00
Thomas Hartmann
a045d3ecc6 QmlDesigner: Check if view is attached
Task-number: QDS-4382
Change-Id: Ic44d1fad30c5cec65be2cce611fbb37b62c69a6f
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
2021-05-27 11:16:37 +00:00
Thomas Hartmann
b32d03bf89 QmlDesigner: Fix crash
If the view is not attached we should not access a nullptr.

Task-number: QDS-4382
Change-Id: I885f2b1b810d4ffd7b87749ca50e06cbdac3a7e2
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
2021-05-27 11:16:31 +00:00
Thomas Hartmann
3cb9d8d56d QmlDesigner: Fix crash
If the view is not attached we should not access a nullptr.

Task-number: QDS-4382
Change-Id: I885f2b1b810d4ffd7b87749ca50e06cbdac3a7e2
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-05-27 11:16:12 +00:00
hjk
6de05306d6 Utils: Use a structure to specify several QtcProcess device hooks
... and add a QtcProcess::systemEnvironmentForBinary(filePath)
redirecting to IDevice::systemEnvironment() of the device implicitly
given by filePath. A device implied by e.g. a qmake binary or a compiler
binary is a common scenario.

Change-Id: Ieb2c724ae66f1a1752132e4e4648a604390ca369
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-05-27 09:33:18 +00:00
Miikka Heikkinen
125cdcc3a0 QmlDesigner: Block changing eulerRotation for 3D Node that has rotation
QtQuick3D doesn't support both rotation and eulerRotation set on same
node, so we delete existing quaternion rotation if user sets an euler
rotation to the node. If node has quaternion rotation animation,
we block any change to eulerRotation in the node.

3D editor also disables the rotation gizmo for blocked nodes.

Task-number: QDS-4335
Change-Id: I4ce7b022c732a9547751f101548ecea948279db8
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-05-27 08:43:50 +00:00
Eike Ziller
a3c51cdd4a COIN: Build with LLVM 12
Change-Id: I6f6b3ba4d5c8c6f521792a95cc81886d61664f24
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-05-27 08:40:21 +00:00
Eike Ziller
6161a9e43b ICore: Don't "clean" the relative path given to (user)resourcePath
It leads to unexpected results especially because any slash at the end
is removed, and also behaves differently to the other path methods in
ICore.

Amends 8e352af0ec

Change-Id: Iae3417d5a5e57bcef7ce4cdb368567ccd8fdc4c4
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2021-05-27 08:40:03 +00:00
David Schulz
a84ca65995 Core: Fix filesystemfilter expression
Amends fc53dc27e4

Change-Id: If7eac3f544ec7145889bb38b85f3d25730eca9ff
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-05-27 08:11:29 +00:00
Christiaan Janssen
4616c134aa McuSupport: default path for STM32CubeProgrammer for non-Windows
Task-number: QTCREATORBUG-25788
Change-Id: If29351eaee6f14315df2a2471d2de4c254ef1c8a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-05-27 08:00:56 +00:00
Jarek Kobus
03b7324325 CppProjectUpdater: Wait for all tasks to be finished in d'tor
It may happen that the old task was canceled and still running
while the new task was started. Later, when the d'tor is called
both old and new tasks may still be running. Before we waited only
for the new task to be finished in d'tor. Now we are waiting
for all tasks to be finished.

Amends: 7fb592fe0c

Task-number: QTCREATORBUG-25709
Change-Id: Id4b44cd36ee03aa45472b15d8fbb25a2cab77e92
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-05-27 07:56:35 +00:00
Jarek Kobus
ff0ff1a3b5 Don't derive ProFileReader from QObject
There are no real reasons for doing this. In addition,
QmakeBuildSystem::destroyProFileReader() destroys it in
different thread that it was created in - for QObject
it could be a potential issue.

Change-Id: Ib958ea0f4ef3a9aeee92045eb430183207afe6c9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-05-27 07:56:14 +00:00
hjk
128359af41 QtSupport: Collect environment changes instead of full environments
Starting creating custom qmakeRunEnvironment() with systemEnvironment
in derived classes without further context breaks down in cases of e.g.
containerized builds.

So instead create the base environment outside where the context is
clear (still wrong after this patch) and let the derived class only
apply the changes they need to an otherwise unspecified environment.

Change-Id: Ibb23844f490ce86d8a89f6ce728faff65865c09b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-05-27 06:17:29 +00:00
Marco Bubke
588ce3a390 Sqlite: Increase default maximum cache size
The default maximum size is 2MB which is quite small for bigger
transactions. Increasing it to 100MB will give sqlite enough memory
so it doesn't need to swap that often. This is not important for
reading because we use mmap.

Change-Id: I9a07bbd8f1ce594e66b46936480d69b0fb8c3d84
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-05-26 14:31:20 +00:00