summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui/text/qtextengine.cpp3
-rw-r--r--src/gui/text/qtextengine_p.h1
-rw-r--r--src/gui/text/qtextlayout.cpp9
-rw-r--r--tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp28
4 files changed, 1 insertions, 40 deletions
diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp
index 718471a8f5..c6da4b8f4a 100644
--- a/src/gui/text/qtextengine.cpp
+++ b/src/gui/text/qtextengine.cpp
@@ -2603,7 +2603,6 @@ QTextEngine::LayoutData::LayoutData()
hasBidi = false;
layoutState = LayoutEmpty;
haveCharAttributes = false;
- previousLineManuallyWrapped = false;
logClustersPtr = nullptr;
available_glyphs = 0;
}
@@ -2638,7 +2637,6 @@ QTextEngine::LayoutData::LayoutData(const QString &str, void **stack_memory, int
hasBidi = false;
layoutState = LayoutEmpty;
haveCharAttributes = false;
- previousLineManuallyWrapped = false;
}
QTextEngine::LayoutData::~LayoutData()
@@ -2724,7 +2722,6 @@ void QTextEngine::freeMemory()
layoutData->hasBidi = false;
layoutData->layoutState = LayoutEmpty;
layoutData->haveCharAttributes = false;
- layoutData->previousLineManuallyWrapped = false;
layoutData->items.clear();
}
if (specialData)
diff --git a/src/gui/text/qtextengine_p.h b/src/gui/text/qtextengine_p.h
index c207ab63ae..c653bfc92f 100644
--- a/src/gui/text/qtextengine_p.h
+++ b/src/gui/text/qtextengine_p.h
@@ -385,7 +385,6 @@ public:
uint layoutState : 2;
uint memory_on_stack : 1;
uint haveCharAttributes : 1;
- uint previousLineManuallyWrapped : 1;
QString string;
bool reallocate(int totalGlyphs);
};
diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp
index b88c902aca..9cf5d8963b 100644
--- a/src/gui/text/qtextlayout.cpp
+++ b/src/gui/text/qtextlayout.cpp
@@ -1808,7 +1808,6 @@ void QTextLine::layout_helper(int maxGlyphs)
lbh.logClusters = eng->layoutData->logClustersPtr;
lbh.previousGlyph = 0;
- bool manuallyWrapped = false;
bool hasInlineObject = false;
QFixed maxInlineObjectHeight = 0;
@@ -1884,7 +1883,6 @@ void QTextLine::layout_helper(int maxGlyphs)
lbh.calculateRightBearingForPreviousGlyph();
}
line += lbh.tmpData;
- manuallyWrapped = true;
goto found;
} else if (current.analysis.flags == QScriptAnalysis::Object) {
lbh.whiteSpaceOrObject = true;
@@ -2107,10 +2105,7 @@ found:
eng->maxWidth = qMax(eng->maxWidth, line.textWidth);
} else {
eng->minWidth = qMax(eng->minWidth, lbh.minw);
- if (eng->layoutData->previousLineManuallyWrapped)
- eng->maxWidth = qMax(eng->maxWidth, line.textWidth);
- else
- eng->maxWidth += line.textWidth;
+ eng->maxWidth += line.textWidth;
}
if (line.textWidth > 0 && item < eng->layoutData->items.size())
@@ -2124,8 +2119,6 @@ found:
line.justified = false;
line.gridfitted = false;
-
- eng->layoutData->previousLineManuallyWrapped = manuallyWrapped;
}
/*!
diff --git a/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp b/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp
index 25906ebf32..def7c88593 100644
--- a/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp
+++ b/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp
@@ -125,7 +125,6 @@ private slots:
void softHyphens_data();
void softHyphens();
void min_maximumWidth();
- void min_maximumWidthWithLineSeparator();
private:
QFont testFont;
@@ -2684,32 +2683,5 @@ void tst_QTextLayout::min_maximumWidth()
}
}
-void tst_QTextLayout::min_maximumWidthWithLineSeparator()
-{
- QTextLayout referenceLayout("text", testFont);
-
- QString multilineText("text\ntext\ntext");
- multilineText.replace('\n', QChar::LineSeparator);
- QTextLayout layout(multilineText, testFont);
-
- for (int wrapMode = QTextOption::NoWrap; wrapMode <= QTextOption::WrapAtWordBoundaryOrAnywhere; ++wrapMode) {
- QTextOption opt;
- opt.setWrapMode((QTextOption::WrapMode)wrapMode);
-
- referenceLayout.setTextOption(opt);
- referenceLayout.beginLayout();
- while (referenceLayout.createLine().isValid()) { }
- referenceLayout.endLayout();
-
- layout.setTextOption(opt);
- layout.beginLayout();
- while (layout.createLine().isValid()) { }
- layout.endLayout();
-
- QCOMPARE(layout.minimumWidth(), referenceLayout.minimumWidth());
- QCOMPARE(layout.maximumWidth(), referenceLayout.maximumWidth());
- }
-}
-
QTEST_MAIN(tst_QTextLayout)
#include "tst_qtextlayout.moc"