[Webkit-unassigned] [Bug 13664] Extra letter in Webkit/Spell Catcher Shorthand (abbreviation) expansion

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue May 22 11:58:01 PDT 2007


------- Comment #8 from evan at rainmakerinc.com  2007-05-22 11:58 PDT -------
(In reply to comment #7)
> Could you write a small HTML test case demonstrating the incorrect behavior? 
> That would be most helpful.

This is often easier said than done wrt text input-related problems...

> Actually, you may download nightly WebKit builds here: 
> http://nightly.webkit.org/.  Simply download the DMG, mount it, and
> double-click on the gold Safari icon to test.

I really needed to see the source to at least begin to figure out what's going
on (which I've done, but now have various questions about).

> A working test case attached to this bug will be the fastest path (other than
> writing a patch yourself!) to getting this bug fixed.  Thanks!

I probably can't write it myself without some help - so Help!

- OK, looking at the source, I some questions/comments:

1. There is a comment in -insertText:

        // insertText can be called from an input method or from normal key
event processing
        // If its from normal key event processing, we may need to save the
action to perform it later.
        // If its from an input method, then we should go ahead and insert the
text now.  
        // We assume it's from the input method if we have marked text.
        // FIXME: In theory, this could be wrong for some input methods, so we
should try to find
        // another way to determine if the call is from the input method

The FIXME note is absolutely accurate, so this code must be FIXME'd. Testing
for marked text is not sufficient.

2. I need to understand the meaning of WebHTMLViewInterpretKeyEventsParameters.
What it contains, why it's there, what it's supposed to be used for.

3. I'm not certain what the idea behind the two different code paths for
"isFromInputMethod"/"shouldSaveCommand" etc. This is new since I worked on this
stuff way back when, so I'm not familiar with why this was implemented.

4. It looks like the shouldSaveCommand flag is related to either
UpdateActiveInputArea calls and/or the input method returning whether or not it
actually handled an event. Anyone know what this is all about?

Not entirely related, but still relevant, this comment:

    // We don't support inserting an attributed string but input methods don't
appear to require this.

will be incorrect in the future. AttributedStrings MUST be supported here.

I have made some changes that fix this particular problem with Spell Catcher,
but without knowing exactly what's going on (answers to the above questions, at
minimum) have no idea if they will break other input methods...

Configure bugmail: http://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

More information about the webkit-unassigned mailing list