Commit Graph

76686 Commits

Author SHA1 Message Date
Thomas Hartmann
608fa309a7 QmlDesigner: Add RegExp for dynamic properties
Task-number: QDS-7701
Change-Id: I9ef218c1b72789c527af5eabe923cf664b951ab2
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-09-19 09:02:53 +00:00
The Qt Project
f2c57db69f Merge "Merge remote-tracking branch 'origin/8.0'" 2022-09-19 08:56:50 +00:00
hjk
85c899de63 Utils: Make root recognition in FilePath::fromString host agnostic
Fixes a few XFAILS and a QSKIP

Change-Id: I012d873097dfa0ea565adc4e9a2b34f6c21db9dc
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-09-19 08:51:20 +00:00
hjk
b133197258 Docker/Android: Add Dockerfile for manual test
Done-by: Alessandro, Cristian, Marcus
Change-Id: I3806bb7386f5e7db28489f9f7e685648bfc20110
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-09-19 08:33:19 +00:00
Eike Ziller
5d55cfdae5 Merge remote-tracking branch 'origin/8.0'
Conflicts:
	share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml
	share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/StudioTheme/icons.ttf
	src/libs/utils/fileutils.cpp
	src/plugins/qmldesigner/components/edit3d/edit3dwidget.cpp
	src/plugins/qmldesigner/designercore/include/abstractview.h
	src/plugins/qmldesigner/designercore/include/nodemetainfo.h
	src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
	src/plugins/qmldesigner/designercore/model/model_p.h
	src/plugins/remotelinux/linuxdevice.cpp
	tests/auto/utils/fileutils/tst_fileutils.cpp

Change-Id: I26a21e2523d3d725fdb8c548a531cdbdaeaeca20
2022-09-19 09:54:06 +02:00
hjk
2f2e266fdf Utils: Make FilePath::toString() output OS-independent again
Change-Id: Ica7c09ea39a38e3425b28c63b6001ad7ad641a4f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-09-19 07:44:26 +00:00
Leena Miettinen
a7c0bffc5c Doc: Use "Coco" as product name and link to Coco Manual at doc.qt.io
Instead of "Squish Coco" and linking to the manual at doc.froglogig.com.

Change-Id: Ibac31680b38aec093f40f06ed22cd5f518839cd7
Reviewed-by: Harri Porten <harri.porten@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-09-19 06:51:06 +00:00
Jarek Kobus
2429232e72 VcsBaseDiffEditorController: Fix git show
Though it was looking weird, it's still needed.

Amends 73e48ef275

Change-Id: Idedc254a9dad125239becfe4f2edb9fe93298bfc
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2022-09-17 21:37:34 +00:00
Alexander Akulich
17f1c8d928 ClangdSettingsWidget: Use CheckBox with text instead of CheckBox+Label
This fixes vertical alignment.

Change-Id: I01b70daffba0550ec6955bd0523930edc5acc8e9
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-09-16 16:09:02 +00:00
Thomas Hartmann
39f44cf57c QmlDesigner: Fix expressions in DynamicPropertyRow and states
* States are now taken into account.
* If name is empty in expressionChanged(), then this
  is just a notifier for the QML frontend and has to be ignored.
* When exposing the expression to QML we also have to take into
  account states.
* Implementing resetting dynamic properties. We have to hardcode
  the default values for the base state
* I also implemented the callbacks in the views for PropertyChanges.

Change-Id: I08247a3c1783a52853db7bf0f7f249520f7edc1c
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-09-16 15:04:29 +00:00
Aleksei German
26e5b3787c QmlDesigner: Add MouseArea Shortcut
Task-number: QDS-7675
Change-Id: Ibc0bdeecbd83a063d99973fd6bc945907f4a124a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-09-16 14:27:30 +00:00
Miikka Heikkinen
523d632874 QmlDesigner: Fix UrlChooser preview image
The path used to resolve image was not updated in case selection
changed between two model nodes of the same type.

