Commit Graph

68765 Commits

Author SHA1 Message Date
Marco Bubke
cc690a407f QmlDesigner: Remove macos specific puppet path
We already removed it everywhere else.

Change-Id: Id71880474550ca4c5dfc26ef77db74455a44ca16
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-09 16:58:18 +00:00
Marco Bubke
7cfad17850 QmlDesigner: Fix warning for QQmlListReference
Change-Id: I18e2462d5d52d9c464de5510f86e8cb4da05cc1d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-09 16:57:58 +00:00
The Qt Project
f56420ee07 Merge "Merge remote-tracking branch 'origin/9.0' into qds/dev" into qds/dev 2022-11-09 15:42:39 +00:00
Tim Jenssen
f8c99ebd9a Merge remote-tracking branch 'origin/9.0' into qds/dev
Change-Id: I02fd6f492c27d85b88af7ec8bc18ff62f2c6ed14
2022-11-09 16:41:12 +01:00
Knud Dollereder
583e53cb08 QmlDesigner: Make DS find the qmlpuppet on macOS
The puppet is now build into a different directory.
This patch updates the qml2puppet search path for DS.

Change-Id: Ib522df599f429914275700813fa8d1e526b1ce4a
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-11-09 15:32:43 +00:00
Tomáš Juřena
b8d68b6f65 Baremetal: Add st-util --connect-under-reset option
Task-number: QTCREATORBUG-26958
Change-Id: I39d39204f2fc848e653b8df1a19c8810325ba8a1
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-11-09 15:30:00 +00:00
hjk
30312cc74a Vcs: Proliferate FilePath a bit further
Change-Id: I8490917bf0bde59b1cef2509ec14c3ca985fa43d
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2022-11-09 15:08:19 +00:00
Christian Kandeler
c89bef9dcd ProjectExplorer: Do not pop up the issues pane while not building
Otherwise, the issues pane can pop up due to a key press, as code models
refresh their diagnostic entries.
Amends 04a23c38f0.

Fixes: QTCREATORBUG-28330
Change-Id: Ic7e63a1bbbf3e4c37383849cfad05529bac23e9b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-09 15:07:28 +00:00
Christian Kandeler
45317da25a ClangCodeModel: Auto-start header file completion on trigger characters
That is, recognize '"', '<' and '/' as activation characters, like the
built-in code model.
Note that we do not actually start the LSP completion procedure for
these unless we really are in an #include directive.

Fixes: QTCREATORBUG-28203
Change-Id: I85727d0e392a27efa8549e7d6fa5f18f953774b4
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-09 14:49:33 +00:00
hjk
9c69a63b3b QtSupport: Simplify and FilePathify QtVersion::hasMkspec()
Change-Id: I93f2074faf0a23fa3a4e5ffc09bc88ce3e08e2c5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-09 14:47:02 +00:00
Jarek Kobus
4e9eef339c TarPackageCreationStep: Secure data access
Don't read or modify private data from worker thread.
Move Preparation of the deploy file list into the caller
thread, as it is using e.g. pointer to Kit object, what
doesn't look to be safe when used from non-main thread.

Change-Id: I6523e8f46541f5f96d46fa98f0ba941c2ec46e74
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-09 13:36:10 +00:00
Kwangsub Kim
0be6ba955d McuSupport: Expand variables for automatic kits
An MCU kit that is created automatically also requires variable
expansion before the kit is generated. The same preparation for
the variables will be done as the MCU option page.

Task-number: UL-6603
Change-Id: I915f6f6e8c6e2a90409c527951e469c555002cff
Reviewed-by: Rainer Keller <Rainer.Keller@qt.io>
Reviewed-by: Yasser Grimes <yasser.grimes@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-09 13:00:00 +00:00
Marco Bubke
63022d08ea QmlDesigner: QmlPuppet as standalone tool
The qmlpuppet is now a standalone tool. There is new a library too with
the communication code. That is shared between the designer and the
puppet. It's in a .cmake file so it can be included by the standalone
tool if it is not part of a designer build.

Task-number: QDS-5879
Change-Id: I2bc2a0b463fbb3e0c8c23d182abfd368cf87e968
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-11-09 12:29:38 +00:00
The Qt Project
5434de83b9 Merge "Merge remote-tracking branch 'origin/8.0' into 9.0" into 9.0 2022-11-09 11:28:25 +00:00
Eike Ziller
1beaa0771c Support temporarily dragging progress details out of the way
The progress details can cover UI that the user is interested in, and
with e.g. the Clangd indexing, building and update check we have some
long term progress details visible.

