Commit Graph

80509 Commits

Author SHA1 Message Date
Tim Jenssen
f396b0b742 qmlpuppet: add .tag reading for GIT_SHA
Change-Id: I29f0663b9bbc6f68c7f802fa8fef4b12e091ee61
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-12-21 11:01:00 +00:00
Tim Jenssen
01b71195f0 qmlpuppet: fix include if crashpad is enabled
#include <windows.h> should come after #define NOMINMAX
not sure why it was necessary as an explicit include
it should come by the crashpad includes

Change-Id: I53ccdd893e9d8e5d5fadd46f5a5f5c0c21af0cc5
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-12-21 11:00:55 +00:00
Knud Dollereder
a049dbf8d3 QmlDesigner: Fix Navigation event filter for some Linuxe
Change-Id: I4d629c5ec6866e497949455ef3cd59a216ffdbb6
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-12-21 09:16:31 +00:00
Tim Jenssen
e16af85f32 qmlpuppet: fix Qt5 builds
Change-Id: Ie3fedef867bf2327b145b4ef4e5b282858076b23
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-12-21 06:44:50 +00:00
Tim Jenssen
74da3abb32 qmlpuppet: fix crashpad build
Change-Id: I02f5abce80d4ccc1ea711e1dcb01946d53f8b5a7
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-12-21 06:44:40 +00:00
Alessandro Portale
50ebf1f824 Utils: Show macroExpander icon only on non-readOnly StringAspects
Change-Id: Ib9c22c8e7b73c166452b4b18341fc81673c55535
Reviewed-by: hjk <hjk@qt.io>
2022-12-20 19:32:51 +00:00
Alessandro Portale
9eb3cb1acc Android: Remove Service management from AndroidManifestEditorWidget
Any manipulation of an AndroidManifest.xml document in the
AndroidManifestEditor would heavily modify present <service/> entries.
Even if the Service widget is not used. Furthermore, the service
handling code would filter out any present white space.

A visual XML editor must keep any present information (ideally also
formatting and white spaces) intact and should only apply the minimal
amount of change when saving. This can be challenging if the loaded
AndroidManifest.xml has before been hand-edited. Implementing and
maintaining a visual XML editor requires much effort. It has to be
considered if such effort is reasonable for a specialist feature like
creating Android services, especially since the "Manifest elements
reference" is very well documented on developer.android.com and the Qt-
specific parts in the Qt docs.

This change removes the service management from the
AndroidManifestEditorWidget. A good, text-based XML editor that
considers the AndroidManifest schema is a valid substitute.

Fixes: QTCREATORBUG-28024
Change-Id: I73ce5b5c548c5bee6fb7fe2d50d83e0ca3937208
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2022-12-20 19:32:20 +00:00
Artem Sokolovskii
3f340616d5 plugins: Remove foreach usage
Change-Id: Idf60caed3b5f4ec4c6e990a9e3188487bcc824f8
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-12-20 17:27:01 +00:00
Henning Gruendl
d77cdc88d7 qmlpuppet: fix build
amends last commit

Change-Id: I057912c49526d386707b893227f16410297d7b18
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-12-20 15:59:57 +00:00
Tim Jenssen
1262c68f2e qmlpuppet: fix standalone build
app_version.h is not generated and found if a build
just for the qml2puppet target is requested

Change-Id: I9ef164d8e0c698d43eae74d2522029f9eff0f397
Reviewed-by: Burak Hancerli <burak.hancerli@qt.io>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
2022-12-20 14:12:24 +00:00
Samuel Ghinet
f9a0b325d7 QmlDesigner: Fix the right margin for the AssetsView
Task-number: QDS-8352
Change-Id: If08cf7c39cea9dde8e241214c775685b4b1fd4f8
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-12-20 14:02:42 +00:00
hjk
2b97f69796 Debugger: Merge GDB and GDB Extended option pages
Change-Id: I0d4c041cec9ea01e1310f08a4ee87ed8080976bd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-20 13:26:09 +00:00
Amr Essam
c4cc576825 QmlDesigner: Create default effects folder in assets library
Task-number: QDS-8166
Change-Id: I12bf86ec5983642295a20d254f06d0a4ab6ccdb1
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-12-20 13:06:57 +00:00
Cristian Adam
44d2f15108 CMakePM: Update configuration failure message
The error message was not translated. Also expanded the failure message.

Change-Id: I79307d942d047311314f70d629ff443ee0a7b2a5
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-12-20 12:00:22 +00:00
hjk
0bc9d493aa Debugger: Move backend-specific option pages to the end
<generic> <gdb> <cdb> <generic>  was an odd order.

