Commit Graph

2612 Commits

Author SHA1 Message Date
Tim Jenssen
b4061e223e Merge remote-tracking branch 'origin/qds/dev'
Change-Id: I907e067abba640d27313ce03bc41326d3ed750f0
2024-08-06 19:04:41 +02:00
Tim Jenssen
42570752ea qml2puppet: remove annoying debug output
Change-Id: I8fcc073cfd326d78bfe59be3724d36f62484f467
Reviewed-by: Burak Hancerli <burak.hancerli@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-08-01 16:23:09 +00:00
Alessandro Portale
61c19d78ff Debugger: Move "beetle" overlay on the mode bar action down by 1 pixel
Change-Id: I5b41e4a58069f4aef67a6c46c18a7a3f725b2e7c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-31 10:43:22 +00:00
Cristian Adam
bfe1258d1b CMake: Bump minimum CMake version to 3.20
In order to get the policy CMP0116 set to NEW.

See https://cmake.org/cmake/help/latest/policy/CMP0116.html

This should prevent rebuilds due to AUTOMOC.

Change-Id: I242c44b2969c6caccf61b7d5ba5c3a0335744ee7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-26 15:07:09 +00:00
Tim Jenßen
3b0008220e qml2puppet: fix a frequent crash
Change-Id: I939e0df31dfab2a97235da7778c12534acb128e7
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-07-24 09:56:49 +00:00
Alessandro Portale
3fe4928626 Use QObjectList alias
Change-Id: I11d4071088e2b44c37d4a8ac59945fe49fe68351
Reviewed-by: hjk <hjk@qt.io>
2024-07-17 15:14:33 +00:00
Tim Jenßen
93588dbee2 Merge remote-tracking branch 'origin/14.0' into qds/dev
Conflicts:
	doc/qtdesignstudio/src/how-to/qtdesignstudio-live-preview-desktop.qdoc
	qt_attributions.json
	src/libs/sqlite/CMakeLists.txt
	src/plugins/qmldesigner/CMakeLists.txt
	src/plugins/qmldesignerbase/QmlDesignerBase.json.in
	src/plugins/qmlprojectmanager/CMakeLists.txt
	src/tools/qml2puppet/qml2puppet/instances/qt5import3dnodeinstanceserver.cpp
	src/tools/qml2puppet/qml2puppet/instances/qt5import3dnodeinstanceserver.h

Change-Id: If33e41d8951a49acaba0a74c3e5848eef52bb945
2024-07-10 18:11:28 +02:00
Alessandro Portale
c9d5504fa5 ExtensionManager: Add filtering and sorting
As per UI design spec, this change inserts two widgets between the
search field and the extensions list. One for filtering, one for
sorting.

The widgets are derived from QComboBox, with custom paintEvent. The
selected filter/sort options are applied to the custom
SortFilterProxyModel which is inserted between the "search" proxy model
and the view.

Fixes: QTCREATORBUG-31179
Change-Id: Ia7768fa4f31b5bf5682918e724a3a299e851eb46
Reviewed-by: hjk <hjk@qt.io>
2024-07-09 13:09:40 +00:00
Eike Ziller
8d99cd800b Merge remote-tracking branch 'origin/14.0'
Change-Id: Ic3c53630e16712b6493873d21485b726f0d06574
2024-07-08 10:31:06 +02:00
Alessandro Portale
f6ed7edd0a ExtensionManager: Display extension status
Fixes: QTCREATORBUG-31180
Change-Id: I28c56f2e312670183b21e919ef578135c0384d92
Reviewed-by: hjk <hjk@qt.io>
2024-07-05 08:57:24 +00:00
Tim Jenssen
d3227dbba8 QmlDesigner: fix missing include
Change-Id: I7499a67e4202b6a4ffbf019b1b32966b4d619875
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-07-04 16:24:10 +00:00
Alessandro Portale
d6092e41ce Mode icons: Decrease the size of the "Cancel build" square
It is now 8px big and has a corner rounding of 1px.

Task-number: QTCREATORBUG-31080
Change-Id: I7b50707f021160b9de76185aad357000398bf5d2
Reviewed-by: hjk <hjk@qt.io>
2024-07-04 15:12:29 +00:00
Miikka Heikkinen
3fd293a567 QmlDesigner: Release MouseArea3D grab when hover leaves the parent view
Now we clear hovered state for MouseArea3D and remove it as a global
grabber instance when it gets HoverLeave event.

