Commit Graph

88653 Commits

Author SHA1 Message Date
Mats Honkamaa
902a1206dd Doc: Add note about Qt Quick Studio Modules
Task-number: QDS-9586
Change-Id: I0550a3ebcfc7bab6c00bc8ada3497c4d6f880030
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2023-09-11 11:45:37 +00:00
Marcus Tillmanns
116ad3ed4f ProjectExplorer: Remove IDevice::setDisplayName
also removes IDevice::setDefaultDisplayName

Change-Id: Ie8ac3d95ba1991a20720342de3bf6e97c6414ffa
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-09-11 11:25:34 +00:00
Thomas Hartmann
17da102695 QmlDesigner: Fix crash on exit
Change-Id: If02837c0af08b037a10e0f91172eafb757e0c81f
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-09-11 11:05:48 +00:00
Thomas Hartmann
a1f773bb66 QmlDesigner: Only show valid kits with valid Qt version
Task-number: QDS-10137
Change-Id: I582d714b2f4b670ca42b2d6e734489efe0efbf75
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-09-11 11:05:19 +00:00
Thomas Hartmann
54b0c2d435 QmlDesigner: Add another test to ConnectionEditor
This covers field expressions with more then two members.

Change-Id: Idccfac607f72ff9aa78ed3b8da560f7d7a8e694d
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Ali Kianian <ali.kianian@qt.io>
2023-09-11 11:04:28 +00:00
Henning Gruendl
28933f2d4d QmlDesigner: Expand and hide root item
Hide and expand root item in the tree model of the connections editor
search result.

Change-Id: If6591077fee59542153f2167dfd43c8132b66c95
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2023-09-11 10:46:03 +00:00
Henning Gruendl
41ee64b8a4 QmlDesigner: Remove debug UI in connections editor
Change-Id: Ifc3c0b3c1fa09eff0b0ea650540ceeb00091789d
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2023-09-11 10:45:52 +00:00
Henning Gruendl
171e11b4c7 QmlDesigner: Fix Expression Editor
* Fix cursor placement after submit
* Remove pill indicator for wrong ordering
* Fix PropertyTreeModel root child count and parent name

Change-Id: I169396cf3cc62890fafe0bfe75d736be3ca8d47f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-09-11 10:45:47 +00:00
Miikka Heikkinen
06878ee9cb QmlDesigner: Fix grid color not loading properly on model attach
Fixes: QDS-10594
Change-Id: I61fbce411776b14078078d6137c8963e22c0fc11
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-09-11 10:35:44 +00:00
David Schulz
96c21b0e36 CppEditor: optimize CppModelManager projectPartForFile
Calling FilePath::canonicalPath is expensive on Windows, so only call it
if we cannot find the filePath in the cache and save the result to the
cache again. This reduces the time to parse the auto test for the Qt
Creator repository from 10s to 2s here. It also improves the performance
of various quickfixes and follow symbol of the built-in code model by a
similar factor.

Change-Id: I7025828e1b91f492825b10753e3b97e1c917fbfd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-09-11 10:19:12 +00:00
Marcus Tillmanns
7f15f720ac ProjectExplorer: Directly use DeviceSettings
Change-Id: I2c7d0395bbc59238a23c30b1f233e7bf922e0be4
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-09-11 10:12:28 +00:00
Henning Gruendl
522a622e9a QmlDesigner: Fix QML window hide issue on macOS
Task-number: QDS-10585
Change-Id: Iabf834627701d84bd693db6d22c3699e1209fccf
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2023-09-11 10:02:59 +00:00
Knud Dollereder
2dda34f781 Extend bindingmodel and minor fixes
- Include singletons in the list of sources (former sourceModelNodes)
- Do not suggest sources on bindings that are initialized without a
  source node. Prevent constructs like
  "property string p: button.qsTr("STREXPR3")".
- Allow changing the name of the target property and update the
  delegate properly when doing so.
- Remove superfluous emitCurrentIndex emission from the
  dynamicpropertiesmodel.
- Add missing qml imports.

Note that it is still possible to create illegal constructs if the user
wants to.

