Commit Graph

72811 Commits

Author SHA1 Message Date
Miikka Heikkinen
74761b0e64 QmlDesigner: Add fly mode for 3D view
You can now activate fly mode in 3D view by pressing right mouse
button. In fly mode, cursor is hidden and mouse controls edit camera
rotation directly, and WASDQE can be used to move the camera around.

Fixes: QDS-12030
Change-Id: I52550502632af19de36a1557d9aac84ff3cb18cc
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-07 10:37:26 +00:00
Jarek Kobus
d32a5ebb35 Axivion: Suppress the network error logging on unauthorized access
This is a valid path to try the unauthorized access first,
and when it fails we automatically try the authorized access.
So we shouldn't bother the user with an error on a failure
on unauthorized access to the dashboard info.

Change-Id: Ia27686f804415741da614e36802551f8d8d610ed
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Andreas Loth <andreas.loth@qt.io>
2024-03-07 09:08:32 +00:00
Marcus Tillmanns
10da1ef3ff Android: Make errors visible
Change-Id: Ic0a1ebbc932c5854f7b41572a96a1c6b6c8896a0
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-03-07 09:00:29 +00:00
David Schulz
876159cea9 Revert "Revert "TextEditor: Use synchronous highlighter by default""
The crash in the syntax highlighter was resolved so we can switch the
default back to synchronous highlighter.

This reverts commit 0539e2a0f6.

Change-Id: I2e9cdb818420a14d01565d58def14f88cf5e895d
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
2024-03-07 08:37:59 +00:00
Jarek Kobus
2cf2843b38 CreateSimulatorDialog: Skip explicit call to waitForFinished()
This is done by the FutureSynchronizer d'tor, so no need to call
it explicitly. Move the FutureSynchronizer as the last field of
CreateSimulatorDialog so that its d'tor is executed first.

Change-Id: I861e4c6498b63909fe52965ca16343ef82d20b42
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-07 08:20:26 +00:00
David Schulz
2428db2a30 TextEditor: Fix crash in SyntaxHighlighter
The SyntaxHighlighterRunner is deleted by deleteLater in the
TextDocument destructor. This makes it possible that the
SyntaxHighlighter inside the runner lives longer than the document
itself. Avoid this by making the document the parent of the
SyntaxHighlighter like before the async highlighter patch series.

Fixes: QTCREATORBUG-30494
Change-Id: I6ce9c35ab400b17f2a1a6f3c3bd98df23f41c71e
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
2024-03-07 08:20:07 +00:00
Christian Stenger
f35962cfb3 Core: Fix handling of high dpi for self provided cursors
When using the cursors provided by QC we should scale them according
to the pixel ratio otherwise the icons appear too small.

Task-number: QTCREATORBUG-29980
Change-Id: Ia9de8a5adf4bbd457971260edc52f824ddb7564f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-07 07:49:33 +00:00
Christian Stenger
c87435f971 Core: Tweak cursor handling of mini splitter
It is possible that the internal signals are missed which
results in a stale cursor until it gets changed again.
Explicitly handle the hover event and set the cursor there.

This also makes the need to restart QC obsolete when toggling
the respective option.

Task-number: QTCREATORBUG-29980
Change-Id: I51dfa6fda018a325d43cddae99f395cd8c0accde
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-07 07:49:18 +00:00
The Qt Project
71a02b4f02 Merge "Merge remote-tracking branch 'origin/13.0'" 2024-03-07 07:34:23 +00:00
Alessandro Portale
9832af9701 Welcome: Derive Core::Button from QAbstractButton
Enable a hover effect on macOS and remove the need for the setFlat hack.

Change-Id: Iea77ccaddcff0e9ad9299ffda8584160dca6413a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-07 06:57:51 +00:00
David Schulz
0539e2a0f6 Revert "TextEditor: Use synchronous highlighter by default"
This reverts commit 1c47a0a301.
Changing the default revealed a crash that seem to be caused by the
async syntax highlighter infra structure changes. Revert the default for
now to figure out the cause of the crash.

Task-number: QTCREATORBUG-30494
Change-Id: I1d0388c29d206cb25f2d58e4b305aa8303db2a60
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-06 21:04:56 +00:00
Alessandro Portale
cc30e923ff Welcome: Also hide separator lines when collapsing top- and side areas
This moves the separator lines into the respective areas, so that the
lines also disappear when their area collapes. Looks cleaner (for pixel
obsessed people like me).

