Bug 84501 - REGRESSION (r94497): Pressing Command+A when inline (Marked Text) is not empty will clean whole content
Summary: REGRESSION (r94497): Pressing Command+A when inline (Marked Text) is not empt...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Text (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac Unspecified
: P1 Major
Assignee: Ryosuke Niwa
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2012-04-20 15:51 PDT by Alexey Proskuryakov
Modified: 2012-04-26 23:44 PDT (History)
6 users (show)

See Also:


Attachments
Fixes the bug (4.46 KB, patch)
2012-04-26 22:53 PDT, Ryosuke Niwa
ap: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Proskuryakov 2012-04-20 15:51:22 PDT
Steps to reproduce:
1. Type anything in any editable content (contenteditable, textarea, Mail.app etc.)
2. Type anything else with an input method using inline input (such as Kotoeri).
3. Hit Cmd+A

Results: entire editable content disappears.
Expected results: input area is confirmed, all text is selected.

<rdar://problem/11242705>
Comment 1 Alexey Proskuryakov 2012-04-24 16:33:52 PDT
Ryosuke, would you be willing to look into this?
Comment 2 Ryosuke Niwa 2012-04-26 16:15:23 PDT
Interesting this bug doesn't reproduce on Chrome because we ignore Cmd+A.
Comment 3 Ryosuke Niwa 2012-04-26 16:45:02 PDT
We're hitting:

    // If text is empty, then delete the old composition here.  If text is non-empty, InsertTextCommand::input
    // will delete the old composition with an optimized replace operation.
    if (text.isEmpty())
        TypingCommand::deleteSelection(m_frame->document(), 0);
Comment 4 Ryosuke Niwa 2012-04-26 22:53:56 PDT
Created attachment 139135 [details]
Fixes the bug
Comment 5 Alexey Proskuryakov 2012-04-26 23:04:36 PDT
Comment on attachment 139135 [details]
Fixes the bug

Thank you!

I suggest putting this test in editing/input. Ports that don't implement textInputController often skip the whole directory, so it's less book-keeping for everyone.
Comment 6 Ryosuke Niwa 2012-04-26 23:07:23 PDT
(In reply to comment #5)
> (From update of attachment 139135 [details])
> Thank you!
> 
> I suggest putting this test in editing/input. Ports that don't implement textInputController often skip the whole directory, so it's less book-keeping for everyone.

Okay, will do.
Comment 7 Ryosuke Niwa 2012-04-26 23:44:31 PDT
Committed r115409: <http://trac.webkit.org/changeset/115409>