Change-Id: Ic3a998e4753118c26250f9e4c764495c70b870f7
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-20 11:58:22 +00:00
Marcus Tillmanns
d63b2ca51f ClangFormat: Parse clang-format file when needed
Previously the .clang-format was parsed even if there is an override
active.

Fixed .clang-format to follow style-guide more closely.

Change-Id: I39c5e5793cfe9e8a996e084e4ba169231a9bcebb
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-12-20 11:39:33 +00:00
Mahmoud Badri
e4af787ff6 QmlDesigner: Add image info to content library texture tooltip
Fixes: QDS-8489
Change-Id: I1afbf91ad12839cc93a46f0a608ab3bda135b76b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-12-20 11:29:30 +00:00
hjk
f81724f458 Debugger: Make android std dumpers refer to libcpp
Amends af881688e5.

Change-Id: If207dd04e37e5f80f68b374fe66fd3beec330ead
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-12-20 11:19:46 +00:00
The Qt Project
0cd9df5030 Merge "Merge remote-tracking branch 'origin/9.0'" 2022-12-20 10:59:15 +00:00
hjk
33eb5ff391 CMake: Move CMakeInstallStep definition to .cpp
It doesn't have to be a Q_OBJECT. Smaller interface. Also de-noise a bit.

Change-Id: I70c056e76646e9de166ded46f6fd4f448a804112
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2022-12-20 10:23:23 +00:00
Eike Ziller
3f4c3a3db4 Merge remote-tracking branch 'origin/9.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/texteditor/texteditor.cpp

Change-Id: I9c8f1331be3f5442f1fd28aeb0a9bc07128629d1
2022-12-20 11:05:01 +01:00
Eike Ziller
68e15e613f Remove unneeded .pro/.pri files
Remove qtcreator(_ide_branding).pri, and all remaining .pro/.pri
files that depend on it.
They have CMake files now.

Change-Id: I87d100b49df7ca95694a755cb581cb5eea26aa9a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-12-20 10:00:05 +00:00
Eike Ziller
77dfa71f06 Deploying Qt: Clean up .cpp.o(bj) files when deploying Qt
These files are required when building against some static libraries
that Qt ships. Since we don't link against these libraries, we used to
remove them when we install Qt, but starting with Qt 6.5 some of these
files are required by the Qt CMake files, and configuration would fail.

So, we now have to remove them when deploying Qt, instead of already
when installing Qt.

Change-Id: Ie38ab3735b86df0372b946d6a808007b5ec84b88
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-12-20 09:58:28 +00:00
hjk
c83e66d45f Debugger: Update "known functions" to skip
Fixes: QTCREATORBUG-26821
Change-Id: I12e895034bcf3896caef75f38364cbc9a4484ae5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-20 08:51:14 +00:00
hjk
7e1fb3aaaa Utils: Use std::variant for environment changes
Change-Id: Ibdac141c5ef2dc2fa4c163e059f746dfb6f9625d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-20 08:25:57 +00:00
Cristian Adam
68eb983b5d Revert "Utils: Remove some fallback code that uses a full remote env"
This reverts commit 192605f01c.

Reason for revert: breaks tst_utils_deviceshell

Change-Id: Iafae2aa8da09c23746dccd170e10ea07ffb71ed3
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-12-20 06:33:43 +00:00
Samuel Ghinet
4a5359cb86 QmlDesigner: Extract asset type stuff from the AssetsLibraryModel
This is in preparation for the task that will show metadata of assets.
The functions for checking the asset type have little to nothing to do
with the model. This change will also clean up the code a bit.

Task-number: QDS-8177
Change-Id: Ibab28f5b63228f626f517a59e2442d2718c2fc07
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-12-19 16:39:51 +00:00
hjk
e7b4ccf608 QmlProjectManager: Fix starting .qmlproject on Boot2Qt
The "qmlscene" is called "qml" nowadays. Also give device settings
more priority to cover cases where there is no Qt build setup at all.
For this case, also demote the missing Qt build version from "Error"
to "Warning".

Task-number: QTCREATORBUG-28074
Change-Id: Ic44d2bee1965493925d21317d12d5c1f66ace88b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-12-19 16:23:28 +00:00
Cristian Adam
aa1690ec7b qml2puppet: allow Qt Creator build without QtQuick
Only require the full dependencies for a standalone build of qml2puppet.

