EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of BODY > HTML > #document to 4 of BODY > HTML > #document
EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > BODY > HTML > #document to 0 of DIV > BODY > HTML > #document toDOMRange:range from 11 of #text > DIV > BODY > HTML > #document to 11 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 11 of #text > DIV > BODY > HTML > #document to 11 of #text > DIV > BODY > HTML > #document toDOMRange:range from 0 of #text > DIV > BODY > HTML > #document to 11 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: shouldDeleteDOMRange:range from 0 of #text > DIV > BODY > HTML > #document to 11 of #text > DIV > BODY > HTML > #document
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > BODY > HTML > #document to 0 of DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > BODY > HTML > #document to 0 of DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification
layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderBlock {HTML} at (0,0) size 800x600
    RenderBody {BODY} at (8,8) size 784x576
      RenderBlock (anonymous) at (0,0) size 784x172
        RenderIFrame {IFRAME} at (0,0) size 304x154 [border: (2px inset #000000)]
          layer at (0,0) size 300x150
            RenderView at (0,0) size 300x150
          layer at (0,0) size 300x150
            RenderBlock {HTML} at (0,0) size 300x150
              RenderBody {BODY} at (8,8) size 284x134 [bgcolor=#FFFFE0]
                RenderBlock {DIV} at (0,0) size 284x18
                  RenderBR {BR} at (0,0) size 0x18
        RenderBR {BR} at (304,140) size 0x18
        RenderBR {BR} at (0,154) size 0x18
      RenderBlock {P} at (0,188) size 784x36
        RenderInline {B} at (0,0) size 673x18
          RenderText {#text} at (0,0) size 673x18
            text run at (0,0) width 498: "This test uses the eventSender to do a mouse click to focus the subframe. "
            text run at (497,0) width 176: "It won't run interactively."
        RenderText {#text} at (672,0) size 731x36
          text run at (672,0) width 5: " "
          text run at (676,0) width 55: "To run it"
          text run at (0,18) width 362: "manually, click on the iframe, Select All, then hit delete."
      RenderBlock (anonymous) at (0,240) size 784x54
        RenderText {#text} at (0,0) size 779x54
          text run at (0,0) width 779: "Selecting all the content in a contenteditable iframe should select the iframe itself (to help the user delete the iframe) only"
          text run at (0,18) width 237: "if the iframe is in an editable region. "
          text run at (236,18) width 439: "This test loads ../resources/select-all-iframe-src.html into an iframe. "
          text run at (674,18) width 99: "That file does a"
          text run at (0,36) width 131: "Select All + Delete. "
          text run at (130,36) width 173: "Two things should happen:"
      RenderBlock {UL} at (0,310) size 784x54
        RenderListItem {LI} at (40,0) size 744x36
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 689x36
            text run at (0,0) width 462: "The Select All operation should not select the iframe, only it's contents. "
            text run at (461,0) width 228: "The results of the Select All will be"
            text run at (0,18) width 517: "apparent from the delegate messages that DumpRenderTree receives and dumps."
        RenderListItem {LI} at (40,36) size 744x18
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 344x18
            text run at (0,0) width 344: "The contents of the editable iframe should be deleted."
