From b481399c1c02a945e816f9385070883a0d795455 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Wed, 19 Jan 2011 11:25:22 +1000 Subject: TextEdit implicit size varied depending upon wrapMode. We failed to reset textWidth before calculating the ideal width of the text. Task-number: QTBUG-16710 Reviewed-by: Michael Brasser --- src/declarative/graphicsitems/qdeclarativetextedit.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativetextedit.cpp b/src/declarative/graphicsitems/qdeclarativetextedit.cpp index 42f66c3..cb62a2c 100644 --- a/src/declarative/graphicsitems/qdeclarativetextedit.cpp +++ b/src/declarative/graphicsitems/qdeclarativetextedit.cpp @@ -1365,8 +1365,12 @@ void QDeclarativeTextEdit::updateSize() int dy = height(); // ### assumes that if the width is set, the text will fill to edges // ### (unless wrap is false, then clipping will occur) - if (widthValid() && d->document->textWidth() != width()) - d->document->setTextWidth(width()); + if (widthValid()) { + if (d->document->textWidth() != width()) + d->document->setTextWidth(width()); + } else { + d->document->setTextWidth(-1); + } dy -= (int)d->document->size().height(); int nyoff; -- cgit v0.12 From 5d9738ed88da269033333299c16558882d346514 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Wed, 19 Jan 2011 11:27:48 +1000 Subject: Cleanup created views in TextEdit tests. Reviewed-by: Michael Brasser --- .../qdeclarativetextedit/tst_qdeclarativetextedit.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp b/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp index 615b919..ba1a95f 100644 --- a/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp +++ b/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp @@ -373,6 +373,8 @@ void tst_qdeclarativetextedit::alignments() QImage expect(expectfile); QCOMPARE(actual,expect); + + delete canvas; } @@ -745,6 +747,8 @@ void tst_qdeclarativetextedit::mouseSelection() QVERIFY(str.length() > 3); // don't reallly care *what* was selected (and it's too sensitive to platform) else QVERIFY(str.isEmpty()); + + delete canvas; } void tst_qdeclarativetextedit::inputMethodHints() @@ -759,6 +763,8 @@ void tst_qdeclarativetextedit::inputMethodHints() QVERIFY(textEditObject->inputMethodHints() & Qt::ImhNoPredictiveText); textEditObject->setInputMethodHints(Qt::ImhUppercaseOnly); QVERIFY(textEditObject->inputMethodHints() & Qt::ImhUppercaseOnly); + + delete canvas; } void tst_qdeclarativetextedit::cursorDelegate() @@ -785,6 +791,8 @@ void tst_qdeclarativetextedit::cursorDelegate() //Test Delegate gets deleted textEditObject->setCursorDelegate(0); QVERIFY(!textEditObject->findChild("cursorInstance")); + + delete view; } void tst_qdeclarativetextedit::delegateLoading_data() @@ -867,6 +875,8 @@ void tst_qdeclarativetextedit::navigation() QVERIFY(input->hasActiveFocus() == false); simulateKey(canvas, Qt::Key_Left); QVERIFY(input->hasActiveFocus() == true); + + delete canvas; } void tst_qdeclarativetextedit::copyAndPaste() { @@ -941,6 +951,8 @@ void tst_qdeclarativetextedit::readOnly() simulateKey(canvas, Qt::Key_Space); simulateKey(canvas, Qt::Key_Escape); QCOMPARE(edit->text(), initial); + + delete canvas; } void tst_qdeclarativetextedit::simulateKey(QDeclarativeView *view, int key) -- cgit v0.12