Change-Id: I084978f2f8d451df076d1b556db15764e17e31fb
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2023-09-11 09:15:31 +00:00
Marco Bubke
1d884898be QmlDesigner: Fix build
Yes, it is possible to set a unsigend integer to -1. It is defined that
a unsigned integer is underflowing and then you get the largest integer.
With https://en.wikipedia.org/wiki/Two%27s_complement it exactly the
same bit pattern as a -1 signed integer too.

But many compiler like the mix of signed and unsigned because it can
lead to bugs. So just use the unsigned interId() data type and set the
special value to the maximal integer.

Change-Id: Ie2ee1b5e2b476ec12abb5a48eee3eae2ae8cd14b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2023-09-11 09:04:22 +00:00
hjk
50c9c9aa86 ProjectExplorer: Start merging "unix" toolchains
They are similar with quite a bit of overlap, with the odd "base"
GccToolChain and discovery scanning mostly by scanning the same
directories for each "sub type".

This here aims at one class (currently still the mis-named GccToolChain,
later to be re-named to UnixCToolChain or similar)

Change-Id: Ia721932d4125d3673250ae727731acc7acd48def
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-09-11 08:36:54 +00:00
Marcus Tillmanns
00b5856754 Terminal: Fix sendKey
Fixes: QTCREATORBUG-29593
Change-Id: I4db2dc88ce56ec3b5b0ad1acd02ed5c48da51a06
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2023-09-11 07:32:38 +00:00
Marcus Tillmanns
9b85b1087f ProjectExplorer: Add Aspect Settings to devices
Change-Id: I4a69945dbb862a2741998a3bbbb0512e5fb829c9
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-09-11 07:29:10 +00:00
Alessandro Portale
0e26d0676f Spinner: Remove superfluous ;
Change-Id: Ic1c16c1fad233bf32ec07ea3bfb9a65bf85cdd20
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-09-11 06:35:46 +00:00
David Schulz
2b72ba66ce LanguageClient: add workspace configuration project settings
Change-Id: I9876773550f3dc566dec05b78f818ca49c930da1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-09-11 06:29:06 +00:00
Thomas Hartmann
5f0556536e QmlDesigner: Cleanup PropertyTreeModel
* Some cleanup
* Add cache
* Strip full qualified name from PropertyNameRole
* Hide nodes without children if filtering

Change-Id: Ibd368174f5a56d6be33b6e55dc7a8099bbe2d119
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2023-09-08 14:20:27 +00:00
Thomas Hartmann
618797a80a QmlDesigner: Fix expression in empty property case
Change-Id: Ib0aa08891862218b6ec9d84ca6170d2bc644aded
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2023-09-08 14:20:04 +00:00
Henning Gruendl
5e8b5ec1f0 QmlDesigner: Integrate Expression Builder
Task-number: QDS-10587
Change-Id: Ifc13a8364fccb74cb60d683f0e6c322d80baab50
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2023-09-08 14:15:40 +00:00
Eike Ziller
2adebd0eb4 Core: Never call QMainWindow::menuBar()
It replaces the global menu bar on macOS (that is a QMenuBar(nullptr))
with a window specific menu bar, resulting in an empty menu bar for Qt
Creator.

Amends a6e779606d

Change-Id: Id6e2c0b9b2dfe4ade88af0f9a6d3b008fed790be
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-09-08 12:39:05 +00:00
Amr Essam
cbf4273bab QmlDesigner: Add custom uniforms handlers
Also minor updates and additions.

Task-number: QDS-10499
Change-Id: I0a1009e943cc0908f19872eb79ce5da80e736249
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2023-09-08 12:28:58 +00:00
Miikka Heikkinen
d6179c7cec QmlDesigner: Refactor 3D view toolbar popup positioning
The same positioning code had several copies. Consolidated those into
single function and adjusted the Y-coordinate a bit to make it visually
more pleasing (i.e. no more highlighted buttons peeking from under the
popup).

