Commit Graph

88532 Commits

Author SHA1 Message Date
Christian Kandeler
4b29ad78e3 CppEditor: Move ClangdSettingsPage alongside ClangdSettings
Change-Id: Ib22438817ff3a14904decbb23f3c2288f355e378
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-11 08:48:19 +00:00
Christian Kandeler
459cb82744 LanguageClient: Update call hierarchy on double click on item
This seems sensible and is also consistent with how the type hierarchy
widget behaves.

Fixes: QTCREATORBUG-28843
Change-Id: I2423fda68ab2a9624206b8c93f2490e1a7196173
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-04-11 08:46:44 +00:00
Mahmoud Badri
a2474d5984 QmlDesigner: Create user bundle folders if missing
Change-Id: I955b1f1e5db3208eb578172529771910453adf68
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-11 08:14:21 +00:00
Jarek Kobus
a583436365 TaskTree: Zero-initialize the Storage
Change-Id: I9d5ee11285b377abafe21d472481c941f49a5ae1
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-04-11 07:59:56 +00:00
Sami Shalayel
1e3750c5be qmlls: add checkbox for generating qmlls ini files
Add a checkbox to the qmljseditingsettingspage that generates qmlls
ini files by default for new projects.

If this checkbox is checked, then initial CMake configurations (when
enabling a kit for a project) and reconfigurations (when pressing the
"Re-configure with Initial parameters"-button) will set
QT_QML_GENERATE_QMLLS_INI to ON if QT_QML_GENERATE_QMLLS_INI was not
set yet.

Fixes: QTCREATORBUG-30394
Change-Id: I58f89558d25ef107e501bd67702f26554bd6aeaa
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-04-11 07:22:20 +00:00
Eike Ziller
403f5daf31 Editor: Open in different editor type after renaming or saving as
After save as, and when we get notified about a file rename, check if it
makes sense to open the document in a different editor type. This covers
the File > Save As menu item, as well as renaming in the project tree
and the file system view.

In principle this can happen when the MIME type changes (this could even
happen when the contents change, in special cases, but let's ignore
this).

Open the document in a different editor type if

- the document previously was opened in the default editor, and the new
file name would result in a different default editor type
- the document was not opened in the default editor, but the available
factories for the new name does not contain this

Do not use a different editor type, if it was previously open in a non-
default editor, and that is still valid for the new name.

Uses the openEditorWith functionality that is also used when a user
explicitly selects an editor type. This gives us all the details like
what happens if the new editor type fails to handle the file (e.g. when
renaming a text file to `.gif`).

Fixes: QTCREATORBUG-30317
Change-Id: I4c0b46da1e05165ac4f157dfa15b1783e0a3f3db
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-11 06:44:01 +00:00
Thomas Hartmann
ab6bd28b22 QmlDesigner Fix regression
There was code model based code for this check that was
hard to understand and accidentally removed.

We simply check if the property does exist.

Change-Id: I7fc0b414af526f15f0bf35006f6aee151506f660
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-04-10 18:39:34 +00:00
Jochen Becher
af54306f82 Add more visual attributes for relations
Change-Id: I56af6a367c144e22c8113f69a2938080ddb2e750
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-10 16:46:33 +00:00
Tim Jenssen
912082e6a8 Merge remote-tracking branch 'origin/13.0' into qds/dev
Change-Id: I1f6114244514a2b786a8b0d364a303b925ad7757
2024-04-10 17:30:10 +02:00
Tim Jenssen
682514a304 QmlDesigner: silence warning for empty images
Also correct logging category the default type is already
QtDebugMsg which adds .debug

Change-Id: I87803cd2fe9dc142ca8ce271547706f8d7cba3a1
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-04-10 15:26:57 +00:00
Thomas Hartmann
4f3bf836a9 QmlDesigner: Remove ScopeChain dependency for QDS_USE_PROJECTSTORAGE
* possibleImports() and usedImports() has to be implemented for the
  project storage
* getQMLSingletons() is not implemented for project storage and also
  does not belong into the rewriter.
* semantic errors are fully disabled for QDS_USE_PROJECTSTORAGE, since
  they require the scope chain.

