commit: 8db345fe63a72a60df25699e7f182634404a3e8f Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Tue Dec 25 12:59:11 2018 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Tue Dec 25 21:23:17 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8db345fe
kde-apps/konsole: Fix cursor w/ antialising Follow-up to 6984d3c, fixed in 18.12.1. Thanks-to: Lars Wendler <polynomial-c <AT> gentoo.org> Package-Manager: Portage-2.3.52, Repoman-2.3.12 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> .../konsole/files/konsole-18.12.0-fix-cursor.patch | 58 ++++++++++++++++++++ kde-apps/konsole/konsole-18.12.0-r2.ebuild | 62 ++++++++++++++++++++++ 2 files changed, 120 insertions(+) diff --git a/kde-apps/konsole/files/konsole-18.12.0-fix-cursor.patch b/kde-apps/konsole/files/konsole-18.12.0-fix-cursor.patch new file mode 100644 index 00000000000..36aabaaccc5 --- /dev/null +++ b/kde-apps/konsole/files/konsole-18.12.0-fix-cursor.patch @@ -0,0 +1,58 @@ +From b48ecb5712037027e6385515c9eced7fabfc3dc3 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 + +(cherry picked from commit e7085310d6d594823d0ed491fa8bdbd99dec4932) +--- + src/TerminalDisplay.cpp | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/TerminalDisplay.cpp b/src/TerminalDisplay.cpp +index 6e8b262..64c831c 100644 +--- a/src/TerminalDisplay.cpp ++++ b/src/TerminalDisplay.cpp +@@ -933,7 +933,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); +@@ -942,10 +942,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 diff --git a/kde-apps/konsole/konsole-18.12.0-r2.ebuild b/kde-apps/konsole/konsole-18.12.0-r2.ebuild new file mode 100644 index 00000000000..abc36ad9309 --- /dev/null +++ b/kde-apps/konsole/konsole-18.12.0-r2.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +KDE_HANDBOOK="optional" +KDE_TEST="true" +VIRTUALX_REQUIRED="test" +inherit kde5 + +DESCRIPTION="KDE's terminal emulator" +HOMEPAGE="https://www.kde.org/applications/system/konsole https://konsole.kde.org" + +KEYWORDS="~amd64 ~x86" +IUSE="X" + +DEPEND=" + $(add_frameworks_dep kbookmarks) + $(add_frameworks_dep kcompletion) + $(add_frameworks_dep kconfig) + $(add_frameworks_dep kconfigwidgets) + $(add_frameworks_dep kcoreaddons) + $(add_frameworks_dep kcrash) + $(add_frameworks_dep kdbusaddons) + $(add_frameworks_dep kguiaddons) + $(add_frameworks_dep kjobwidgets) + $(add_frameworks_dep ki18n) + $(add_frameworks_dep kinit) + $(add_frameworks_dep kiconthemes) + $(add_frameworks_dep kio) + $(add_frameworks_dep knewstuff) + $(add_frameworks_dep knotifications) + $(add_frameworks_dep knotifyconfig) + $(add_frameworks_dep kparts) + $(add_frameworks_dep kpty) + $(add_frameworks_dep kservice) + $(add_frameworks_dep ktextwidgets) + $(add_frameworks_dep kwidgetsaddons) + $(add_frameworks_dep kwindowsystem) + $(add_frameworks_dep kxmlgui) + $(add_qt_dep qtdbus) + $(add_qt_dep qtgui) + $(add_qt_dep qtnetwork) + $(add_qt_dep qtprintsupport) + $(add_qt_dep qtwidgets) + $(add_qt_dep qtxml) + X? ( x11-libs/libX11 ) +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}/${P}-fix-drawing-box-chars.patch" # fixed in 18.12.1 + "${FILESDIR}/${P}-fix-cursor.patch" # fixed in 18.12.1 +) + +src_configure() { + local mycmakeargs=( + $(cmake-utils_use_find_package X X11) + ) + + kde5_src_configure +}