It is already possible to hide the details by pressing the tool button,
but another natural reaction is to just drag the UI out of the way.

Add support to drag the progress details to a different position
temporarily. The original "preferred" location is reset either when we
show a new progress detail and we didn't show anything before, or when
the user hides and shows the progress details via the button.

Fixes: QTCREATORBUG-28078
Change-Id: Ie9cecf8b4a34385426a4de3baaf4da92e6387254
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-11-09 11:11:26 +00:00
hjk
19ef8e5c7a Debugger: Avoid some temporary containers when parsing escaped chars
Change-Id: Ia9af6801de6f745388e464fc806297d396c66160
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-09 10:54:30 +00:00
Tim Jenssen
63d3a6bd3d Merge remote-tracking branch 'origin/8.0' into 9.0
Conflicts:
  src/plugins/qmldesigner/components/assetslibrary/assetslibrarywidget.cpp
  src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp
  src/plugins/qmldesigner/qmldesignerplugin.cpp

Change-Id: I24216ae3f83cdde3493b4a6274e24a72f75820fc
2022-11-09 11:45:25 +01:00
Marcus Tillmanns
06838e3e5e ProjectExplorer: Fix potential race condition
When using BuildStep::runImpl() it was possible for the async part
to still be running while the BuildStep is already deleted.

This change returns the Future so that users can wait for it to finish.

Change-Id: I27c0fc8741c59851c5ab8f5cb858fbcda923c14d
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-09 08:33:37 +00:00
Ali Kianian
c1f3dc4f54 QmlDesigner: Add positioning methods to QmlVisualNode
QmlVisualNode would be able to:
    1. Set a position for the visual node
    2. Translate the position of the visual node
    3. The visual node could be scattered
    4. Get the related position of visual node
All these methods will work for either 2D or 3D nodes.
Also, a potential bug has been fixed for the Position. It was assumed
that if a position equals to 0, it's not a valid position, but
now it's handled by this change.

Change-Id: I9dd59dbe0d14084087ff39bd14d2a783d24a5efd
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-11-08 14:35:06 +00:00
Christian Kandeler
f93c316b73 ClangCodeModel: Adapt to new upstream feature
See https://reviews.llvm.org/D130015.

Change-Id: I2c2590265f2d7a2c2b5e966b0dc65ceff6b1b3e6
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-08 14:21:25 +00:00
Christian Kandeler
c5db642791 QbsProjectManager: Add UI support for "profile" build variant
Fixes: QTCREATORBUG-27206
Change-Id: I086e90173d71927d463498c31a567c1bc8089bd3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-08 13:52:05 +00:00
hjk
9364304f81 Debugger: Remove some debugging code
Avoids a possibly large temporary string.

Change-Id: Ic20cccedc35df0172c3586054f098e2c0f4b69c2
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-08 13:25:42 +00:00
Miikka Heikkinen
d9d4d1829a QmlDesigner: Fix material name editing issues
Material name field in material browser now ensures that the start
of the string is visible when editing is not focused.

Any click outside the name field will take the focus away from the
field, and name field state is properly updated when focus goes
away for any reason.

Trying to set same name as before is ignored instead of changing the
name to <oldName>1.

Fixes: QDS-8185
Change-Id: I723e3ae312e3e2c4ce8a95a3b05effcee2bae328
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-11-08 12:21:06 +00:00
David Schulz
08002c6278 Editor: delete assist interface in lsp/clangd support
The complete memory management in the code assistant needs an overhaul.
For now just delete or at least track the assist interface with scoped
pointers.

Fixes: QTCREATORBUG-28408
Change-Id: I0bd4cfaa36a660b6fd5bb467af3b13414ed76e63
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-08 12:07:56 +00:00
Eike Ziller
3c6435387b QmlJS: Fix cursor position and breakpoints when reformatting
Use the intelligent partial text replacement logic that is also used for
e.g. the Beautifier formatters.

