summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKhaled Hosny <khaledhosny@eglug.org>2016-09-01 13:20:41 +0200
committerKhaled Hosny <khaledhosny@eglug.org>2016-09-01 14:51:57 +0200
commit67192b3cfa54be7b0b60d450783ac2ac4c38bbc6 (patch)
treedd01ccc96aa14ac15e0fa547ddf8631687898fe6
parent4ec58562d48c26e2ddf4bfad1a692ce4d6cb018e (diff)
tdf#101361: Fix cursor key movement in RTL text
Revert "tdf#32531 Fix for key movement in table cell of different directionality" This reverts commit a215cec969f7401b08cabb686c5b2b1d803399d0. This seems like the wrong fix for the original issue, as it breaks how “visual” cursor movement works in RTL text.
-rw-r--r--sw/source/uibase/docvw/edtwin.cxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/sw/source/uibase/docvw/edtwin.cxx b/sw/source/uibase/docvw/edtwin.cxx
index e493e719c9c4..942a01d337cb 100644
--- a/sw/source/uibase/docvw/edtwin.cxx
+++ b/sw/source/uibase/docvw/edtwin.cxx
@@ -1476,6 +1476,13 @@ void SwEditWin::KeyInput(const KeyEvent &rKEvt)
else if( KEY_LEFT == nKey ) nKey = KEY_DOWN;
else if( KEY_RIGHT == nKey ) nKey = KEY_UP;
}
+
+ if ( rSh.IsInRightToLeftText() )
+ {
+ if( KEY_LEFT == nKey ) nKey = KEY_RIGHT;
+ else if( KEY_RIGHT == nKey ) nKey = KEY_LEFT;
+ }
+
aKeyEvent = KeyEvent( rKEvt.GetCharCode(),
vcl::KeyCode( nKey, rKEvt.GetKeyCode().GetModifier() ),
rKEvt.GetRepeat() );