Bug 59054

Summary: WebKit2: Unconfirmed inline input session persists after reload
Product: WebKit Reporter: Alexey Proskuryakov <ap>
Component: HTML EditingAssignee: Alexey Proskuryakov <ap>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, enrica, eric, webkit.review.bot
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Mac   
OS: OS X 10.6   
Attachments:
Description Flags
proposed fix mjs: review+

Description Alexey Proskuryakov 2011-04-20 18:02:20 PDT
We don't inform input methods when we abandon inline input, so they keep thinking that we have one.

Steps to reproduce:
1. Enable Kotoeri Hiragana IM (or any other one that uses inline input).
2. Open www.baidu.com (or any other site with forms or contenteditable).
3. Type anything, don't confirm the session.
4. Press Cmd+R.
5. Type more.

Results: text typed into the old page re-appears on the new one.

We should be calling -[NSTextInputContext discardMarkedText] at appropriate moments.

<rdar://problem/9291086>
Comment 1 Alexey Proskuryakov 2011-04-20 18:19:59 PDT
Created attachment 90464 [details]
proposed fix
Comment 2 Maciej Stachowiak 2011-04-20 21:53:03 PDT
Comment on attachment 90464 [details]
proposed fix

View in context: https://bugs.webkit.org/attachment.cgi?id=90464&action=review

r=me

If either of the FIXMEs is a really bug, please file a follow-up.

> Source/WebKit2/UIProcess/WebPageProxy.cpp:1545
> +    // FIXME: didCommitLoadForFrame comes too late when restoring a page from b/f cache, making us disable secure event mode in password fields.
> +    // FIXME: A load going on in one frame shouldn't affect typing in sibling frames.

Do these FIXMEs represent real bugs that can occur in practice?
Comment 3 Alexey Proskuryakov 2011-04-21 11:29:47 PDT
Yes - filed bugs for those.

Committed <http://trac.webkit.org/changeset/84526>.
Comment 4 WebKit Review Bot 2011-04-21 11:34:06 PDT
http://trac.webkit.org/changeset/84526 might have broken EFL Linux Release (Build)