Bug 78053

Summary: Deleting an empty blockquote should keep a placeholder
Product: WebKit Reporter: Ryosuke Niwa <rniwa>
Component: HTML EditingAssignee: Ryosuke Niwa <rniwa>
Status: REOPENED ---    
Severity: Normal CC: ayg, darin, enrica, justin.garcia, leviw, ojan, tony
Priority: P2 Keywords: NeedsRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Fixes the bug none

Description Ryosuke Niwa 2012-02-07 16:10:45 PST
Press backspace inside the backspace in the following markup:
<div>hello</div>
<blockquote><br></blockquote>
<div>world</div>

WebKit generates:

<div>hello</div>
<div>world</div>

But it should be:
<div>hello</div>
<br>
<div>world</div>

or its variants instead.
Comment 2 Ryosuke Niwa 2012-02-07 16:29:37 PST
It appears that we just need to generalize CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph.
Comment 3 Ryosuke Niwa 2012-02-08 20:11:10 PST
Created attachment 126230 [details]
Fixes the bug
Comment 4 Ryosuke Niwa 2012-02-08 20:12:01 PST
It turned out that the current behavior matches both IE and Opera. The only browser that exhibits the "desired" behavior is Firefox.
Comment 5 Aryeh Gregor 2012-03-01 12:31:48 PST
When you're at the beginning of an indented block and hit Backspace, browsers don't outdent, but word processors do.  (Tested in at least Google Docs and LibreOffice, pretty sure it's true in Word too.)  This matches the behavior of list items, and I think it's logical.  I think browsers should change to match word processors here, so backspace at the start of an indented block should outdent.  This is what my spec currently requires, although if implementers really don't want it, I can change it.