Fixes: QDS-13178
Change-Id: I8b69c39f54165fe1cb6f3dbaa75b19330446de77
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-07-04 06:53:12 +00:00
Eike Ziller
eee5411d40 Merge remote-tracking branch 'origin/14.0'
Change-Id: I0d5fd257c10eeb452d8767aba63bb7f7faacd48e
2024-07-03 10:14:34 +02:00
Miikka Heikkinen
a7fd510b98 QmlDesigner: Show transform gizmos on every split
For seamless UX, the transform gizmos need to be visible and responsive
on all splits without first activating the split.

Fixes: QDS-12383
Change-Id: I7760fc35c06083b2939f7dff48e79e52f273ba97
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-07-02 10:25:44 +00:00
Miikka Heikkinen
197e6a88f2 QmlDesigner: Fix import preview generation crashes
Asset name sanitizing logic is more complex on quick3d importer than
we have on designer side, which leads to asset name sometimes differing
from  actual generated qml file name. Since there's always a risk of
sanitizing logic changing, added qml name as separate data item from
asset name so that preview generation knows to always load correct qml.

Fixes: QDS-13168
Change-Id: I1705619a6b30ebbe8ca44a00cfdad1a5122ca964
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-07-02 08:34:53 +00:00
Alessandro Portale
157d8f2ca2 Mode icons: Fill the beetle
This reduces the complexity of the beetle, which should make it better
recognizable in various pixel densities.

Change-Id: I1021e497366881847984e32e31c3523207f6498f
Reviewed-by: hjk <hjk@qt.io>
2024-07-01 16:57:27 +00:00
Alessandro Portale
7fb28d6bdc Mode icons: Update Welcome, Edit, Project and Build icons
- New house/Welcome
- Pen/Design points to bottom left
- New wrench/project without circle
- New hammer/build with attached handle and rotated 45 degrees

Task-number: QTCREATORBUG-31080
Change-Id: I97499ead9e097d523c36d9b08a4b65240e3a5042
Reviewed-by: hjk <hjk@qt.io>
2024-07-01 14:08:21 +00:00
Alessandro Portale
c954b75672 Mode Icons: Make "Play" triangle less squeezed
Play icons usually are equiangular, i.e. not squeezed. This unsqeezes
the new play triangle.

Task-number: QTCREATORBUG-31080
Change-Id: I7243253255a015e78bf87bce273c2381dd96ee1b
Reviewed-by: hjk <hjk@qt.io>
2024-07-01 06:48:04 +00:00
Miikka Heikkinen
a9426e1977 QmlDesigner: Fix puppet crash when importing asset with commas in name
Importing 3D assets doesn't need to create Qt5NodeInstanceClientProxy,
so skip that in puppet initialization as it may lead to misinterpreting
some command line parameters given to the puppet.

Fixes: QDS-13123
Change-Id: Ifa6601dfa7da1a613b2c897a287a7baeb07dd712
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-06-27 13:21:13 +00:00
Miikka Heikkinen
ad8c3ba52a QmlDesigner: Fix composed effect reparenting and removal issues
Reparenting or removing composed effect nodes requires recursive update
of the old parent to ensure all children of the old parent are rendered
correctly without the effect.

If the new parent of composed effect node has Image children, they can
in some situations randomly lose their textures in 2D view.
It seems that the only way to fix this issue is to toggle the
visibility of the affected node or its ancestor off and on, so we do
that to the new parent item when reparenting composed effects.

Fixes: QDS-11688
Change-Id: I003d3976d619f24164938846d9b4a15201bf7b59
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-06-25 14:02:53 +00:00
Alessandro Portale
81163b431e ExtensionManager: Implement Extension details design
This implements the design for the "right side" of the extension
manager.

The introduced "header" shows the extension icon in a slightly bigger
variant. The "Install..." button that starts downloading and installing
of a plugin moved to the newly desigend "header".

The previous HTML based prototype has been split up into separate items
in order to achieve specialized sections like the images and tags.

Images are loaded via TaskTree and displayed as static image or as
animation.

Change-Id: Ifaf4a46c0a4789e77e76f9a44c8a15ee74c5e8df
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-06-24 11:47:30 +00:00
Alessandro Portale
b09850eabc Lua: Add icon for Qt Creator Lua Plugin wizard
Change-Id: I00db10401aaaddc3dbb0fab96e577268aa43f149
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-06-21 08:35:41 +00:00
Miikka Heikkinen
778839be5f QmlDesigner: Remove initial reparenting of all items to root item
This initial reparenting to root doesn't seem to have a purpose as any
valid instance will be reparented to its actual parent later anyway.
Since it does break composed effects parent handling, it was removed.

