aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/compiler
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@theqtcompany.com>2015-08-24 12:38:18 +0200
committerSimon Hausmann <simon.hausmann@theqtcompany.com>2015-08-24 10:44:55 +0000
commit9dd496c069154ac655be9b85b72a6eb409bfa223 (patch)
treef18c3702e1692c17ebe710530aba931c8a4554f6 /src/qml/compiler
parent4898ddfcc1822dbffc179f77a2fe768d231cbc6c (diff)
Fix incorrect signal emission for QML declared properties
After commit 6cd0001054faa9c7c20dcd5e9c7512367b2c1f5f we also need to remove the special var handling for signal indicies assigned to QML declared properties, in order to emit the right signal when the property changes. Change-Id: Ibdaba0435d8878e1e16dabe20559c484b217d82a Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Diffstat (limited to 'src/qml/compiler')
-rw-r--r--src/qml/compiler/qqmltypecompiler.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/qml/compiler/qqmltypecompiler.cpp b/src/qml/compiler/qqmltypecompiler.cpp
index c02b91f300..80ffafda72 100644
--- a/src/qml/compiler/qqmltypecompiler.cpp
+++ b/src/qml/compiler/qqmltypecompiler.cpp
@@ -667,17 +667,14 @@ bool QQmlPropertyCacheCreator::createMetaObject(int objectIndex, const QmlIR::Ob
}
// First set up notify signals for properties - first normal, then var, then alias
- enum { NSS_Normal = 0, NSS_Var = 1, NSS_Alias = 2 };
+ enum { NSS_Normal = 0, NSS_Alias = 1 };
for (int ii = NSS_Normal; ii <= NSS_Alias; ++ii) { // 0 == normal, 1 == var, 2 == alias
- if (ii == NSS_Var && varPropCount == 0) continue;
- else if (ii == NSS_Alias && aliasCount == 0) continue;
+ if (ii == NSS_Alias && aliasCount == 0) continue;
for (const QmlIR::Property *p = obj->firstProperty(); p; p = p->next) {
- if ((ii == NSS_Normal && (p->type == QV4::CompiledData::Property::Alias ||
- p->type == QV4::CompiledData::Property::Var)) ||
- ((ii == NSS_Var) && (p->type != QV4::CompiledData::Property::Var)) ||
- ((ii == NSS_Alias) && (p->type != QV4::CompiledData::Property::Alias)))
+ if ((ii == NSS_Normal && p->type == QV4::CompiledData::Property::Alias) ||
+ (ii == NSS_Alias && p->type != QV4::CompiledData::Property::Alias))
continue;
quint32 flags = QQmlPropertyData::IsSignal | QQmlPropertyData::IsFunction |