Revision 791374

Go back to digest for 30th March 2008

Other in KDE Base

Diego Iastrubni committed changes in /trunk/KDE/kdebase/apps/konsole/src:

New backport (??) from KDE3: now each profile can enable/disable BiDi rendering in the display. We need this since many console based application (vim, emacs, fribidi etc) implement their own BiDi algorithm.

There is also another reason: comatibility. All terminals are *not* aware of the BiDi issue and do not re-order the chars (gnome-terminal, xterm, konsole, etc). It is possible to enable the BiDi rendering on each profile, so this is not a huge lost.

I am still missing the keyboard shortcut to quickly enable/disable it (alt+control+b in konsole3), but I am not sure what is the best way for doing it.

A quick note about the implementation.

In QPainter3, there was an option to draw a text and tell the painter "please do not implement BiDi". In QPainter4 (up to 4.4) there is no such option. I am forcing it by drawing "painter.drawText(rect,0,QChar(0x202D)+text)" (that is &LRO;), and it does seem to work, but I find it kinda "hackish". I will open a task in Trolltech and request that new feature.

Hopefully by Qt4.5/KDE4.2 I will be able to change the implementation.

File Changes

Modified 8 files
  • /trunk/KDE/kdebase/apps/konsole/src
  •   /EditProfileDialog.cpp
  •   /EditProfileDialog.h
  •   /EditProfileDialog.ui
  •   /Profile.cpp
  •   /Profile.h
  •   /TerminalDisplay.cpp
  •   /TerminalDisplay.h
  •   /ViewManager.cpp
8 files changed in total