Change-Id: I314c2c462767666638eae57087606f2a6ca4ae4a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-03-06 19:40:24 +00:00
Dominik Holland
e3f099b8f3 AppMan: Fix crash when using a qmlproject
Limit the Deploy Configuration and the CMake step to CMake projects.

Change-Id: If198dc2e4277861f2aa9183c5eeed0cc1d40727c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2024-03-06 17:18:45 +00:00
Alessandro Portale
19feaad265 Android: Register AndroidDevice creator regardless of SDK state
The AndroidDeviceFactory only registered the AndroidDevice creator
function if the Android SDK was correctly set up. That check occurred
only once during the Qt Creator start up sequence.

As a consequence, Qt Creator had to be restarted after an initial set up
of the Android SDK. Users are not notified of such requirement, and we
actually don't want to enforce a restart.

With this change, the AndroidDevice creator function is always
registered, and the "Add Android Device" wizard always selectable. Users
who try to add an Android device without having set up Android before
get to see an info message box.

Change-Id: I0600e36575c2dd075af9398597c3c8dab3bb243d
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-03-06 15:28:53 +00:00
Eike Ziller
8abc95331f Merge remote-tracking branch 'origin/13.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	src/plugins/cppeditor/cppcodemodelsettings.cpp
	src/plugins/cppeditor/cppcodemodelsettings.h

Change-Id: I54937c39b06897a72a105e4e0a8b5f8a76c38e26
2024-03-06 15:10:15 +01:00
Marco Bubke
af9ce82245 QmlDesigner: Fix legacy NodeMetaInfo::componentFileName()
Instead of NodeMetaInfo::componentFileName() you should use
NodeMetaInfo::sourceId() with the new code model.

Change-Id: I22d14e53bd7a0a68425d8586c00d859f49d1d421
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-03-06 13:13:29 +00:00
Thomas Hartmann
f6528007af QmlDesigner: Remove ContentNotEditableIndicator
The indicator was used for tab views of controls 1.
There is no current use case. We have seen
crashes related to the indicator.

Change-Id: I0466aecfd5ae598e07ebbfe8d1277ce23116e183
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2024-03-06 12:29:01 +00:00
Artem Sokolovskii
bb87db09e2 SyntaxHighlighter: Add rerun if highlighting was interrupted
Added mechanism of highlighting restart when the previous
highlighting was interrupted.

Change-Id: Ic44c06442fd9f0002fed760472d5d39903e7ef50
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-03-06 11:52:41 +00:00
Thomas Hartmann
cf67c1aee6 QmlDesigner: Fix crash
Task-number: QDS-12167
Change-Id: I413abcbedb37366fe433b8f30c0e596fa35de846
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-06 11:14:06 +00:00
Thomas Hartmann
68663b312c Core: Only show design themes in Qt Design Studio
Task-number: QDS-12156
Change-Id: Ie2794104fa3f60537652d28f908cf5300540f530
Reviewed-by: Brook Cronin <brook.cronin@qt.io>
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-06 11:13:20 +00:00
Eike Ziller
e31a06a0f4 Android/ProjectExplorer: Fix crash when removing multiple Android Qts
That were configured for a project.

The crash is triggered by a messy combination of the Android automatic
kit creation, project window update, and automatic creation of Qt
versions and kits by the automatic project importers, including a mess
of the listener pattern without any atomicity.

- the user removes the Qt versions
- the Android plugin updates the automatic kits and individually reports
  the removed kits (*)
- that triggers an update of the project window and an update of the
  target setup page (even if that is not shown, but that's yet another
  issue)
- that triggers the project importers, which add Qt versions, which in
  turn triggers another update of automatic kits in the Android plugin -
  while that is still in the reporting loop at (*)
- that leads to the crash, because the state at this point of time is a
  mess

This minimal fix of the specific crash makes the kit update reporting in
the Android plugin at (*) "more atomic", and the same for similar code
in the iOS plugin.

Fixes: QTCREATORBUG-30347
Change-Id: I2bea6fb735abcaa34469fc43f44aa37313f70429
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-03-06 10:46:44 +00:00
David Schulz
1c47a0a301 TextEditor: Use synchronous highlighter by default
Change-Id: I796800972668d4cad9dd12aa4fcc9395febcce0f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-06 09:52:02 +00:00
Eike Ziller
7b8f274b9e Help: Update qlitehtml
Includes layout fixes