Fixes: QDS-12022
Change-Id: I08993424b5c3ece739809375c11d0a2cd0e3498c
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-06-20 13:46:43 +00:00
Miikka Heikkinen
3d4fd85648 QmlDesigner: Fix 3D import preview camera FOV
Adjust FOV orientation depending on width and height of the rendered
viewport to ensure rendered scene stays within the viewport.

Change-Id: I83ed2b547e3bdaeb106dd938b94c72c0b2b8c2e5
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-06-17 14:54:22 +00:00
Miikka Heikkinen
e50704d961 QmlDesigner: Use unique image key for each import 3D preview icon
The shared memory is allocated based on the key, so if every icon
is sent with same key, they will use the same shared memory. If QDS
side doesn't read the image before the next image is written into the
shared memory, QDS side will get wrong image if all images use same
key.

Fixes: QDS-13013
Change-Id: Ie8188520a76ca057a5b0f0927a7726652609fa35
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-06-17 13:05:54 +00:00
Henning Gruendl
0c92c8aaf7 QmlDesigner: Show canvas background in states view
* Forward the auxiliary property formeditorColorProperty to the states
  editor delegate
* Add functionality to enabled/disable certain colors in the form editor
  canvas background combo box
* Disable context image property in the combo box when it isn't set
* When context image is set as the canvas background make the states
  background transparent
* Fix Item as root being rendered with white background in
  Qt5NodeInstanceServer::grabRenderControl

Task-number: QDS-12914
Change-Id: Ie2850986f4a54c6e03f33527d8308d01ba16884e
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-06-17 09:39:09 +00:00
Miikka Heikkinen
c220599e2f QmlDesigner: Remember each import preview camera position/rotation
When importing multiple 3D assets at the same time, the import preview
camera rotation and position are now stored and restored when previewed
asset changes.

Fixes: QDS-12999
Change-Id: Ib65578e246ba4344188e97540546521b0cb39e5f
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-06-17 07:38:13 +00:00
hjk
625fd895ce Fix more metatype related deprecation warnings
QT_DEPRECATED_VERSION_6_0
static int type(const QT_PREPEND_NAMESPACE(QByteArray) &typeName)

Change-Id: I6a085c6d370b6d65193dc09d4318765de81a8ce3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-14 11:00:32 +00:00
Eike Ziller
caa5c3947f iOS: Fix slow debugging with recent Xcode and iOS < 17
When starting the debugger, we need to pass it the location of the
downloaded device symbols, or otherwise debugger startup is very slow.

Xcode changes the location where it saves this information once in a
while, and it must have again. The location with Xcode 15.2 at least is
in the style "iPhone8,1 15.7.3 (19H307)", i.e. it starts with the
"product type" now.

Retrieve the product type of the device and add another candidate
directory for device symbols.

Fixes: QTCREATORBUG-31044
Change-Id: I1a65305fc84c1af8cd48c4ebb249167e1dbe6ae1
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-06-13 06:09:47 +00:00
Alessandro Portale
b599edb9b7 Qt Creator redesign: Update the mode bar icons
This updates the existing mode bar icons in the svg file with the new Qt
Creator Design icons from Figma. The pngs are updated accordingly.

For consistency, the "beetle overlay" for toolbar actions is also
updated.

The custom color for "active" state of a mode icon has been removed. If
we keep this change, a couple of Theme::IconsMode*ActiveColor entries
can be removed.

Change-Id: I9b5422c79f5426e31b41e59d67ddc307b521c0af
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2024-06-12 15:08:00 +00:00
Tim Jenssen
980305ff15 Tools: add a sqlitetester
Windows only, to debug a Windows issue.

Change-Id: Iebd77e08ab4013967f273c262dae6817c92e9527
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-06-12 14:36:54 +00:00
David Schulz
b56a447a83 Debugger: Prevent showing the windows error on debugger detection
Change-Id: Id4a6d8fe345fa023d3a0bffe6e46fc2077cbfae5
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-06-12 12:56:31 +00:00
Ali Kianian
1e3f8afdce QmlDesigner: Get the material image based on request id
A request id is used for comparing requests instead of image sizes
Returned image sizes was not always the same as requested ones because
of pixelRateRatio.

Fixes: QDS-12961
Change-Id: I2f0ed7ea00047f296872a02958322f3448984f09
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2024-06-07 09:23:29 +00:00
hjk
c3bfcc9b86 QmlPuppet: Fix a few more deprecation warnings
Change-Id: I4debdccaf6f6c7fcc228eadea6231b58fa8da9d0
Reviewed-by: Knud Dollereder <knud.dollereder@qt.io>
2024-06-06 09:53:25 +00:00
Miikka Heikkinen
01501e00dc QmlDesigner: Show more information on import 3D dialog list
Preview image and some additional info are now shown on 3D import
dialog's list of imported objects. Individual items can be removed
from the list by clicking "x" button on the list or pressing delete
key.

