Commit Graph

72811 Commits

Author SHA1 Message Date
Jarek Kobus
524c5fd5c9 DockManager: Limit code repetition
Change-Id: I4dbbf0737a1df9aa0853aeb4b31fa9c16a7827df
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 17:40:30 +00:00
Jarek Kobus
353ddc87a4 DockManager: Introduce read/writeAttribute() helpers
They are going to be reused in reading / writing
display name and mcus enabled.

Change-Id: I679de8858c37fb8629774d0166a7dbc56e5dab76
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 17:40:24 +00:00
Thomas Hartmann
2f728e6d59 QmlDesigner: Use 'Qt Design Studio' in option
Task-number: QDS-12149
Change-Id: I27ffd717ef73ff788e8b5cfdb9a116162cee8015
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-03-20 16:39:02 +00:00
Thomas Hartmann
81681897a3 QmlDesigner: Register ContextObject only once
Change-Id: Id92fa1a5ccf556dcc653b0422369df35414719ed
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2024-03-20 16:32:35 +00:00
Marco Bubke
e1a4967b03 QmlDesigner: Fix compiler warning
Change-Id: Ie0f81c735b5351e8a12a62ced4e86c5083bf24cf
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 16:26:53 +00:00
Jarek Kobus
1be9f9cdc7 Doc: Add docs for ExecutableItem::withLog()
Change-Id: I105a106139f1a658e5feed022e224e4e933dbcc1
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-03-20 15:03:20 +00:00
Jarek Kobus
ab9f394138 Doc: Describe shortly ExecutableItem class
Change-Id: Ib146d1c99e51c56ca46172d293d00392f05ddd46
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-03-20 15:03:12 +00:00
The Qt Project
a38b1db252 Merge "Merge remote-tracking branch 'origin/13.0'" 2024-03-20 14:06:27 +00:00
Eike Ziller
90e1d96019 Merge remote-tracking branch 'origin/13.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc
	qbs/modules/qtc/qtc.qbs
	src/plugins/remotelinux/linuxdevicetester.cpp

Change-Id: I8434e41dcfbb50f6ed032a3e0af1591eb19b79eb
2024-03-20 15:05:58 +01:00
Christian Kandeler
7e0b7b8eb1 Update qbs submodule to HEAD of 2.3 branch
Change-Id: Ib87697ebccf92f38c1ea30a1e56282b029840aae
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-20 13:49:25 +00:00
Jarek Kobus
c8b66ebc77 Doc: Adapt withTimeout() to the recent changes
Change-Id: I6abd9515735c8197411081f04618eb09c7b28069
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-03-20 13:24:00 +00:00
Marco Bubke
3722710c42 QmlDesigner: fix icon generation
One missed #ifdef for the project cache.

Task-number: QDS-12253
Change-Id: Ib9fe2ef085d1208c3676fb184cb15899fa89bbde
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 13:14:19 +00:00
Marco Bubke
7de2ae2ff4 QmlDesigner: Add more tracing to project storage
Change-Id: Iee113981ffa49b4f03b7641e7030a2f19f917fc6
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 13:14:08 +00:00
Christian Kandeler
230bfa88a0 CppEditor: Fix soft assert when serializing clangd setting
This was probably introduced by a merge commit.

Change-Id: I5360b8fb25aa9cfbf8e6d3563b0219152a144815
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>
2024-03-20 13:13:53 +00:00
Marco Bubke
26870406cd QmlDesigner: Trace project storage exceptions
Change-Id: I58c261bea4cca6c5bede0d2ad504be8bc687ddc6
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 13:13:27 +00:00
Marco Bubke
99def2c337 Sqlite: trace exceptions
That makes it easier to see what got wrong in the trace. So less
debugging.

Change-Id: I26ec3d6a6f81cbd20871260a2b32123343a20618
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 13:13:18 +00:00
Marco Bubke
1087375b28 Nanotrace: Add instant event
Sometimes we have events without any duration

Change-Id: Iae81585051129b5c6a7983dff5e45161d6b6c389
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 13:13:11 +00:00
Marco Bubke
645acc4fc4 QmlDesigner: Speedup fetchTypeId by 5x
We gave now sqlite some hints how to merge the tables. That makes them
much faster. Still it is quite slow but we could introduce a caching
table.

Change-Id: I1f75820a53d648621a82dd719e8d8deb97e8d207
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 13:13:03 +00:00
Marco Bubke
ef96d232e5 QmlDesigner: Enable removal of trace points
The value function could stop the optimizer to remove  the trace point.
The convert to string function is only called if there is a enabled
trace point.

Change-Id: I6ead32638438438602ac2116ffd353c6ed70b32d
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 13:12:48 +00:00
Marco Bubke
438a208ffb Nanotrace: Use static string for arguments
Adding many small strings to a string can have overhead because there
have been checks. A static string simply cannot grow, so that overhead
is removed. It has the drawback that it can overflow but in that case
simply no arguments are shown.