Fixes: QTCREATORBUG-30459
Change-Id: I561e018f7c99a00048db04643fc3d62c3282e509
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-03-06 09:40:18 +00:00
Alessandro Portale
3c94f63e67 Android: Guard against assert due to invalid access
Change-Id: I4f98f18b786c95acae09a3be3b924953f1292e61
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-06 09:06:57 +00:00
Alessandro Portale
db307978bf Android: Send suspend/resume instead of threads in handleJdbSettled
"threads" causes an exception in my jdb on my machine. "suspend" and
"resume" do not, and they also cause enough delay for JDB to settle.

Change-Id: I5297d720c5fdbe5ee2eaa421624491af50bc40bf
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-03-05 20:17:54 +00:00
Cristian Adam
97db1645ad Android: Log jdb communication
Change-Id: If4833de2b65e57dd55c58c82bf707e57d4561031
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-03-05 20:12:57 +00:00
Cristian Adam
21e48c1a59 Android: Enable writing to the jdb process
Amends 97461f6f18

Fixes: QTCREATORBUG-29928
Fixes: QTCREATORBUG-30405
Change-Id: I3d4dad5bbc72a17f1246510ba10370811fda293a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-03-05 18:11:23 +00:00
Marcus Tillmanns
9bb85fabf7 Welcome: Don't hide Links
Fixes: QTCREATORBUG-30466
Change-Id: I399826d67e1bb7eba7ef96f3fd0717d08133a3de
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-03-05 14:23:38 +00:00
Yasser Grimes
124c62a5a0 McuSupport: Fix kit creation dialog crash
Use copies of messages to avoid their reference going out of scope
Fix increment current message index for when there is only one
message

Fixes: QTCREATORBUG-30360
Change-Id: I26fac50ed171aaed7d178cc8f97ace401bf49e7c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-05 13:43:24 +00:00
David Schulz
3517123ff4 LanguageClient: fix assist provider leak on client destruction
Change-Id: I2d932c2123f48a65be1c6406ed669feda03c93ea
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-03-05 13:32:48 +00:00
David Schulz
118e39cae2 LSP: fix placeholder key
see https://microsoft.github.io/language-server-protocol/specifications/
lsp/3.17/specification/#textDocument_prepareRename

This fixes the empty replacement input field when renaming a global
symbol with current clangd from the llvm main branch.

Change-Id: I6539a17c6172e7c96088645ab7234d9b0213170c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-03-05 13:32:17 +00:00
Eike Ziller
911c486ff0 Qt/Help: Fix the "Highest Version Only" setting for the online installer
The Qt support has the option to only register the documentation for
"the highest Qt version", which is enabled by default.
That is based on finding the help files for registered Qt versions and
only registering the right set depending on the settings.

Unfortunately the online installer additionally registers the Qt
documentation path as a separate documentation set in the install
settings. (This was originally introduced to support documentation for
components that are not directly related to a Qt version.) The Help
plugin that handles this setting doesn't know that the Qt support
explicitly doesn't want the documentation of some Qt versions
registered.

Let the Qt support explicitly tell the Help plugin about documentation
files that should not be registered, even if they appear in the separate
install setting.

Change-Id: I0512adc0dfe9969481ce83094f5349a49aae5d9f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-05 13:09:43 +00:00
Artem Sokolovskii
25c0fc9c45 Android: Add output about JDK path issues
Change-Id: Ib72c5e8e2e23aa1f24d5181a060c72aaa2006d37
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-05 13:06:05 +00:00
Eike Ziller
ac67df7e73 main: Fix leaking of a QtcSettings object
Amends b619f24396

Change-Id: Ic93d33a09eb2b49dd899470ba88f3a7d71f5400d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2024-03-05 12:34:57 +00:00
hjk
feeb72d78c Debugger: Rework timeout handling
Extend the range to start with 10sec, but default to 40secs.

Change-Id: Iede37afca0da2c9ba8fc0bb3fda65d403b8d0bcc
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-05 12:14:56 +00:00
David Schulz
3691053760 TextEditor: fix finding whole words
'_' was handled as a word separator, in contrast the global search did
not. So the user received different results when using find toolbar or
the advanced search while searching with the same option and pattern.

