summaryrefslogtreecommitdiffstats
path: root/source/l/qt5/patches/qt5.qtbug-69310.patch
diff options
context:
space:
mode:
Diffstat (limited to 'source/l/qt5/patches/qt5.qtbug-69310.patch')
-rw-r--r--source/l/qt5/patches/qt5.qtbug-69310.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/source/l/qt5/patches/qt5.qtbug-69310.patch b/source/l/qt5/patches/qt5.qtbug-69310.patch
new file mode 100644
index 000000000..b92462733
--- /dev/null
+++ b/source/l/qt5/patches/qt5.qtbug-69310.patch
@@ -0,0 +1,37 @@
+From fcba9fa861574f33e1d2e54d8c8d6da8062927cd Mon Sep 17 00:00:00 2001
+From: Allan Sandfeld Jensen <allan.jensen@qt.io>
+Date: Wed, 23 Jan 2019 10:42:12 +0100
+Subject: Fix regression in QPlainTextEdit updating
+
+It was incorrectly counting a block having more than one line as having
+changed visibility.
+
+Fixes: QTBUG-69310
+Change-Id: I502cda1d3e8a4efb1c14122353cc0a4731d8581c
+Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
+---
+ src/widgets/widgets/qplaintextedit.cpp | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/widgets/widgets/qplaintextedit.cpp b/src/widgets/widgets/qplaintextedit.cpp
+index d6f6a364a8..57f2dec8f7 100644
+--- a/src/widgets/widgets/qplaintextedit.cpp
++++ b/src/widgets/widgets/qplaintextedit.cpp
+@@ -312,10 +312,11 @@ void QPlainTextDocumentLayout::documentChanged(int from, int charsRemoved, int c
+ QTextBlock block = changeStartBlock;
+ do {
+ block.clearLayout();
+- const int lineCount = block.isVisible() ? 1 : 0;
+- if (block.lineCount() != lineCount) {
++ if (block.isVisible()
++ ? (block.lineCount() == 0)
++ : (block.lineCount() > 0)) {
+ blockVisibilityChanged = true;
+- block.setLineCount(lineCount);
++ block.setLineCount(block.isVisible() ? 1 : 0);
+ }
+ if (block == changeEndBlock)
+ break;
+--
+cgit v1.2.1
+