Change-Id: I200ccbc1faf2631c4764a4676553a69cc0f5cf1f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2024-04-10 13:43:29 +00:00
Johanna Vanhatapio
2637c957f4 Doc: Update info on QDS presets
Task-number: QDS-11987
Change-Id: I7ba02b3823d2bfd127ec2ad7e86f4d3281d2801b
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
2024-04-10 12:01:48 +00:00
Johanna Vanhatapio
ee99974c77 Doc: Document Ext Scene Environment
- Document the new extended scene environment
- Update info on the basic scene environment

Task-number: QDS-11987
Change-Id: I65679e9e6ff7082f91775d097ff2cd455b6271c5
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-10 11:51:25 +00:00
Leena Miettinen
ac6a2aeae4 Doc: Hide a \sa from the QDS Manual
To fix a qdoc warning.

Change-Id: Ibbf7593cd65ac4e68b2543b13038c0d69b95376b
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
2024-04-10 11:19:42 +00:00
Alessandro Portale
82703befa1 Core: Add "UI configuration" section to System Information
"System Information..." provides the output of qtdiag. Among other info,
it contains DPRs and font DPIs. With support of the DPI rounding policy,
those values may deviate the IDE process. This makes the "System
Information..." output in a bug report potentially lack relevant
information.

Also, the StyleHelper::UiElement* font may vary depending on DPR/DPI and
other system settings. Since these fonts are used in the Welcome screen
redesign, precise information of these fonts is missed in reports
regarding the redesign.

This change adds a "UI configuration" section to System Information. It
contains most data from the "Environment -> Interface" settings page,
and in addition a dump of all StyleHelper::UiElement fonts.

Task-number: QTCREATORBUG-30579
Task-number: QTCREATORBUG-30637
Task-number: QTCREATORBUG-30650
Change-Id: Iff2c58903c5f8d5dbae4884b0521a8b85469b188
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-10 09:06:35 +00:00
Eike Ziller
0d17a1e6fd Update qlitehtml submodule
Fixes jumping to QML properties

Fixes: QTCREATORBUG-30625
Change-Id: I420a8c37607d732d8950b8eb2388eb68b4d0bf94
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-04-10 08:57:33 +00:00
Robert Löhning
4529644027 SquishTests: Stabilize tst_rename_file
If for some reason, the "Rename..." item in the context menu is disabled
when opening, it will not change to the enabled state later. One has to
open the menu again to get the then enabled item.

Change-Id: I86768186e18763a9b7bea9fb7032c268320807d3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-10 07:33:29 +00:00
Robert Löhning
355e3ecdf8 SquishTests: Rename object
to avoid strange errors when trying to use object.exists()

Change-Id: I919a7fe90e00daad2040b5e4f2c271de807aea16
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-10 07:31:30 +00:00
Robert Löhning
95df308bc3 SquishTests: Remove compatibility code for Python 2
Change-Id: Ibcf9a76fb163aa7167ad0ef0616c39b33c30d7c5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-10 07:30:00 +00:00
Leena Miettinen
e43c8c178d Doc: Split up "Using Squish" into how-to and reference topics
- Move general information to "Developing with Qt Creator"

Task-number: QTCREATORBUG-29361
Change-Id: Ia630346c6fc4e158215e1af77f4579f2a513a937
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-10 06:36:31 +00:00
Teea Poldsam
94b08f3f1d Doc: Update Design Views documents
- Update images, icons, and text.
- Remove summary and context menu topics.
- Reorganize the design views alphabetically in TOC.

Fixes: QDS-12363
Change-Id: I3ddb659ec872ebc554c5e7fbbf7cb31d7ebd9b05
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-04-10 05:08:49 +00:00
Christian Stenger
fc3047fb1b Ios: Fix qbs build
Amends e8d6e4fc34.

Change-Id: I67185c856a28071c2428ac593f54d31f99c3411d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-09 13:53:07 +00:00
Christian Kandeler
7bf7c4fbe3 ClangTools: Fix clang-tidy doc URL for versions >= 18
See https://github.com/llvm/llvm-project/commit/
4532617ae420056bf32f6403dde07fb99d276a49.