Change-Id: I2a158b36fa674db6d655b753afe205f419c0a113
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2022-12-19 15:41:24 +00:00
Amr Essam
fb12660b0a QmlDesigner: Enable integration of the new create effect system
- Remove old New Effect item from new file dialog
- Add license checker for creating effects

Task-number: QDS-8675
Task-number: QDS-8676
Change-Id: I83ed2c4021c9df3896018da19fbff76be92a7431
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-12-19 15:06:53 +00:00
Ali Kianian
0887174727 QmlDesigner: Add "Group/Single selection" to the 3D context menu
- "Toggle Group/Single selection mode" option is added to the
3D Editor's context menu.
- All 3D actions are pushed into a map and are accessible by
View3DActionType as the key.

Task-number: QDS-8200
Change-Id: Ia5071ef8901b926ee4e4889fd840fc49c859bccd
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-12-19 14:34:40 +00:00
Miikka Heikkinen
970af9e64d QmlDesigner: Fix state preview rendering with multiple View3Ds
Multiple View3Ds with shared resources such as materials don't always
properly dirty themselves when a shared resource changes. Work around
this issue by rendering the base state twice if there are multiple
View3Ds.

Fixes: QDS-8618
Change-Id: I3840a082ff8e55557afe5a5f139382d82cd6b184
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-12-19 14:13:21 +00:00
hjk
d53842d512 QmlProjectManager: Re-organize fallbacks for runtime search
This was getting messy.

Change-Id: Idce960b393fa02c5a032bb3a0c93929604d77f17
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-12-19 14:00:55 +00:00
hjk
6a4123a96f QmlProjectManager: Even more FilePath use
Change-Id: I4990b9171598d7f277f8e8e5a2b3e0fb1a3375d0
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-12-19 14:00:39 +00:00
hjk
5c7c102f3e QmlProjectManager: Fix starting .qmlproject on Boot2Qt
The "qmlscene" is called "qml" nowadays. Also give device settings
more priority to cover cases where there is no Qt build setup at all.
For this case, also demote the missing Qt build version from "Error"
to "Warning".

Task-number: QTCREATORBUG-28074
Change-Id: Ic44d2bee1965493925d21317d12d5c1f66ace88b
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-12-19 13:59:38 +00:00
Amr Essam
08d4eab619 QmlDesigner: Create menu for Effects creation in the Asset Library
- Add menu item for effect creation instead of new file dialog
- New effect dialog with validating qml file name with qml naming conventions
- Open Effect Maker automatically when an effect is created

Task-number: QDS-8490
Task-number: QDS-8578
Change-Id: I04b075a0b283318906f309c7d394eda48577ae74
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-12-19 13:57:59 +00:00
Cristian Adam
a0afd51f3f CMakePM: Add "CMake Install" deployment step
This commit adds a "CMake Install" deployment step, which is using
"cmake --install" command.

"cmake --install" command has been added in CMake 3.15, this is why the
minimum CMake version has been updated to 3.15.

Note that CMakeBuildSystem::makeInstallCommand is still using cmake --
build --target install due to a CMake bug regarding "Ninja Multi-Config"
generator, which doesn't intall all binaries via "cmake --install".

Fixes: QTCREATORBUG-25880
Change-Id: I504674c380055d8ef136d344a78b80c17ecf9765
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-12-19 13:57:43 +00:00
Cristian Adam
2eb2aa13ae Qml2Puppet: Fix configuration when qml2puppet is disabled
Setting a property on a non existing target is a no go.

The changed done in 5b6bf29143 got somehow
removed by 036948c628

Change-Id: Id6d09b27817fa2c1f2c2c13127994710f5a2981a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-19 13:57:28 +00:00
Sami Shalayel
90b8e482c9 qml code model: load builtins import
LinkPrivate::linkImports() would either load the <builtins> or the
<defaults> module, but only process the <defaults> module in
LinkPrivate::populateImportedTypes().

Note: The <defaults> module (from the package '<default>') is the
QtCreator magic replacement for the actual <builtins> modules
(from the package 'QML').

This means that if the <defaults> were loaded, then QtObject would
be recognized as an object from QtQuick.
On the other hand, if the <builtins> were found, then neither
<defaults> nor <builtins> would have been imported and QtObject
would not have been found in the imports (because neither <defaults>
nor <builtins> would have been imported).

The "<defaults>-found" situation happens right after a "reset code
model" while the "<builtins>-found" appears when the qml code finally
found the <builtins> package, usually after running cmake or when a
project was freshly opened in Qt Creator.

Instead, always try to load both <defaults> and <builtins> module.

