Apache OpenOffice (AOO) Bugzilla – Issue 93155
Aqua: problem in text input of single ASCII character using input method
Last modified: 2009-07-20 15:59:39 UTC
Text input of a single ASCII character using input method with preedit causes mismatch of input state of OOo. Here is the way to reproduce the problem 1. Set Hiragana input mode of Kotoeri on OOo Writer. 2. Push '1' key. -> This will show 'FULLWIDTH DIGIT ONE' in the preedit with blue color and the under line. 3. Push 'space' key several times to convert the 'FULLWIDTH DIGIT ONE' into ASCII 'DIGIT ONE'. -> This will show ASCII 'DIGIT ONE' in the preedit with blue color and the under line. 4. Push 'Return' to commit the 'DIGIT ONE'. -> This should commit the 'DIGIT ONE' (expected behavior). -> but actually, it will show committed 'DIGIT ONE' plus still showing the uncommitted preedit with blue color and the underline. Also, the internal state of input context mismatch between the input method and OOo. This is because insertText() procedure in salframeview.mm assumes a single ASCII character input is always come from without preedit. However, as shown above, it is also possible to input these character using complex input method. Attached single line patch to check the MarkedText should fix this problem.
Created attachment 56033 [details] Patch to check hasMarkedText for single ASCII character input
just a quick feedback from me (since the owner of that topic is on vacation for the next few days): this looks like something that should go in ASAP. Thanks for exact bug description and the patch!
I cannot follow the technical implications of the course this has taken fully, but may I add two details/observations to the problem-description I found while playing a bit more. As a matter of fact the gravis problem also occurs in a normal writer-document - I wasn't aware of this myself. But there is a maybe revealing difference between the behaviour on a normal Writer-page and in the MultiLineEdit-Field: 1. - in Writer if I type 'a'+'´'+' '+'a'+'a'+'a'+'ö' the result will be 'aö' and nothing else - the three a's I entered beween space and ö as well as the (wrong) second gravis are discarded. The characters I have found sofar that trigger the replacement of ` are öäüÖÄÜ and also ^°. - in the MultiLineEdit field this discarding does not occure, i.e. the result of above input is aö`aaa. So the wrong gravis is not removed, the 3 a remain and the cursor is behind the ö. 2. On the Austrian and German key there are 4 deadkeys I know of: gravis, acutus, hacek and umlaut. All three allow to input accented vowels like â ú è ï - of these *only* the gravis shows the reported missbehaviour. Best Panca
Sorry, this was meant for issue 93248 Panca
*** Issue 93248 has been marked as a duplicate of this issue. ***
@mh: I agree with ekato that this issue should be considered as OOo3.0 showstopper (http://www.openoffice.org/issues/show_bug.cgi?id=93248#desc5) and nominated it on the OOo releases mailing list.
FYI, this is the thread in the releases@openoffice.org mailing list: http://www.openoffice.org/servlets/BrowseList?list=releases&by=thread&from=2115904
Applied in CWS dba30j.
@sba: please verify in CWS dba30j, please also test the quite different scenario in the related issue 93248
SBA: Verified in CWS dba30j.
This issue is closed automatically and wasn't rechecked in a current version of OOo. The fixed issue should be integrated in OOo since more than half a year. If you think this issue isn't fixed in a current version (OOo 3.1), please reopen it and change the field 'Target Milestone' accordingly. If you want to download a current version of OOo => http://download.openoffice.org/index.html If you want to know more about the handling of fixed/verified issues => http://wiki.services.openoffice.org/wiki/Handle_fixed_verified_issues