Fixes: QTCREATORBUG-28349
Fixes: QTCREATORBUG-25218
Change-Id: I9ae4052df27c8aa2012106a8ef8f624ba5f3c30b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-08 11:38:54 +00:00
Marcus Tillmanns
bb3e9c44be Android: Fix reference to out of scope variable
Change-Id: I49ea5c059ed68230e368d8de2aaddca979019bfa
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-08 11:37:26 +00:00
Christian Kandeler
074126cf47 ClangCodeModel: Fix usage type of constructors in "Find References"
In particular, in a variable definition, the (invisible) reference to the
constructor is *not* a declaration (but an implicit call).

Change-Id: Ic1f29a4da360959e81ec536efbf1175924ea34d7
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-08 10:53:25 +00:00
Alessandro Portale
657cc181fe CMakeProjectManager: Deduplicate string "-DQT_QML_DEBUG"
Change-Id: Ice9bc9b1ee17d477a484b9f4d630737f6633c06c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-08 10:52:03 +00:00
Kwangsub Kim
d881932695 McuSupport: Update library path for Windows platform
The Qt shared library for Windows desktop platform has been
moved from Qul 2.3.0 to support MinGW toolchain. The updated
library path needs to be configured correctly.

Task-number: QTCREATORBUG-28303
Change-Id: I7cf8150bfb4a66731904ea49089849496305f22e
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-08 10:24:18 +00:00
Mahmoud Badri
15dd073e0c QmlDesigner: Add basic drag-n-drop support to textures
Dropping textures to different views to be handled separately.

Change-Id: I1e0ac5681e5e1b3dca8bdaf6819a6b699f629e79
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-08 10:22:53 +00:00
Christian Stenger
c392cb8acf MesonPM: Only set tools if possible
Avoids triggering a soft assert.

Change-Id: I86dd6fd3876504abc3ecf5b543e7c86d886bb4c2
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>
Reviewed-by: hjk <hjk@qt.io>
2022-11-08 10:09:57 +00:00
Christian Stenger
09047d5a99 AutoTest: Log info messages as well
Amends f792dc0216.

Task-number: QTCREATORBUG-28394
Change-Id: I5bf9bb29a56e57ce0440ac1a831d6d552f93d791
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-08 10:09:48 +00:00
Mahmoud Badri
d5a7f25e60 QmlDesigner: Implement content library view
Fixes: QDS-8058
Fixes: QDS-8059
Change-Id: I1adfdc7ac15141e010467813ec6e673060269241
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-08 10:04:43 +00:00
Marcus Tillmanns
129448d61d QmlJS: Fix Follow under cursor
When trying to jump to a symbol in a qml file the Qml Model may find
the location in a generated .qml file in the build folder.
QtCreator searches in all generated .qrc files to try and find
the source file so it can jump to it instead.

Previously not all auto-generated ".rcc" folders would be found
as only the folders of targets (executables) were searched.
Plugins or Static Libraries were not searched.

With this fix, all projects nodes are searched for the ".rcc" folder
and therefore also finds them for Dynamic / Static libraries and
plugins.

Fixes: QTCREATORBUG-27173
Change-Id: Ic51ac8fbc82c15785cbefd76787942a512ecf3db
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-11-08 09:54:10 +00:00
Ali Kianian
1c58642ae2 QmlDesigner: Add Fit Selected to 3d Context Menu
"Fit Selected Items to View" action is added to the context menu
of the Edit3DWidget.

Task-number: QDS-8198
Change-Id: Ib6882bd173ca874ffbf3fe0ade29a6f5008d6cf2
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-08 09:44:22 +00:00
Christian Kandeler
c4ee485bdf ClangCodeModel: Fix persistent SwitchDeclDef object
If both AST and document symbols are available right away, the
ClangdSwitchDeclDef object emits its done() signal before it is
connected and stays around, potentially firing off new "follow symbol"
requests to the bewilderment of innocent users.

Fixes: QTCREATORBUG-28183
Change-Id: I972c8d4d9d7b7435e293d76fe710b19c9c4fb287
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-08 08:14:37 +00:00
Eike Ziller
a1851c7cf1 Add -language command line option for overriding UI language
I run Qt Creator in german, but for responding to questions and
generally looking things up I regularly want to run it temporarily in
english. A command line option makes that easier than having to start Qt
Creator, navigate to the settings, and restarting it, and doing the same
again to revert back to german.

Change-Id: I7c0d84375ffc97e5c7607307fd3f785f2c315c3d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2022-11-07 14:50:36 +00:00
Daniele Bortolotti
11c9332574 McuSupport: Use lower case platform name for CMake configurations
QUL_PLATFORM name is converted in CMake to lower case, resulting
in misleading warnings about platform name due to case mismatch.

