Package: konsole Version: 4:16.12.0-1 Severity: normal Tags: patch Font rendering for Noto Sans CJK in konsole has long been broken. This made users of konsole + Noto Sans CJK painful.
Upstream committed a fix in git HEAD recently: https://git.reviewboard.kde.org/r/129281/diff/2/ It would be great if konsole in Stretch would include this fix. A raw diff file will be sent as well as attachment. -- System Information: Debian Release: 9.0 APT prefers testing APT policy: (500, 'testing'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.9.0-2-amd64 (SMP w/4 CPU cores) Locale: LANG=zh_CN.UTF-8, LC_CTYPE=zh_CN.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages konsole depends on: ii kio 5.28.0-1 ii konsole-kpart 4:16.12.0-1 ii libc6 2.24-9 ii libkf5completion5 5.28.0-1 ii libkf5configcore5 5.28.0-1+b2 ii libkf5configgui5 5.28.0-1+b2 ii libkf5configwidgets5 5.28.0-1 ii libkf5coreaddons5 5.28.0-1+b2 ii libkf5crash5 5.28.0-1 ii libkf5dbusaddons5 5.28.0-1 ii libkf5i18n5 5.28.0-1+b2 ii libkf5iconthemes5 5.28.0-1 ii libkf5kiowidgets5 5.28.0-1 ii libkf5notifyconfig5 5.28.0-1 ii libkf5widgetsaddons5 5.28.0-1 ii libkf5windowsystem5 5.28.0-1 ii libkf5xmlgui5 5.28.0-1 ii libqt5core5a 5.7.1+dfsg-3+b1 ii libqt5gui5 5.7.1+dfsg-3+b1 ii libqt5widgets5 5.7.1+dfsg-3+b1 ii libstdc++6 6.3.0-6 konsole recommends no packages. konsole suggests no packages. -- no debconf information
diff --git a/src/TerminalDisplay.cpp b/src/TerminalDisplay.cpp index 39a8b84..dc991ef 100644 --- a/src/TerminalDisplay.cpp +++ b/src/TerminalDisplay.cpp @@ -856,18 +856,10 @@ void TerminalDisplay::drawCharacters(QPainter& painter, // This still allows RTL characters to be rendered in the RTL way. painter.setLayoutDirection(Qt::LeftToRight); - // the drawText(rect,flags,string) overload is used here with null flags - // instead of drawText(rect,string) because the (rect,string) overload causes - // the application's default layout direction to be used instead of - // the widget-specific layout direction, which should always be - // Qt::LeftToRight for this widget - // - // This was discussed in: http://lists.kde.org/?t=120552223600002&r=1&w=2 if (_bidiEnabled) { - painter.drawText(rect, 0, text); + painter.drawText(rect.x(), rect.y() + QFontMetrics(font).ascent(), text); } else { - // See bug 280896 for more info - painter.drawText(rect, Qt::AlignBottom, LTR_OVERRIDE_CHAR + text); + painter.drawText(rect.x(), rect.y() + QFontMetrics(font).ascent(), LTR_OVERRIDE_CHAR + text); } } }