https://bugs.documentfoundation.org/show_bug.cgi?id=91641

            Bug ID: 91641
           Summary: using kmfl in calc transposes characters when editing
                    existing text
           Product: LibreOffice
           Version: 3.5.0 release
          Hardware: Other
                OS: Linux (All)
            Status: UNCONFIRMED
          Severity: normal
          Priority: medium
         Component: Calc
          Assignee: libreoffice-bugs@lists.freedesktop.org
          Reporter: jl...@mail.com

For Linux, KMFL (ibus) takes a sequence of keystrokes and converts them into a
complex character.  In Calc, when editing an existing line of text, the
character AFTER the cursor is moved in front of the inserted complex character. 

For example typing ";n" produces "ŋ".  If I am editing "Hello World" and have
the cursor in front of W, the buggy end result will be "Hello Wŋorld" instead
of "Hello ŋWorld"

Ṭhe problem occurs in oldest-bibisect-43 (and in OpenOffice), so marking as
pre-bibisect 3.5. An assert in the development version (dbggui.cxx:817ish)
causes calc to exit when doing the "hello ŋWorld" test. I removed the assert
and confirmed that this bug still exists in 5.0 development tree.

A comment from potentially related bug 85912 might be helpful here:
KMFL (and other inputs methods) need to be able to delete text that has been
previously entered. There are couple of ways to do this, one being to use a
system call like "delete surrounding text". Another method is to simulate the
backspace key. The former method is the preferred method because it gives
better control over what is deleted.  However applications have to be written
to support "surrounding text". Apps are supposed to report to ibus whether they
support "surrounding text" calls and if they don't,  then kmfl falls back to
simulating the backspace key.

There is a work around (confirmed that it also works for this bug). If you tell
libreoffice to interface with ibus using xim rather than the "GTK ibus
connector" it currently uses, then calc will "not assert". If you want to test
it out to see if it works for you, try the following from a terminal:

XMODIFIERS=@im=ibus GTK_IM_MODULE=xim libreoffice --writer



instructions for installing kmfl can be found here:
http://linux.lsdev.sil.org/wiki/index.php/Installing_KMFL_on_Ubuntu

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
Libreoffice-bugs@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to