Fixes: QTCREATORBUG-30658
Change-Id: I4e171c52959d576ed752691d601ceb99691b207d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
(cherry picked from commit cde3cfea4d)
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-09 13:50:29 +00:00
Marco Bubke
7db0c8f742 QmlDesigner: Disable 3D views for lite designer
Task-number: QDS-12102
Change-Id: I4d339220127ce4cb1f5253c430ad8df372f1f0d6
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-04-09 13:41:21 +00:00
Marco Bubke
4e5a0cd02b QmlDesigner: Improve performance of prototype walk
The optimizer took quite often the slow join first. So now we have one
method to walk the prototype chain and then use the type ids in simpler
statements to get the end result.

Task-number: QTCREATORBUG-30599
Change-Id: I3e9d4ec85ba75801769eb8760fda6e0400300899
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-09 13:41:14 +00:00
Marco Bubke
91f3c4c5e0 QmlDesigner: Improve performance for alias property declarations
To avoid a full table scan we have to separate the where clause into
three statements and union them. So now it using an index for
everything.

Task-number: QTCREATORBUG-30599
Change-Id: Icdc368cda4c59e64c626da3c3dc093ee3ae95db4
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-09 13:41:06 +00:00
Marco Bubke
b341e372bc QmlDesigner: Improve prototypes statement
Task-number: QTCREATORBUG-30599
Change-Id: I025e654b39a3182c324b540ab3dc8aa24d32f589
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-04-09 13:40:58 +00:00
Marco Bubke
a1add0e137 QmlDesigner: Simplify resolving prototypes
Th optimizer of Sqlite can not see that both forms are the same. The new
form is creating an more performant version.

Change-Id: Ifbca0627c20a873aa1cee0851d876c919bef4f05
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-04-09 13:40:50 +00:00
Marco Bubke
b733be3b06 QmlDesigner: Add indices to improve performance
Otherwise we get a full table scan which is really slow.

Task-number: QTCREATORBUG-30599
Change-Id: Icbfb30e81420da585581d6250acbc4d88580c2f6
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-04-09 13:40:41 +00:00
Marco Bubke
6751fc82ef Sqlite: Prevent name collisions for indices
There can be unique and not unique indices with the same columns. So we
add that attribute to the name to distinguish between the indices.

Change-Id: I96eac1f0e95c135d625f09fd5399b16f2293d645
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-09 13:40:29 +00:00
Christian Kandeler
cde3cfea4d ClangTools: Fix clang-tidy doc URL for versions >= 18
See https://github.com/llvm/llvm-project/commit/
4532617ae420056bf32f6403dde07fb99d276a49.

Fixes: QTCREATORBUG-30658
Change-Id: I4e171c52959d576ed752691d601ceb99691b207d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-04-09 13:16:49 +00:00
Cristian Adam
ac97ab1abf CMakePM: Add build artifacts to the PATH env variable
Projects that have dll artifacts need to have the build paths added to
PATH so that the dependent executables would start.

Previously the code checked only if the dlls were present on disk, now
it also checks if the dlls are part of the project's build artifacts.

Fixes: QTCREATORBUG-30644
Change-Id: I924753ffaf0a9720acb70585ccd589abab1b9cc1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-09 12:59:15 +00:00
Mahmoud Badri
5a13304d72 QmlDesigner: Save a project material to content library
Fixes: QDS-12392
Change-Id: Ic84197bb1bcede6d3b06d1cff09f00617cc2a958
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2024-04-09 12:31:44 +00:00
David Schulz
411100b037 TextEditor: remove text editor action handler
Give each editor a context and register editor actions individually for
that context. This removes the need to tell the action handler the
current editor. Additionally all actions are now available in editor
widgets outside of the EditorManager.

Change-Id: I0109866b180889762f8bd8aa07874d8d7c55bfa6
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-04-09 10:52:26 +00:00
Alessandro Portale
c459e8d490 CtfVisualizer: Avoid precision loss warning
Change-Id: If0f97ec662350ab309219f6a740a7b3b77639262
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-09 09:12:11 +00:00
Thomas Hartmann
db04da3ba7 QmlDesigner: Remove Qt 6.2/6.3/6.4 from extended 3d wizard
Change-Id: Ic79d7ccf4183aafd30953dc65ad1bae4661c8f11
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-09 09:11:52 +00:00
Thomas Hartmann
932bdb339b QmlDesigner: Add support for Key enums
Change-Id: I602c44283a4f8978d76117fd5b885ef34d377857
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-09 09:09:21 +00:00
Ali Kianian
3494f37b18 QmlDesigner: Set the color data by the first commit in Model Editor
The color didn't use to be saved by the first commit. The problem was
that the ColorEditorPopup uses a backendValue, which usually is
provided by the property editor items. Here this backendValue is faked,
to be used by the internal modules.