Fixes: QDS-7694
Change-Id: Ibbb11be02140eb9aa67a734894041f9167d13fe4
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2022-09-16 13:51:09 +00:00
Henning Gruendl
4499b562bf QmlDesigner: Fix unpin icon
Change-Id: Ieea50de6bc6b053d9cd66929812ceeaab5b423de
Reviewed-by: Brook Cronin <brook.cronin@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-09-16 13:43:04 +00:00
Jarek Kobus
73e48ef275 VcsBaseDiffEditorController: Get rid of VcsCommandResultProxy
The workaround with VcsCommandResultProxy, introduced in
0b1eaacabb isn't needed anymore
since finished() and stdOutText() signals are now emitted
synchronously from the caller's thread.

Give a context object to watcher's finished handler.

Change-Id: I6608b7c2806fc0c18649ff40f91684e9eaa7b15d
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2022-09-16 11:40:12 +00:00
Alessandro Portale
60098e5fea ProjectExplorer: Remove extra margins around CustomParser widget
Change-Id: I840211296c45391bc96474220663f6a56df22fe8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-09-16 08:40:02 +00:00
hjk
31556332f5 Utils: Make FilePath::toFSPathString a full copy of toString
Changing the toString() to prepend system-specific prefixes
to cater for the remote filesystem model handling had unintended
sideeffects.

This here is the first step to split both paths.

Change-Id: I66cdd9a87802408e2ba95c2e29b9d7cce7fe2553
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-09-16 08:24:20 +00:00
Robert Löhning
a35ebe2753 Squish: Update and improve isMsvcConfig()
Change-Id: Icff3a8178e89623097e2da7ff8f1e72197f1a4dc
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-09-16 08:09:53 +00:00
Christian Kandeler
f99e17efa4 CppEditor: Implement "Follow Symbol" for qrc paths in string literals
The "symbol" in this case is the file that the qrc path points to.

Task-number: QTCREATORBUG-28087
Change-Id: I0d3ff96513d51e9dde4fb378695787b839c26100
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-09-16 07:47:17 +00:00
Christian Kandeler
6abebbbe35 CppEditor: Remove extra CPlusPlus::Class member
Amends 0fab5956ea.
We want to avoid carrying these eight bytes ber Class instance around.
Instead, we now just replace the (anonymous) struct name with the
typedef'ed one.
Note that in C (but not C++), this is possible:
    struct S {};
    typedef struct {} S;
    struct S s1;
    S s2;
However, our code model has never respected the extra struct namespace,
so it can already not distinguish between occurrences of "S" and "struct
S".

Change-Id: I55feafea7d3a4a5848e10f7011f633a2ce0f626e
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-09-16 07:31:22 +00:00
Alessandro Portale
cc7d757a3a ClangFormat: Remove extra margins around ConfigWidget
Change-Id: I542ce841bf1144d4063190d1ec83fef7c1295248
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-09-16 07:28:31 +00:00
Alessandro Portale
5254261922 Utils: Remove extra upper Margin in "unexpanded" DetailsWidgets
This removes the empty space on top in the RunConfiguration settings and
QtVersion/qmake details.

Change-Id: Ibc72d3a703dd1f32aa2cfa25b33feb651aaa5098
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-09-16 07:28:26 +00:00
Jarek Kobus
7274cad083 VcsCommand: Always install std callbacks
Do it also in fully synchronous case, as QtcProcess
is able to handle them even when EventLoopMode is off.

Change-Id: Ic24ff34e3d8808d2aaaf0300ba4ac95662e46d23
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-09-16 07:20:21 +00:00
Marcus Tillmanns
ccf84a70af Deviceshell: Add missing #pragma once
Change-Id: Icce5152f7db505e1f0a368300b05e417e7575185
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-09-16 07:12:07 +00:00
Mats Honkamaa
710be65822 Doc: Update material editor and browser docs
Added info about dragging and dropping materials to objects and
copying and pasting material properties.