Fixes: UL-6641
Change-Id: I25df689c91dca65ef67c80d9527c0afe7952278b
Reviewed-by: Yasser Grimes <yasser.grimes@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-07 14:38:03 +00:00
The Qt Project
7dd4af1a34 Merge "Merge remote-tracking branch 'origin/9.0'" 2022-11-07 14:27:48 +00:00
Christian Kandeler
3e3569f6dc CPlusPlus: Add more usage tags
To be used in subsequent patches.

Change-Id: Id7140aa39bb2adba343cc12b0273c90f3c12abeb
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-07 13:24:58 +00:00
Christian Stenger
f792dc0216 AutoTest: Fix Catch2 output handling
Handle warnings or explicit failures instead of ignoring
them.

Fixes: QTCREATORBUG-28394
Change-Id: I5ccde8e7b9dfa1118f42ea881b9152069616193f
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-07 13:13:47 +00:00
Eike Ziller
63c1bc572a Merge remote-tracking branch 'origin/9.0'
Change-Id: Ie24672b00aae6c0afa5931d87e6e1c24fb841161
2022-11-07 12:59:28 +01:00
Jarek Kobus
dc9cb0562a Utils::Id: Make access to internal cache thread safe
Secure all accesses to internal cache with QReadWriteLock.
Move firstUnusedId into secured scope, too.

Fixes: QTCREATORBUG-28415
Change-Id: I99d23213ec169b2b74748f54c98b834f88ab6a3d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-11-07 11:58:57 +00:00
Miikka Heikkinen
9febccb2d7 QmlDesigner: Update material browser materials on state change
More generally, materials previews are now updated whenever the
instance values on them change.

Fixes: QDS-8096
Change-Id: I07dab4c9cefa241ca5f22e32e6a53e85c31aa252
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-11-07 11:56:18 +00:00
Christian Kandeler
d891e18edc CPlusPlus: Make Usage::Type QFlags-based
We want to extend the enum with more non-exclusive values.

Change-Id: I4d8ebe1f7327139c7817b9f621b4b74a883c5e09
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-07 11:33:33 +00:00
Christian Stenger
c4204f6eaa Core: Silence wizard handling
The way wizards get created has changed. Originally the
factory had been able to return an empty list in case something
was wrong. This list's items had been processed. Now it just
returns a nullptr for each item as they get processed now one by one.
This triggers soft asserts when e.g. having only a subset of
plugins loaded like when running plugin unit tests.
Amends 1cf6b031cf.

Change-Id: Ia91df462ea52efe301c2dca07bc69aeb2f569b78
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-07 05:59:57 +00:00
Björn Schäpers
f4545807de clang-format: Adapt to LLVM 16
Change-Id: I2e35f92db6de10b1e4bf173f0864f0cd893a011f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-06 18:56:32 +00:00
Christian Kandeler
ed33e2bfb5 Update qbs submodule to HEAD of 1.24 branch
Change-Id: I521dd1cd921197392b359aee8e3b9fb9546a6cbd
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
2022-11-06 13:16:56 +00:00
Sivert Krøvel
572747db37 McuSupport: Make legacy kit creation match QtCreator 8
The default path for the STM32 Cube Programmer was recently changed for
legacy packages. This means that Qt for MCUs 2.2 kits created with
QtCreator 9 and kits created with QtCreator 8 would have different
paths. This is not ideal as a basis for automatically creating new
kits when changing Qt for MCUs version.

This change makes QtCreator 9 create legacy kits in the same way
QtCreator 8 did.

Change-Id: I8b1fa4a0d673f746edf058aee292e6d42ca2cdcf
Reviewed-by: Yasser Grimes <yasser.grimes@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-04 16:28:09 +00:00
Sivert Krøvel
6d992c9f3c Revert "McuSupport: CMake expects programmer path to include the bin folder"
This reverts commit e558fc4d1f.

Reason for revert: Because this is incompatible with how QtCreator 8
makes kits, it breaks the kit when changing versions. A fix for the
original issue was made in Qt for MCUs to accommodate not having bin
the path, allowing the detectionPath to be bin/... in matching with
legacy code.

Change-Id: I64c670398287b3ec9beec0aa6fac02325b322664
Reviewed-by: Yasser Grimes <yasser.grimes@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-04 16:27:58 +00:00