Fixes: QTCREATORBUG-10276
Change-Id: Ie07303fbaa35475bb98bdb813358169474c3ba1d
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-03-05 11:48:49 +00:00
Marcus Tillmanns
568118af8b Terminal: Fix copying Japanese text
Previously if you tried to copy text such as "惣流・アスカ・ラングレー"
an invalid char would be added after each character. This patch
fixes the code so that "-1" cells are ignored.

They are created because the previous cell had a width of 2.

Change-Id: Iff8e60d3a4080068e188b08ded13a8c78df952f2
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-03-05 10:24:41 +00:00
Thomas Hartmann
f6a377a322 QmlDesigner: Fix regression in ConnectionModelBackendDelegate
Since we do not set the parent anymore, we have to keep
the model as a member.

Change-Id: I1a850b82366c4c1e26c4b5fe42e61f40adf47baf
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-05 09:34:29 +00:00
Eike Ziller
db5ac2dc15 Utils: Fix build on macOS < 13 with C++20
The Clang implementation of span is incomplete until
LLVM 15 / Xcode 15 / macOS 13.5

Change-Id: Iac8514fc84643cb4dae9cfaac603df5e798f9ff4
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-05 08:09:18 +00:00
Marco Bubke
b3718ad783 QmlDesigner: Enforce lite plugin if lite is enabled
You need to remove the build or set the project storage option too.

Task-number: QDS-12102
Change-Id: I45eb30fa18f56c170344afdaf94275b944230fa5
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-03-04 17:22:23 +00:00
Marco Bubke
d4426f3424 QmlDesignerLite: Add plugin
If the Qml Designer Lite plugin is loaded a flag is set in the qml
designer base plugin. That flag then can be used to change the qml
designer plugin.

Task-number: QDS-12044
Change-Id: Ie685a4308637fe6b51a489dcddbe6830fd1a1533
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-04 17:22:05 +00:00
Marco Bubke
12760b3032 QmlDesigner: Add explicit ownership to binding editor
It is much better to desribe the ownership explicitly instead of using
the hard to read parent child mechanism.

Change-Id: I488a6ca1fb08f4bf3b3a540c0bb7d9ffb03895d0
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-04 17:21:52 +00:00
Marco Bubke
f6025c4e04 QmlDesigner: Use automatic resource management to color tool
Change-Id: I1915577cf06769e69cad41639c5ca170b2d2dae8
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-04 17:21:39 +00:00
Burak Hancerli
bfb5a152c9 QmlDesigner: Unify Qrc and Qmlrc package builders
This patch removes the redundant codes from qtquick-components and
qmldesigner and merges them under qmldesigner.

Task-number: QDS-11990
Change-Id: I52ba6754182410ac7fadb2e891539e42ef821edf
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-03-04 15:45:48 +00:00
Thomas Hartmann
9517e82d86 QmlDesigner: Remove Core depedency from QmlDesignerUtils
Change-Id: I8affc32f5a3231884314f2d3b4b13d0061a169dc
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2024-03-04 15:17:01 +00:00
Thomas Hartmann
61038a42f1 QmlDesigner: Use simplifiedTypeName instead of qualfiedTypeName
This reduced the number of corner cases.

Change-Id: I12f6622577caf3b5e661cbe13479893d37f02dc3
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2024-03-04 14:32:06 +00:00
hjk
6d6ec00cdb Core: Wrap moribund dialogs into QPointer
There's no guarantee that items in the collected list don't die for
other reasons before it's their turn in the loop.

Change-Id: I5e81a25c3c205646eece30d6dd1a95f4b97eda05
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-03-04 14:17:45 +00:00
Eike Ziller
c4e8963d8d Remove unneeded version checks
After we raised the minimum Qt version.

Change-Id: Ife81a25c3c205646eece30d6dd1a95f4b97eda01
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-03-04 14:16:15 +00:00
Mahmoud Badri
0db0e06592 QmlDesigner: Fix effect composer doesn't open by double click
Fixes: QDS-12158
Change-Id: Ie3512cd933438806cbf7dd7f44ca4dab2546df3d
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2024-03-04 13:34:54 +00:00
Christian Kandeler
fbe244fd46 Cpp Editor: Fix serializing clangd settings
A "store with default operation" makes no sense on the level of the map
itself, as it does not have knowledge about the current on-disk
settings.
This reverts commit a4fbc5f00d.

Change-Id: I008b0b5c24428c71182dac5d1f151d25cf4f7467
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
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>
2024-03-04 12:47:13 +00:00