Change-Id: I7fb251f46ee3395b18577d782693e3873d07af6a
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-09-08 11:51:54 +00:00
Eike Ziller
6998bf6591 FileIconProvider: Avoid access to mime database when registering icons
We register icon overlays at startup, but we do not need to actually do
anything at that point in time. Accessing the MIME database triggers its
initialization, which takes unnecessary time.

Change-Id: I9b9698b43569a93cf775d3b4fc8310d7cc2a0550
Reviewed-by: hjk <hjk@qt.io>
2023-09-08 11:15:53 +00:00
Christian Kandeler
91b67da6da Update qbs submodule to HEAD of 2.1 branch
Change-Id: Ia27a1690a12a447871d639a739057557860b8b03
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-09-08 11:12:11 +00:00
Mahmoud Badri
af2738ec33 QmlDesigner: Add effect maker uniform's tooltip
Change-Id: I4787e1bcadb24d8ff34d26964bdc4f2e97704124
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2023-09-08 11:04:15 +00:00
Mahmoud Badri
7fbcf4a38e QmlDesigner: Add empty placeholder to effect maker's view
Fixes: QDS-10592
Change-Id: Icc6193b358b83fce2a229321e30880e35e074055
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-09-08 08:26:03 +00:00
Christian Stenger
322336a488 AutoTest: Speed up scanning for tests
Especially Qt and Quick tests scanning takes some time,
so do some additional pre-filtering of files before
parsing them to reduce the number of files to process.
Depending on the structure of the project this can
significantly reduce the scan time.

Task-number: QTCREATORBUG-29301
Change-Id: I629beedcc02502d98d84e29282e1cd7b265cfcf0
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-09-08 08:00:30 +00:00
Cristian Adam
a6e779606d Core: Add action to hide the menu bar
This will only affect the platforms that do not have a native menu bar
e.g. Windows and Linux excepting Unity.

Fixes: QTCREATORBUG-29498
Change-Id: I17a654cfa50342f3e506bf0a2b14225c4d3a6bee
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-09-08 07:59:50 +00:00
Christian Stenger
05b6678d56 Debugger: Fix gdb debugging without terminal
Amends 373886bc21.

Change-Id: I200391d702dc447508b52a9a3f210d08626b1bbf
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2023-09-08 07:46:38 +00:00
Christian Kandeler
3c3a9f6786 Improve sorting in Kit-related settings tabs
- Use a proper sort model in the Kits settings widgets, so kits will
  not just initially be sorted.
- Handle the top-level nodes in a special way, as not to rely on
  "Auto-detected" coming before "Manual" in all languages.

Change-Id: I1eb8e1bee6836b47164d76b49435f8ff5120bb14
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-09-08 07:32:55 +00:00
Miikka Heikkinen
8ce8bd4300 QmlDesigner: Disable "Use scene environment color" when not under View3D
For standalone 3D scenes that are not part of View3D, syncing to scene
environment doesn't make sense, so disable that option and force it
unchecked when activating a standalone 3D scene.

Fixes: QDS-10583
Change-Id: I8e5b205c35ec12bbf4340fda943345f5bd5396a6
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-09-08 07:32:20 +00:00
Eike Ziller
6defd083ef CtfVisualizer: Never crash with uncaught exception when loading JSON
If we retrieve a value of a type that doesn't match the actual type in
the JSON, the JSON library throws an exception.
We should have checks to avoid this, but as a global measure never let
exceptions through to Qt Creator.

Change-Id: Ibfe830d745a94810f874ccca82b83d57ea72f31e
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-09-08 07:01:07 +00:00
Marcus Tillmanns
7986776f58 Terminal: Fix incorrect signal connection
The "process" exiting does not necessarily correspond to the
stub exiting. As an example, on linux, gnome-terminal will immediately
spawn a new process for the new terminal window and exit itself.
The stub will then simply run in the detached terminal window.

Fixes: QTCREATORBUG-29488
Change-Id: Ifac0795495901b80638bd10d720b036c09f0146c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-09-08 06:58:08 +00:00
Ali Kianian
5b26423257 QmlDesigner: Add ListModel and ListElement node testers
- ListModel and ListElement testers are added to the NodeMetaInfo
- Adding unknown properties to the ListElement node will not create a
warning message