Task-number: QDS-7408
Change-Id: I5d051a7df2a1b021db07ca36bf4d6f356e7ea6a2
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-09-16 06:33:13 +00:00
Alessandro Portale
528c44ba8a CMakeProjectManager: Remove margins around CMakeBuildStep widget
Change-Id: I9b2a1a615f987c3dff9b5fcb29b0a10c5417f752
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-09-16 05:57:37 +00:00
Christian Stenger
1e3e41da52 CppEditor: Fix test expectations
Amends ec1905c6fa.

Change-Id: I6fc886ed87ddad46396fd728ca09f430cc3a4d65
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-09-16 04:30:10 +00:00
Jarek Kobus
2b3c05ba90 VcsCommand: Handle SilentOutput
Handle SilentOutput flag into accound when runSynchronous()
to make it consistent with fully synchronous case.

Change-Id: I955714872601f8fb7ffff8d570eec5ff610d9cfe
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2022-09-15 15:26:00 +00:00
Jarek Kobus
683d2fec2d VcsCommand: Fix reporting error channel
Make error reporting consistent with runSynchronous() case,
where error channel is reported via appendError().

Amends 2c5095c94d

Change-Id: I0d962d42eb696e91f05ebb4f1f92677607b24a27
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2022-09-15 15:25:54 +00:00
Christian Kandeler
0fab5956ea CppEditor: Store typedefed name for anonymous structs
... and use it as the struct display name in some places.

Fixes: QTCREATORBUG-26611
Change-Id: I1b127f5705307a0fabd2441ff871162c882927a5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-09-15 15:08:20 +00:00
hjk
2369dcc324 Utils: More cross-platform fileutils/root() tests
Don't hardcode a single type of OS (Windows/Non-Windows) via
QDir::rootPath(), actually check both, independent of the host OS.

Most of the new tests are actually failing, as the parsing code uses
the host OS. Mark those tests as "Expexted fail" for now.

Change-Id: Ic907582ad3959ef95b9618826d987d4eab463b49
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-09-15 14:09:06 +00:00
Christian Stenger
57c5dfa840 QmlDesigner: Fix qbs build
Change-Id: I9a84c9c3babe606f5ac1b0bf19cc05084822ad35
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-09-15 14:01:06 +00:00
Cristian Adam
1323ad395a README: Add notes regarding correct Qt CMAKE_PREFIX_PATH
Users pass the value for Qt in `CMAKE_PREFIX_PATH` too deep like:
c:/Qt/6.2.4/msvc2019_64/lib/cmake/Qt6  and CMake can't find
all the components and weird errors are generated.

Task-number: QTCREATORBUG-28178
Change-Id: Icef7aef9e0933bd326ebd904623aac80c9f8e8c8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2022-09-15 13:21:49 +00:00
Thomas Hartmann
620712ed66 QmlDesigner: Take StageGroup into account in allDefinedStates
Since we add support StateGroups we also have to take them here.