Fixes: QDS-12900
Change-Id: Iad366ea308203a25bc3379b47c1d9c4f75f13fa7
Reviewed-by: Ali Kianian <ali.kianian@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-06-06 07:46:50 +00:00
hjk
5f0b9cd5ff QmlPuppet: Fix some deprecation warnings
Crc/tools/qml2puppet/instances/nodeinstanceclientproxy.cpp

Change-Id: I83342da2a9015ac1a8ba15d2fa10626ef00f5e0c
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-06-05 14:31:10 +00:00
Alessandro Portale
74e4e1053a ExtensionManager: Update ExtensionManager list items design
This updates the list delegate for ExtensionManager items to match the
latest Figma design.

Change-Id: I769026caa1e08feea4f71d901d1bda01d74ab0a2
Reviewed-by: hjk <hjk@qt.io>
2024-06-05 14:30:16 +00:00
Miikka Heikkinen
b3a5d38a68 QmlDesigner: Add support for previewing multiple 3D imports
Imported items are shown on a list in import dialog and a preview is
generated for each. Options are also specified per-import rather
than applying to all imports.

Fixes: QDS-10806
Change-Id: I6be09880afc0f8886585c4e768da1197b46bc71a
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-05-30 12:21:30 +00:00
Christian Stenger
373ad2d9ba QmlPuppet: Fix build without Quick3D
Change-Id: I38bf66d61d3f40ecb2930290ee7966b653aea8a5
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-29 09:14:45 +00:00
Tim Jenssen
4515fba526 Merge remote-tracking branch 'origin/qds/dev'
Conflicts: src/plugins/qmldesigner/CMakeLists.txt

Change-Id: I250c8e5284ddb0f335c440999b8920762419c89b
2024-05-28 19:06:18 +02:00
Miikka Heikkinen
c5d0263b32 QmlDesigner: Add look-at gizmo to visualize 3D edit camera look-at pos
Look-at gizmo can be toggled from visibility toggles submenu.
Look-at gizmo is hidden when fly mode crosshairs is visible.

Fixes: QDS-12767
Change-Id: I2c71b23f14e403c9774498937764607cfea3bd1d
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-05-24 11:17:07 +00:00
hjk
917523d7e3 Fix a few {QByteArray,QList}::count related deprecation warnings
Change-Id: I493e557a2ec976560c9e37312d8ae860490a2831
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-24 07:06:47 +00:00
hjk
f30d369b99 Fix QMetaType::type() related deprecation warnings
Not in sdktool, which still builds with Qt 5.15

Change-Id: I6e6f4331127b821e471e2840e7959cd65e6419e9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-23 13:04:22 +00:00
Miikka Heikkinen
8bfe805645 QmlDesigner: Allow rotation of 3D import preview
3D import preview can now be rotated using left mouse button and
dragging the preview image. This causes camera to orbit around the
previewed model, similar to rotation to 3D edit view orbit camera.

Close/Cancel button logic was also improved.

Fixes: QDS-12795
Change-Id: I0c7d1ad28f8fe779b9bedc4bf76be704078d91a6
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-05-23 10:48:44 +00:00
Miikka Heikkinen
fd2c7db691 QmlDesigner: Use correct Enumeration type for instance values
Puppet used to return just string for enumeration types.
Now it will use Enumeration type properly.

Change-Id: I602891e34c03cb659ee0a8e4571b39b6e24f9e1c
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-05-23 10:25:11 +00:00
Tim Jenssen
0433b8c479 Qml2Puppet: fix stand alone puppet builds
Change-Id: I24f5ca625429c636052d0c92c495a20a6942c92f
Reviewed-by: Burak Hancerli <burak.hancerli@qt.io>
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>
2024-05-22 12:59:20 +00:00
Miikka Heikkinen
14e0196442 Show 3D import preview
Show preview of 3D import in item library import dialog
when importing a single 3D asset.

Fixes: QDS-11111
Change-Id: I13135be1e931cbee034ca8a89654c0827b937bdf
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-05-21 09:45:30 +00:00
Miikka Heikkinen
73ce3a891f Allow scene environment as background for non-View3D scenes
For non-View3D scenes, the environment from the previous View3D
is used.

Fixes: QDS-12398
Change-Id: I6adc82cd0205ebe443b5834d9bb0f4906e2cd009
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>
2024-05-20 11:06:11 +00:00
Tim Jenssen
fe7b46c28e crashpad: fix include
Change-Id: Ia5bd19db4bb05de673632fa7790b72a4824313bb
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-05-17 17:52:35 +00:00