Change-Id: I208ab4f8030ec60a4ef275680adefa9902647ff0
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2023-09-07 17:25:01 +00:00
Mahmoud Badri
1e00fdf9f9 QmlDesigner: Hide effect maker prop. slider's handle label
Change-Id: Ica266d0a9009ee4b5ba3e1cb1e9292f3b1091df7
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Amr Elsayed <amr.elsayed@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2023-09-07 16:39:45 +00:00
Marco Bubke
4bafb087ab QmlDesigner: Optimized isBasedOn a little bit
The very common case that the typeId is equal to the base type id is now
handled outside of a database query.

Change-Id: I0b81bc66ee473302646af79efc11eab607dc30c0
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-09-07 14:57:24 +00:00
Marco Bubke
6d79f308c1 QmlDesigner: Add std::hash to NodeMetaInfo
Change-Id: Ib4c9bb3e275167e846629845d16773c03386b39b
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-09-07 14:57:07 +00:00
Marco Bubke
a4f8cf709e Utils: Add more conversion operators to SmallString
An explicit operator for QLatin1StringView. That is dangerous if the
string is not ASCII and one for QUtf8StringView.

Change-Id: I2d0a0ca3854b47595563a19263aacd7f8825d026
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-09-07 14:56:53 +00:00
Marco Bubke
1e35f3cf19 QmlDesigner: Modernize string usage
In many cases it is nicer to use a QStringView or QLatin1StringView.
""_L1 is a nice short cut for writing QLatin1StringView("") too.

Actual QStringLiteral is not really a literal but uses a char16_t[]
literal instead of a char[] to create a QString.

Change-Id: Ib86ab93771a950c655a06bdd6f858afd38cfcfae
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-09-07 14:56:21 +00:00
Mahmoud Badri
c5c1612c6b QmlDesigner: Implement disabling effect maker composition nodes
Disabling happens using a new button added to the section.
Also a small tweak to disable drag button when there is only one section
in a category.

Fixes: QDS-10575
Change-Id: I33884a5b333c54b2bae650943940d4858f489f7a
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Amr Elsayed <amr.elsayed@qt.io>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2023-09-07 14:53:06 +00:00
Miikka Heikkinen
1b0f25eee8 QmlDesigner: React to clearColor reset when syncing background color
3D view now changes the background color to black as expected if
clearColor of the associated SceneEnvironment is reset and color
syncing is enabled.

Fixes: QDS-10580
Change-Id: Ie3bfd96012fc76dc28b28d2ac9be65e6e9784ea1
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-09-07 13:45:42 +00:00
Aleksei German
d97bf7cc3b QmlDesigner: Add percentages to GradientModel
Task-number: QDS-9904
Change-Id: I98c9e67e46f282053755d143af19eb83f62a5c72
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2023-09-07 12:36:24 +00:00
Christian Kandeler
9b25ab5329 CppEditor: Fix removal of "foreign" clang include directories
The version number does not necessarily contain all version parts
anymore.
See also 628babb5cb.

Fixes: QTCREATORBUG-29571
Change-Id: I71fec628c54b430cf2fe0fe54f4f309a2f811043
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-09-07 12:27:28 +00:00
Alessandro Portale
82daa08a7e ScreenRecorder: Support recording on macOS
Change-Id: I1f5429939acf82235caf07af85ab3397aee5955d
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-09-07 12:22:47 +00:00
Artem Sokolovskii
f4e50126b1 Core: Add clearAboutInformation function
Change-Id: Ib6dcc3b963917c096756cbff09541f4e13c8184b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-09-07 12:12:26 +00:00
David Schulz
03e50d4d7a Python: fix unguarded optional access
Change-Id: I4131343aab2f193336e81f2e76cbb95ef3ff2805
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-09-07 12:06:17 +00:00
David Schulz
445501e29e LanguageServerProtocol: allow RegistrationOptions in definitionProvider
Change-Id: I9868a777fc7ef078ab87fea823d5e9557c87ca78
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-09-07 11:56:31 +00:00