Change-Id: Ia9106b6c49e396453eeb75b28df5a543a28dc8c9
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-03-20 13:12:38 +00:00
Marco Bubke
14417135a4 Nanotrace: Use char append
Change-Id: I5a37eff39acd787265c5951237a3f17b3ea6eb5f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 13:06:58 +00:00
Marco Bubke
cea24ad00b Utils: Add char append to SmallString
Change-Id: I644db7635010da8bc29d87926a64c4e6939d7c83
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 13:06:46 +00:00
Thomas Hartmann
d72f55bbd0 QmlDesigner: Fix issues with dynamic vectors
The conversion from Qt.vectorxd was not strict enough
and expressions like Qt.vector2d(7 / Constants.width, 7 / Constants.height)
were read as [7, 7]. Reflection was not handled properly and the [7,7]
was written on selection.

Fixes:

* Avoid reflection
* Improve Qt.vector parsing; Move code to C++
* Handle "real" expression case and show binding indicator
* Fix setting an expression. We allow the binding editor/expression
  indicator only on the first component of the vector

Task-number: QDS-12242
Change-Id: I6707bdac860852d96d416adbe911d43fe9128e8a
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 11:25:04 +00:00
Marco Bubke
4fcff3adca Nanotrace: Use number append overload
Change-Id: I9da305ef75dda69ec21d0ef032adea2fa89c1023
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 11:14:13 +00:00
Marco Bubke
4fc1ca984f Utils: Add number Smallstring::append
Saves some overhead.

Change-Id: I7d46e41f29e66cd01f5a11f16e6f78ff7a4d0aa8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 11:13:53 +00:00
Marco Bubke
2520d5ce9c NanoTrace: Remove unused std::string
Change-Id: I7eddcf946b9519f11e61a71861977ad2714df4e5
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 11:13:39 +00:00
Marco Bubke
c9527e0341 Sqlite: Improve tracing
Change-Id: Id5d6ee448a7f2cf06cda2e2776f3dbbe7c8f66c4
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-20 11:13:33 +00:00
Marco Bubke
bfaef2cbb7 QmlDesigner: Add tracers for type debugging
It is really hard to debug the project storage because it gets so much
data. With the tracer is should be a little bit easier.

Change-Id: I79d60c6fbc32ba3fd7bdcc78916c1aa48f73e125
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-20 11:13:22 +00:00
Christian Kandeler
aaf839bcf0 CppEditor: Do not emit a signal when setting "categorize references"
This is not an actual setting and should not result in a signal emission.
Amends faa595e38b.

Change-Id: Ic3816ca80090594659be66f5558ce52b921c0f02
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>
2024-03-20 08:54:29 +00:00
Alessandro Portale
1b408947b0 Welcome: Design update round #2
User feedback was gathered and in part implemented in form of a design
update. Smaller fonts, icons and gaps in the projects/sessions screen
and in the examples tiles.

Change-Id: I69d0d9ae21ba855feceeb77d620aa5b556377808
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-03-19 18:33:11 +00:00
Thomas Hartmann
d114074afd QmlDesigner: Workaround issues with QJSValue in Qt 6.7.x
This forks code from Qt to fix an issue with JSValue.
We must skip QJSValues when iterating properties
since copying or constructing the QVariant crashes.

Task-number: QDS-12263
Change-Id: I8db701cee94dccd7fe254c9473dc25b87f8a04f8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-19 16:37:40 +00:00
Jarek Kobus
1f516cacf7 DeviceSettingsWidget: Don't leak QLayoutItem
According to docs for QLayout::replaceWidget(), the returned item
should be either deleted or inserted somewhere else.

Change-Id: I02da36dd0d3fe7de7fa04747d26ea01620349421
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-19 13:52:58 +00:00
Jarek Kobus
c2b94568d9 LinuxDeviceTester: Fix a crash on closing dialog when tryToConnect()
Make a call to tryToConnect() a yet another task inside the task tree.
Prolong the lifetime of the linux device until the tryToConnect()
running in a separate thread is finished. This fixes a crash
when canceling the test and closing the preferences dialog while
tryToConnect() is still running.

Amends e8ad29d3af

Change-Id: I5aca6c9c3de0792421b9774faf45cd463854265e
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2024-03-19 13:30:23 +00:00
hjk
2e86420052 Debugger: Add context menu entries to enable/disable all breakpoints
Fixes: QTCREATORBUG-30564
Change-Id: I8b0458eed859c23f1ef9d40c0ad7cbe6b61ecf90
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-19 13:21:39 +00:00
Cristian Adam
0a27bc2e78 Clang: Use -isystem for system headers
The project manager was passing correctly the system headers, but the
compileroptionsbuilder was ignoring them by having UseSystemHeader::No.

This change makes the project's view to be reflected in clangd's
compile_commands.json.

