Bug 15239

Summary: REGRESSION(r25547): With Hanin IME, one cannot input characters into forms
Product: WebKit Reporter: Jiawei Ye <leafy7382>
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: CLOSED FIXED    
Severity: Normal CC: ap, harrison, oliver
Priority: P1 Keywords: InRadar, Regression
Version: 523.x (Safari 3)   
Hardware: Macintosh   
OS: OS X 10.4   

Description Jiawei Ye 2007-09-19 06:59:32 PDT
With r25634, one cannot input text into forms after Hanin is activated. 

English/US -> Sucess
English/US -> Hanin -> Fails
English/US -> Hanin -> English/US -> Fails

The problem seems be triggered by Hanin's method of English/Chinese input mode switching via the Caps Lock. After one switches for once, the input no longer works.
Comment 1 Matt Lilek 2007-09-19 08:15:30 PDT
Caused by the fix for bug 15163 - <http://trac.webkit.org/projects/webkit/changeset/25617>?
Comment 2 David Kilzer (:ddkilzer) 2007-09-19 10:29:11 PDT
<rdar://problem/5491955>
Comment 3 Oliver Hunt 2007-09-19 11:52:07 PDT
I can't repro this bug, exactly what are you doing? eg. what letters are you typing, what is the output, and what should the output be?
Comment 4 Jiawei Ye 2007-09-20 06:09:20 PDT
1. Open any page with a form.
2. Starting typing with Hanin

If at this point, you press enter, correct Chinese characters will appear. Type more into the staging area and press backspace to correct the input, the cursor and the staging string will disappear and no longer will you be able to input anything with any IME including English/US.
Comment 5 Jiawei Ye 2007-09-20 06:13:11 PDT
More detailed info on the bug.

Hanin has 2 correction modes, phonetic and per character. This symptom is very significant when the correction mode is set to "delete character". When set to "revert phonetics", sometimes it works, but backspace key would sometimes cease to function.
Comment 6 Alexey Proskuryakov 2007-09-20 07:14:46 PDT
I see a very similar issue with RuSwitcher - pressing Backspace several times (deleting the whole inline input area) makes further input impossible.
Comment 7 Oliver Hunt 2007-09-20 11:23:59 PDT
Using hanin input, i type abc -- i get a single character that changes
I hit enter
i type another set of characters (still results in a single changing character)
I hit backspace 

At this point i can type again, but the arrows keys won't work, hitting enter doesn't free the caret but if i type a character an hit enter, that will free it.

Is this what you are seeing?
Comment 8 Oliver Hunt 2007-09-20 15:26:31 PDT
This regression was caused by http://trac.webkit.org/projects/webkit/changeset/25547
Comment 9 Oliver Hunt 2007-09-21 17:04:07 PDT
Bug was due to r25547 introducing new and cleaner code, which unfortunately did not clear the composition markers when they defined a 0 length region. 

Sending        WebCore/ChangeLog
Sending        WebCore/editing/Editor.cpp
Transmitting file data ..
Committed revision 25694.

Reporter: please confirm against r25694 or later
Comment 10 Alexey Proskuryakov 2007-09-22 00:01:31 PDT
The problem I saw with RuSwitcher (comment 6) is fixed. I haven't tested Hanin.
Comment 11 Jiawei Ye 2007-09-22 08:42:54 PDT
Confirmed fixed for Hanin too.
Comment 12 Oliver Hunt 2007-09-22 13:05:37 PDT
Woo! Closed!