We have to ensure to properly call all Component complete handlers.
A single component usually has QQmlComponentAttached objects,
which we have to iterate over.
Therefore emitComponentCompleteSignalForAttachedProperty() is not correct.
Task-number: QDS-269
Change-Id: I4aed5d511f9f6e21f72efb955fc6db21b70e7c42
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
The ImageProvider needs a correct sourceSize. And the puppet needs to
consider the devicePixelRatio.
Change-Id: I408f956fdb4adb23f272c879878e44e88ca76321
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
In some cases items render their children directly using an effect.
In this case we do not want to hide the children when calling
refFromEffectItem().
If the hint takesOverRenderingOfChildren is set in the .metainfo hints
for a parent item we forward a flag to the puppet and refFromEffectItem()
is not hiding this item,
Change-Id: I37a8c0ad8a15bc914c220e03b1b744779431d655
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This is required to correctly render text elements with padding,
since the bounding rect seems incorrect.
Change-Id: Ifcef2607089a7a2cec071814d5d87bd27da7ace3
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
We forward the device pixel ratio to the qml2puppet and
render items in higher resolutions.
We have to set the device pixel ratio on the pixmap manually,
since it is not serialized.
The option IgnoreDevicePixelRaio allows disabling high dpi awareness.
Rendering in high dpi affects performance, but since we
use shared memory this does not seem to be a serious issue.
Change-Id: Ie9219b8fdb37841c24d4fb3f0ca259f0194ef65c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
We evaluate properties for the root item in dummy context if
they contain "parent.".
Defining a parent in the dummy context was not working for QML 2,
because there seems to be a shortcut bypassing the metasystem for parent.
Task-number: QTCREATORBUG-15530
Change-Id: I710f1ef36b8c97cc481b9909a775f06d9e03f666
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
We should not call updateDirtyNode() for items without a window.
This will assert later in consistency checks.
Change-Id: Iff3574123a1497206de88d59fcf630ead57ef593
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
No need to use private API in QuickItemNodeInstance.
Change-Id: I5450ea41571c2787081cc88f59494a28eea5546c
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Reduce the use of NodeInstanceMetaObject in QtQuickDesigner code
to two static methods:
- registerNodeInstanceMetaObject
- createNewDynamicProperty
Change-Id: I0ef8ee96995184e968467b799147c6b4c80fbccc
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
This avoids sub pixel antialias artefacts.
We call disableNativeTextRendering() in updateDirtyNodesRecursive(), because
items might be created or change the property after component complete.
Change-Id: Icd9c87b69434a910c9555540ba7bafdc874afc5a
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
From the quick1 times we always have done a update but it is not any more
useful and it is triggering a repaint which makes the form editor sluggish.
Change-Id: I8103d03c295aa73e14b4b4fcec15b01069c62754
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
We reparented into ignored properties. Now there is a more general mechanism
to prevent this.
Task-number: QTCREATORBUG-11970
Change-Id: Icbd5877dc13c65963079eb3ab67e48bb92056b53
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
updateDirtyNodeRecursive and renderPreviewImage belongs to quick image and
not in the node instance server.
Change-Id: I629b89c748036c0614e78bcfa0c837cb16ca6374
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
The cursor should be disabled after component complete.
Change-Id: I3ee089b23f43b42a478aaacc4073cbdfd0da2323
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
And PropertyName is a typedef for QByteArray. Because we don't use the
features of QString and the source would be cluttered with QLatin1Strings
we changed the property name to QByteArray.
Change-Id: Ib70ef136bbc411504b450456bd9bb705ae93dd25
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
(cherry picked from commit ee4bf638ca)
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
e0cb13a5 - Move no-Gui related QML types from QtQuick into QtQml
55f6a109 - Renamed QQuickItem::pos property to position
Fix some warnings
Change-Id: Iec9fe3f543f900a177d55c5de3a636bb296cbc49
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
Compute the matrix to the instance parent instead of the item parent.
Change-Id: I48be1b2be4b2a0db44a6d464751d591df51507fd
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
During destruction both new parent and old parent are invalid.
The intPositioner flag is not updated (isInPositioner()) and we crash.
The check for parentInstance() avoids this.
Change-Id: I5224c58bb461956f7ce2c47349650913975aa836
Reviewed-by: Marco Bubke <marco.bubke@digia.com>