Hello community, here is the log from the commit of package konsole for openSUSE:Factory checked in at 2018-12-27 00:22:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/konsole (Old) and /work/SRC/openSUSE:Factory/.konsole.new.28833 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "konsole" Thu Dec 27 00:22:20 2018 rev:102 rq:660496 version:18.12.0 Changes: -------- --- /work/SRC/openSUSE:Factory/konsole/konsole.changes 2018-12-19 13:35:37.248446916 +0100 +++ /work/SRC/openSUSE:Factory/.konsole.new.28833/konsole.changes 2018-12-27 00:22:21.432007710 +0100 @@ -1,0 +2,6 @@ +Fri Dec 21 09:18:20 UTC 2018 - [email protected] + +- Add fix-cursor-when-anti-aliasing-is-enabled.patch to fix text + cursor rendering regressions with anti-aliasing + +------------------------------------------------------------------- New: ---- fix-cursor-when-anti-aliasing-is-enabled.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ konsole.spec ++++++ --- /var/tmp/diff_new_pack.wswrfQ/_old 2018-12-27 00:22:22.188007095 +0100 +++ /var/tmp/diff_new_pack.wswrfQ/_new 2018-12-27 00:22:22.192007091 +0100 @@ -40,6 +40,8 @@ Patch0: fix-build-with-gcc48.patch # PATCH-FIX-UPSTREAM Patch1: fix-drawing-box-chars.patch +# PATCH-FIX-UPSTREAM +Patch2: fix-cursor-when-anti-aliasing-is-enabled.patch BuildRequires: fdupes BuildRequires: kbookmarks-devel BuildRequires: kcompletion-devel @@ -115,6 +117,7 @@ %patch0 -p1 %endif %patch1 -p1 +%patch2 -p1 %build %cmake_kf5 -d build ++++++ fix-cursor-when-anti-aliasing-is-enabled.patch ++++++ >From e7085310d6d594823d0ed491fa8bdbd99dec4932 Mon Sep 17 00:00:00 2001 From: "Martin T. H. Sandsmark" <[email protected]> Date: Mon, 10 Dec 2018 10:09:35 -0500 Subject: fix cursor when anti aliasing is enabled Summary: When there is a margin of 1 pixel, but some of the anti-aliasing "blur" leaks to 0,0. so it is fixed with a full update() (e. g. when it regains focus), but not when just some content updates in the window. Without this it draws outside the content rect, most visible as a vertical line if the cursor is completely to the left and then moves. Reviewers: #konsole, hindenburg Reviewed By: #konsole, hindenburg Subscribers: pbraun, konsole-devel, #konsole Tags: #konsole Differential Revision: https://phabricator.kde.org/D17414 --- src/TerminalDisplay.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/TerminalDisplay.cpp b/src/TerminalDisplay.cpp index 79e3dab..8834379 100644 --- a/src/TerminalDisplay.cpp +++ b/src/TerminalDisplay.cpp @@ -1064,7 +1064,7 @@ void TerminalDisplay::drawCursor(QPainter& painter, // shift rectangle top down one pixel to leave some space // between top and bottom - QRect cursorRect = rect.adjusted(0, 1, 0, 0); + QRectF cursorRect = rect.adjusted(0, 1, 0, 0); QColor cursorColor = _cursorColor.isValid() ? _cursorColor : foregroundColor; painter.setPen(cursorColor); @@ -1073,10 +1073,10 @@ void TerminalDisplay::drawCursor(QPainter& painter, // draw the cursor outline, adjusting the area so that // it is draw entirely inside 'rect' int penWidth = qMax(1, painter.pen().width()); - painter.drawRect(cursorRect.adjusted(penWidth / 2, - penWidth / 2, - - penWidth / 2 - penWidth % 2, - - penWidth / 2 - penWidth % 2)); + painter.drawRect(cursorRect.adjusted(penWidth / 2 + 0.5, + penWidth / 2 + 0.5, + - penWidth / 2 - penWidth % 2 + 0.5, + - penWidth / 2 - penWidth % 2 + 0.5)); // draw the cursor body only when the widget has focus if (hasFocus()) { -- cgit v1.1
