aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleg Shparber <trollixx@gmail.com>2014-05-19 00:53:39 -0700
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-05-19 20:16:37 +0200
commit009ad875f89d7d7bc4447e18c2fbbd485a75e0b5 (patch)
treeb12257374b4f39593681f4fe2a04f78daa9edb4d
parent76679048013fc70d2cb7042e32f1dd0cb4d5dfa5 (diff)
Fix improper antialiasing property behavior
For components antialiased by default the property was returned as false if default true value was set to true again. Task-number: QTBUG-39047 Change-Id: I16960a12b6d38a0d9e487fc6612610c39c4949d4 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
-rw-r--r--src/quick/items/qquickitem.cpp8
-rw-r--r--tests/auto/quick/qquicktext/tst_qquicktext.cpp7
2 files changed, 12 insertions, 3 deletions
diff --git a/src/quick/items/qquickitem.cpp b/src/quick/items/qquickitem.cpp
index 3f0dae8070..ef2eac4b61 100644
--- a/src/quick/items/qquickitem.cpp
+++ b/src/quick/items/qquickitem.cpp
@@ -5691,10 +5691,12 @@ void QQuickItem::setAntialiasing(bool aa)
{
Q_D(QQuickItem);
- bool changed = (aa != antialiasing());
- d->antialiasingValid = true;
+ if (!d->antialiasingValid) {
+ d->antialiasingValid = true;
+ d->antialiasing = d->implicitAntialiasing;
+ }
- if (!changed)
+ if (aa == d->antialiasing)
return;
d->antialiasing = aa;
diff --git a/tests/auto/quick/qquicktext/tst_qquicktext.cpp b/tests/auto/quick/qquicktext/tst_qquicktext.cpp
index 0b6998146e..d36c55d687 100644
--- a/tests/auto/quick/qquicktext/tst_qquicktext.cpp
+++ b/tests/auto/quick/qquicktext/tst_qquicktext.cpp
@@ -1334,6 +1334,13 @@ void tst_qquicktext::antialiasing()
text->resetAntialiasing();
QCOMPARE(text->antialiasing(), true);
QCOMPARE(spy.count(), 2);
+
+ // QTBUG-39047
+ component.setData("import QtQuick 2.0\n Text { antialiasing: true }", QUrl());
+ object.reset(component.create());
+ text = qobject_cast<QQuickText *>(object.data());
+ QVERIFY(text);
+ QCOMPARE(text->antialiasing(), true);
}
void tst_qquicktext::weight()