Make sure returned default QVariant() is valid.
Change-Id: I323001df3505bbe740f8f660de9c199aed05aac6
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Since e755094480 we have a global option
in Qt Creator to set the (base) environment for any tools run by Qt
Creator. So it is expected that any tool actually uses
Environment::systemEnvironment() as a base, which is the system
environment modified by the global option.
QtcProcess already had a fallback to Environment::systemEnvironment for
resolving environment variables in Qt Creator macros in the command
line. Also use it as a fallback for the actual environment for the
process.
Latest occurrence where the global environment setting was ignored was
for starting language servers by our LSP client.
Change-Id: Id1a4141326d8ef3239b37d7f3daf21928605ca92
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Was missing a slash after the userResourcePath.
Broke with 8e352af0ec
Change-Id: I2f60e3dcaa07b13cd2459ee6a3aa67b51075545e
Reviewed-by: hjk <hjk@qt.io>
The correct type in Qt 6 is QtQml.Models.ListModel
Change-Id: Ic6e488eea1feef150bb49d0d4f873f6bd5bac3c5
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Rendering effects requires actually rendering another item.
The effect is defined by another item that is rendered instead
of the original item.
For items that have an effect we do not render the children, since
the effect is only applied to the layer not the individual items.
We set layer.enabled temporarily to false, this ensures the effect
is not rendered as part of its parent item.
To detect the effect we use the source property an check if it points
to the ShaderEffectSource.
If one of the children inside the effect is transformed we have
to update the effect item.
If layer.enabled or layer.effect is changed we set the dirty flag
on the item and all children.
Change-Id: Iff61ef950e62a7a598b4bfa181ea70cb144368f3
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
We have to render an item inside the bounding rect, because if
it is a component there might be child items outside its actual size.
The way we calculate the bounding rectangle excludes children
on the document level. We take clipping into account when calculating
the bounding rect.
When rendering the effect we do not have the instance. Therefore
we fall back to the standard bounding rectangle.
Change-Id: I7cd09d08d461d28c49a91fb891a5487185df0245
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
It works without nowadays, and even with Qt 6, with its
bundled QtScript version.
Update Qbs to HEAD of 1.20 for a build fix.
Change-Id: I060ddec595c989852dc5861594423d5ffa5f521d
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
message was: "QFileSystemWatcher::removePaths: list is empty"
now calling that method only if there is something in the list.
Also tried to make the code a bit cleaner
Change-Id: I029d100e63cf42eb58757a144fecaaa8c8c908a0
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
It is unclear if and how the client should order completion items, but
at least haskell-language-server provides a sensibly sorted list (not
alphabetically) and doesn't set a "sortText".
Sorting the items alphabetically by label messes up the prioritization
of "best" matches that the server correctly does.
Only sort, if any item has a sortText.
Task-number: QTCREATORBUG-26114
Change-Id: I55a966763e21ba8b85085a087c37e6005438d4e3
Reviewed-by: David Schulz <david.schulz@qt.io>
If the server settings specify that a server is to be started "per
project".
This fixes e.g. running the haskell-language-server
Fixes: QTCREATORBUG-26115
Change-Id: If10af71d60786826a9218b4b98818df8d9710adf
Reviewed-by: David Schulz <david.schulz@qt.io>
Effect source type was set to incorrect after the initial drag to the
scene, so even resetting puppet wouldn't make a newly added effect
show up. Fixed by updating the NodeSourceType when updating the node
source.
Also reset the puppet for now when node source changes, as it doesn't
handle source changes properly.
Change-Id: Id22a298738fb1e7f841b94b473ccb61cc82e0322
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
If the warning contains chained warnings we end up grabbing
too much and the file path is corrupt which also ends up
in strange visual issues on the issues pane.
Change-Id: Id343935ec933026d461d6572e7e5f4e15dc3da74
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The Best Practices were moved to the appropriate topics.
Change-Id: I0e525d9e2119158e2c3c8c971e72c062b7f03ca0
Reviewed-by: Johanna Vanhatapio <johanna.vanhatapio@qt.io>
Do not test for OpenGL-through-QRhi, but rather for
anything-through-QRhi. The implementation of the profiler
views is not tied to OpenGL anymore. That said, QQuickWidget
implies using OpenGL as of now, so in practice we will always
have OpenGL at best, but update the tests now to be better
prepared for the future.
Change-Id: Ic43eac1c5cf0e2ce2ef35cdd8a29b475884a5af8
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
If the item is set to invisible we set visible to false in
the render and preview puppets. This will have no effect on the
value in the property editor.
Changing the actual value of visible can have side-effects on
the rendering in some rare cases.
Task-number: QDS-4932
Change-Id: I5ce0925ebff8f5e4e64bc71fd5d33d6154b85f91
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
That code path cannot be hit with Qt 6 anyhow.
Change-Id: I6f8e2a1a3606a4e6fbaa10f650fc5f22354f48a8
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Qt::AA_EnableHighDpiScaling and Qt::AA_UseHighDpiPixmaps are deprecated
Change-Id: I36a289f00feeaa472ee911a567c2a6160e259317
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
After NDK r10x, there's one common gdb executable instead
of separate for each ABI. Currently, multiple debuggers
are being registered for each ABI although they all share
the same command. Apart from simplifying the list of debuggers,
this will make it less time consuming where each NDK can register
one instead of 4 debuggers.
Also, there was two functions handling debugger registration for
the default NDKs and another for custom ones chosen manually by
the user. Now, they are merged together instead.
Change-Id: I886b6fa8eb2190e630189f9002e7a44cd18c7b71
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Currently, Creator gets the minimum sdk version from a hard-coded
value (16) which is used for all projects. However, this is not ideal
because some Qt versions require a specific sdk level to build and run
properly. So, this change ensures that the minimum sdk value is obtained
based the Qt version used in the project.
Fixes: QTCREATORBUG-26127
Change-Id: I948dd18d16c3d9ca587ad7712aa4c9a1bfd53972
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
No idea how to reproduce, but it can happen [1] that stale Android kits
appear in Qt Creator, which have broken combinations of Qt version and
toolchains. The Android plugin updates the Android kits at startup,
but only updates known "correct" kits, or creates new ones.
Additionally remove any previously auto-created Android kits that
were not recognized to be still usable.
[1]: probably after switching between a working Android setup and a
broken one, with broken toolchains/debuggers brought into the mix
Change-Id: I709f52df62f8998647e4d68bdfe76015e8941ab8
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Change the form editor rendering to be done by item basis instead of
just rendering the entire scene (unified rendering).
Fixes: QDS-2933
Change-Id: I999cbc834791bc6e96334eab8273d97e4f58975f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Also define the themeUnimportedModuleColor value in the theme files.
Fixes: QDS-4935
Change-Id: I3fc0b2316ebc1b11e4de87c09e2136e768e5cbe2
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Brook Cronin <brook.cronin@qt.io>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
There may exist components that do not belong to any project.
Task-number: QTCREATORBUG-26166
Change-Id: I77f5ec9c5d718300a38db203f9b5d1b1a4e96d1f
Reviewed-by: Tapani Mattila <tapani.mattila@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
- New styles;
- Rework to be more reliable with complex names.
Task-number: QDS-4750
Change-Id: I63d89575540a463e8b6786c82a28effa185f10c5
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Aleksei German <aleksei.german@qt.io>
With Design Studio branding the temporary path got just too long (107
chars). Make the file name shorter, and add a warning for future
reference.
Change-Id: Id5ff448d55a8b109234b7c113695ea54b1836a2f
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
After the switch to CMake.
Extends 29f3be1a6e
Change-Id: I626bc7393d290710d7e5d1f2907e6fa1f25a7d21
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Replace StudioControls.RealSpinBox with a DoubleSpinBox
* Add tooltips to distribution origin buttons
* Add spacer between distribution orientation and origin buttons
Task-number: QDS-4139
Task-number: QDS-4927
Change-Id: I5670494d39cb5b5d3d36428583cde5e7434a8d76
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
cancelChecker is an optional parameter.
Change-Id: Ie47ae834a34f8ebf8c901e4dcaf7a9c3af5c0ce4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Literals like 'true' or '1' are no bindings and should be set
as variant properties. This requires special handling for QVariant.
Task-number: QDS-4684
Change-Id: Ib831fb78e76fbd7563fe3897b8a2c5379ee9a9db
Reviewed-by: Tony Leinonen <tony.leinonen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Opening an editor starts a new parser, so we must do that before we wait
for the parsing to finish.
Change-Id: Iee9da8da1fb60bf496a093d8efd878101d91f53f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>