Also, fix the builtins.qmltypes (that contains the qt creators magic
types) to reflect that Component and QtObject
are both available from the QML package (the <builtins> module), as
else one cannot import QtObject from QtQml after a code mode reset.

Fixes: QTCREATORBUG-28287
Fixes: QTCREATORBUG-28375
Change-Id: I67084a169dc5ca8ec2474b721dbef83cd47037c7
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2022-12-19 13:53:59 +00:00
Artem Sokolovskii
5cc77c4bf1 qmleditor: Remove foreach / Q_FOREACH usage
Task-number: QTCREATORBUG-27464
Change-Id: Ic6d667d97a9708963f7c3e21aa9598ffe0f9c7b7
Reviewed-by: hjk <hjk@qt.io>
2022-12-19 12:44:36 +00:00
Cristian Adam
70b3388684 CMakePM: Allow relative compiler paths for presets
You can have a preset with the PATH environment variable modified and
with CMAKE_C|XX_COMPILER CMake variables only as "gcc.exe" and "g++.exe"

Qt Creator now will search in PATH after the compiler file names and
work as expected.

Fixes: QTCREATORBUG-28602
Change-Id: I8520f6fcf5e542600fab08228d04d3709d3a8e8f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-12-19 11:52:37 +00:00
Christian Stenger
a7d8c4889e QmlPuppetCommunication: Fix cmake file for lupdate
lupdate cannot handle conditional source files.
Fixes target ts_untranslated.

Change-Id: I4110df9c8d935e3d10446cc8cc3b5d10d192e612
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-19 09:53:30 +00:00
Eike Ziller
456b8b69f9 build_plugins.py: Create signed package for plugins
On macOS if SIGNING_IDENTITY is given.
Creates an extra <plugin>-signed.7z, to not interfere with existing
build setups.

Change-Id: I8ec7f5cbeb14fb749d5d62398916629b83bdb833
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-12-16 14:59:06 +00:00
hjk
e42d24fca9 CppEditor: FilePathify some of the refactoring operations
... and adjust surrounding code.

Change-Id: I1d36e5a0c6ba14a1d9b8fd59340f1bb2a1e45ad1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-12-16 14:27:50 +00:00
Christian Kandeler
edd0e97ce1 ProjectExplorer: Fix wrong include
Change-Id: I5cc697749ad0abc92b633cb71f6c1a86c3627b24
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-12-16 14:22:35 +00:00
Henning Gruendl
cb187d7912 UpdateInfo: Fix long "show details" list
Task-number: QDS-7599
Change-Id: Ib3114b7284ae591e140d4e42739760fe7e13fae5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-16 14:03:07 +00:00
Samuel Ghinet
965fa9450c QmlDesigner: Fix cancel button not reverting background color
In the 3D view, when the user experiments with different background
colors, but then decides to cancel, upon pressing the Cancel button and
closing the dialog, the last color picked remained set.

This happened on Qt6.4 and not on Qt6.3. The reason for this was the
usage of Array.isArray() on an object exposed from C++ to QML of type
QVariant that could hold either a QList<QColor> or a a QColor. It looks
like there is no supported way from qml/js to see if a variable is a
list / sequence or a scalar. So the best way would be to always work
with QList<QColor> even though in most cases only one single QColor is
being used.

Task-number: QDS-8143
Change-Id: Ia7e8e1facad24439ad244305c213bb12e286105b
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-12-16 13:59:25 +00:00
Mahmoud Badri
bb37d782ca QmlDesigner: Optimize requesting an image info for tooltips
Avoid loading an image for the sole purpose of getting the dimensions.
Also small relevant tweaks.

Change-Id: I3d11175340cb77d3634fe7e69481ad26db8a74ef
Reviewed-by: Samuel Ghinet <samuel.ghinet@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-12-16 13:34:33 +00:00
hjk
674aad728e RemoteLinux: Hard-code /bin/sh for use in Open Terminal
... when changes to the environment are requested.

Ideally, that should be the user's chosen shell on the device,
but ssh does not support the case of specifying shell variables
without also giving an executable.

Short of playing tricks with /etc/passwd, getent, or env, use
/bin/sh which is guaranteed to exist.

Change-Id: I8d4b87f2a94eb9614d85dcacebd539ac645dc33d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-12-16 12:50:49 +00:00
Marcus Tillmanns
223bec26a1 LanguageServer: Add tooltip to file pattern
Change-Id: Ic404636bda45e9ff7ff3639232ebddfbfaf821c6
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-12-16 12:28:32 +00:00