Fixes: QDS-12018
Change-Id: I77bd0e2992f31f2fa4da7b1d7a5f0667f6923085
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Shrief Gabr <shrief.gabr@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-09 09:00:32 +00:00
Christian Kandeler
7bb017677d ProjectExplorer: Fix device display name value acceptor
Fixes: QTCREATORBUG-30622
Change-Id: Idac04c9823f5e1136102be3a2ad810a6f782c0fd
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-04-09 08:19:28 +00:00
Christian Kandeler
42edb0dd61 CppEditor: Make renameIncludes() also work for moved files
Task-number: QTCREATORBUG-26545
Change-Id: I0bfe203af8f091562cdd91411dbe502fc5a76956
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-04-09 08:18:30 +00:00
Eike Ziller
dd876dc405 Doc: Adapt to removal of iOS Simulator management
Amends e8d6e4fc34

Change-Id: Ia3cc2388ded5643aaaa129e9d11da4ac28d6d008
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-04-09 08:16:11 +00:00
Jussi Witick
574ad7a4a2 Fix QSR wizard cmake-project template
Latest changes to QSR tooling added limit checking for certain properties,
so the cmake-project template needs to be updated slightly.

Additionally remove the import versioning.

Task-number: QSR-2398
Change-Id: I55542c9fd74ebd950b6aeb9b64a22dde177c5a4f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
2024-04-09 07:59:50 +00:00
Eike Ziller
e8d6e4fc34 iOS: Remove simulator management from settings page
Simulators can be managed via Xcode, which must be installed anyway. Re-
implementing this functionality is not useful, error-prone, and a
maintenance burden. Point users to the corresponding Xcode documentation
instead.

Add a button for updating the list of simulators in the run configuration
settings (which didn't update when simulators were changed in Xcode).

Change-Id: I5a861f21851bb866d45a703f46bb20ed5df960e8
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-04-09 07:36:26 +00:00
Marcus Tillmanns
0be8e6ed01 ProjectExplorer: Always return a build folder
The error handling is done elsewhere.

Change-Id: Ie5fa937faf6447458117d355f1c6044c2f2d88ac
Reviewed-by: hjk <hjk@qt.io>
2024-04-09 06:26:02 +00:00
Marcus Tillmanns
d3279f1e0b FilePath: Improve speed of ::relativePathFrom
Change-Id: Ie7aef2aeb01251edd6825fcd56a73ab65b57cbf5
Reviewed-by: hjk <hjk@qt.io>
2024-04-09 05:32:55 +00:00
Marcus Tillmanns
1c905c6980 Utils: Shortcut File reading
If the device can point us to the local equivalent of a file we can
read that one instead.

Change-Id: I002b5babae13677d5814b639ca40a62f23a8b374
Reviewed-by: hjk <hjk@qt.io>
2024-04-09 05:32:36 +00:00
Christian Stenger
7fd42c3e32 Utils: Fix build with Qt6.4
Amends ba3f0bc841.

Change-Id: Ib405096a51f4c2583e9e3c281bfea8f6eaa44b48
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
(cherry picked from commit 27ce963481)
2024-04-09 04:47:19 +00:00
BogDan Vatra
e0f700406c Don't block the main thread for too long
When copying lots of files the ui hangs util all of them are copied.

Change-Id: I5c88ec4ad1d8425b5f65eb26a360af138309f200
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-04-08 13:27:09 +00:00
Mahmoud Badri
bc5628afca QmlDesigner: Add content library user materials bundle
Fixes: QDS-12389
Change-Id: Icec1b06c57e0eaa4ff444e3143d3cba0803c8dd1
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2024-04-08 12:13:16 +00:00
Ahmad Samir
6babc022d5 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>
(cherry picked from commit ba3f0bc841)
2024-04-08 11:34:27 +00:00