Fixes: QTCREATORBUG-30474
Change-Id: Ie3b80642e27ada4c8c8725f21e3cfbb2a4051aa0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-03-19 10:33:49 +00:00
Christian Kandeler
f5ba46ccbd CppEditor: Tell clangd about path to CUDA
At the very least, this fixes an ugly warning message for .cu files. May
or may not improve other things as well.

Task-number: QTCREATORBUG-23113
Change-Id: If389fd67a153f7da13e5d4d465189aaef352c976
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-19 10:20:54 +00:00
Miikka Heikkinen
dd31886649 QmlDesigner: Fix fly mode camera rotation direction
Flip x-rotation direction when camera is upside down to keep camera
rotation natural.

Fixes: QDS-12186
Change-Id: Ia9f166cafa27a09a4dd5a72dbb8ec28f00239564
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-03-19 09:23:43 +00:00
Eike Ziller
1573a92150 macOS: Remove usage of deprecated API
`NSApplicationActivateIgnoringOtherApps` is deprecated and doesn't have
any effect any more. Switch this to `NSApplicationActivateAllWindows`
which we actually want when running an application, and remove an
unneeded cast.

Change-Id: I75849533e4b172db577d5484ef12c8ee4df20d59
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-19 08:11:47 +00:00
Christian Stenger
27ce963481 Utils: Fix build with Qt6.4
Amends ba3f0bc841.

Change-Id: Ib405096a51f4c2583e9e3c281bfea8f6eaa44b48
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-19 06:29:48 +00:00
Jarek Kobus
d5e8f70192 VcsBaseClientImpl: Don't leak VcsCommand instances
The running VcsCommand may leak on shutdown. Make them always
a child of a guard object.

Change-Id: Ie2d07d15cd13f1c08636bb1e9c5face09c6a782d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2024-03-18 21:56:08 +00:00
Ahmad Samir
ba3f0bc841 Adpat to changes in QAbstractFileEngine/Iterator in qtbase
- Replace hasNext()/next() with a `bool advance()` method
- Replace QAFE::FileTime with QFile::FileTime, they are identical
- QAFE methods now return std::unique_ptr, which matches reality as call
  sites stored the pointers in a std::unique_ptr anyway

FileIteratorWrapper:
State::BaseIteratorEnd is only needed when using hasNext()/next(),
hasNext() changes m_status to State::BaseIteratorEnd, then next() checks
that and changes m_status to State::Ended; this isn't needed with
advance() since it's only one method.

Change-Id: I4414f334715237a2fc13ace6f4733d975e2cfaa3
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-18 13:15:14 +00:00
Marco Bubke
7448d44dc5 Nanotrace: Fix unsed arguments
The arguments must be set because we otherwise access old data.

Change-Id: I18e83297b80558b112af266bd50779bef8da9e94
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>
2024-03-18 13:01:35 +00:00
Marco Bubke
a08837e8bd Nanotrace: Use begin and end slices instead of duraction slice
If an exception is thrown or the program is abortet there is still the
begin of a slice. Because a duration slice is only wirtten at the end we
get no slice.

Change-Id: I8b05e9ae045517a503c2a6f00936b05715b812ca
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-18 13:01:27 +00:00
Marco Bubke
402ac58d05 QmlDesigner: Fix missing BreakTemplateDeclarations
Change-Id: I00c042e5e0a04705e3c2773dca5499d9bfa32949
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>
2024-03-18 13:01:16 +00:00
Marco Bubke
04cbe49267 Nanotrace: Fix dangling reference
As EventQueueData was derived from EventQueue the order of
initialization was inverted. So we got dangling pointer. Merging
EventQueueData into EventQueue fixes the dangling references.

Change-Id: I3d9cee492304132fa612d6d19324656df597ec99
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-18 13:01:04 +00:00
Marco Bubke
82b4d34c9c Nanotrace: Fix dangling tuple
The tuple are constructed on the stack, so we cannot hold references to
it.

Change-Id: Ia02bf21516c97eb67eca8fd56e68dbd10878ca9e
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-18 13:00:51 +00:00
Marco Bubke
244904303d QmlDesigner: Add lite designer to qmldesigner project management
Task-number: QDS-12102
Change-Id: I3abea3a5b32128db984a9b0c49b3044a42d9f72d
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-18 13:00:28 +00:00
Marco Bubke
15d0ab5358 QmlDesigner: Remove unneeded break
Change-Id: I051bf442870ce1ec429565bcbf15068d22eb16a9
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-18 13:00:21 +00:00
Marco Bubke
0cd74fe22e QmlDesigner: avoid extra widgetInfo() call
widgetInfo() should be cheap but people make expensive stuff inside the
call. So we should try to avoid to many calls.

Change-Id: I66b0a5431471732dca934fc03efb307e2617fd65
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-18 13:00:01 +00:00
Marco Bubke
f8d74b5a05 QmlDesigner: Avoid dangling pointer to the stack
Pointer to temporaries create dangling pointer. So we have to copy the
tuples. The leafes still only contain references.

Change-Id: I37900be569283324178e223829f913fb4ccba16e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-18 12:59:54 +00:00