Change-Id: I54a897e6edc4677e90ea64dd5c7334fc76a8f36f
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-09-15 12:53:57 +00:00
Christian Kandeler
ec1905c6fa CppEditor: Use "-I<dir>" format rather than "-I <dir>"
... when constructing the compiler command line.
This works around a command line parsing bug in clangd 15.0.0
(https://github.com/clangd/clangd/issues/1292).

Change-Id: I7c2e7f443bfededf12db985ff5142f39035d9db6
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-09-15 12:36:54 +00:00
Eike Ziller
e57b797342 ImageViewer: Add button for saving current view settings as default
Fixes: QTCREATORBUG-27816
Change-Id: I85806634ea9f10761d281ab8c8cf892dd1b65145
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-09-15 11:28:41 +00:00
Eike Ziller
e7ddd8a5b7 FilePath: Return optional bytearray from device hooks
For differentiating between "error" and "empty file".

Change-Id: I1806bb7386f5e7db28489f9f7e685648bfc20110
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-09-15 11:28:18 +00:00
Christian Stenger
f5c22a42ae QmlDesigner: Fix compile
Amends 8aee8df4df.

Change-Id: I23b68a200f5464d39f4f5a0892617a741336301e
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-09-15 11:13:38 +00:00
Thomas Hartmann
4bf105b662 QmlDesigner: Ignore "when" property for all states
We actually did set the "when" property for StateGroups.

Change-Id: I45a1663d60f8f443b4deafa529d1fd2788a8459e
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-09-15 10:51:05 +00:00
Thomas Hartmann
3ce5af7a79 QmlDesigner: Remove dangling PropertyChanges and KeyFrameGroups
This removes dangling PropertyChanges and KeyFrameGroups when removing
a dynamic property.

Change-Id: I333b6a61bec34a0bcde1d19372166b3cfaea195b
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-09-15 10:38:40 +00:00
Thomas Hartmann
696b02ee28 QmlDesigner: Add convertToLiteral to BindingProperty
This helper function returns a valid QVariant if
the expression is actually a literal.

Change-Id: I756b22d66ad86294c475e92c129f9008315dfbc6
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-09-15 10:38:21 +00:00
Thomas Hartmann
26a2afea01 QmlDesigner: Sort dynamic properties by name
Change-Id: I303904872982c0464f1853320f6b47f68c9181de
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-09-15 09:42:51 +00:00
Thomas Hartmann
ff95787887 QmlDesigner: Use "This is a string" as default for string
Change-Id: I3d4d6e3dc32e5589e519fdadab0ae0996f7ae21e
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-09-15 09:42:38 +00:00
Alessandro Portale
c13a2c861f TextEditor: Improve appearance of "erase" button in color scheme editor
This removes the arrow icon which does not make much sense (and also
looks bad on macOS) with the text "Unset". The tooltip gets adapted,
accordingly.

Change-Id: Ifdf41114855fe9e97d8a89a9865d92ae262e4dce
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-09-15 09:31:56 +00:00
Marco Bubke
8aee8df4df QmlDesigner: Break dependency to View3DActionCommand
The node instance view and his commands should be not called directly
from other views. There are special classes QmlItem which can do it but
every change should go through the model.

Change-Id: I734e5538d7f6ecb07d736912f647c5eb92dc7631
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-09-15 09:20:12 +00:00
Christian Stenger
6ae6390661 AutoTest: Fix gtest filter usage
There are shells that need the filter to be quoted to avoid
shell globbing.

Fixes: QTCREATORBUG-28153
Change-Id: I13eb5cb362b3543f5a88b27fb170c579ae6dde4b
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-09-15 07:51:29 +00:00
Eike Ziller
2bfc8173e5 ImageViewer: Make "Fit to Screen" sticky
Instead of "Fit to Screen" being a single-shot action, make it a
property that sticks as long as the image is not resized by the other
buttons or the mouse wheel. Meaning that it will resize to the screen
when the viewer size changes as long as the property is on.

Task-number: QTCREATORBUG-27816
Change-Id: I3b790dd7f94e4b964a734658dac4a637c8105b84
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-09-15 07:45:39 +00:00
Marcus Tillmanns
b573250a8a FSEngine: Disable tests on Windows
Recent changes in FilePath made it incompatible with windows targets
(by design). Therefore we disable the tests here.

Change-Id: I2182c64f36268f5ab6282d149930653a79cc9aa1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-09-15 07:44:27 +00:00
Marcus Tillmanns
21df100b21 GdbEngine: Support interrupting docker executable
Change-Id: I084ff34b0455f069868aaac10d0003ac81ef1903
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: hjk <hjk@qt.io>
2022-09-15 07:34:13 +00:00
Marcus Tillmanns
df074e06fa Debugger: Search for toolchain style gdb's
See also: QTCREATORBUG-27985

Change-Id: I60f0561b83a77a9cba9753af29e125550750e684
Reviewed-by: hjk <hjk@qt.io>
2022-09-15 07:33:41 +00:00
Thomas Hartmann
1fe4db0231 QmlDesigner: Add removeKeyframesForTargetAndProperty
This allows to remove keyframe groups for a specific property.
This is required if a dynamic property is removed.

Change-Id: Ic3a2609241df21d81954ab18e4aeec1c47bfe336
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-09-15 06:35:21 +00:00