EDITING DELEGATE: shouldChangeSelectedDOMRange: toDOMRange:range from 1 of BODY > HTML > #document to 4 of BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of BODY > HTML > #document to 5 of BODY > HTML > #document
EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
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 784x584
      RenderTable {TABLE} at (0,0) size 758x24
        RenderTableSection {TBODY} at (0,0) size 758x24
          RenderTableRow {TR} at (0,2) size 758x20
            RenderTableCell {TD} at (2,2) size 644x20 [r=0 c=0 rs=1 cs=1]
              RenderText {#text} at (1,1) size 642x18
                text run at (1,1) width 642: "This tests that a style can be applied to a selection that contains both editable and non-editable content."
                text run at (643,1) width 0: "             "
            RenderTableCell {TD} at (648,2) size 108x20 [r=0 c=1 rs=1 cs=1]
              RenderInline {SPAN} at (0,0) size 106x18
                RenderInline {B} at (0,0) size 106x18
                  RenderText {#text} at (1,1) size 106x18
                    text run at (1,1) width 106: "Editable - line 1"
              RenderText {#text} at (107,1) size 0x18
                text run at (107,1) width 0: "             "
      RenderTable {TABLE} at (0,24) size 710x24
        RenderTableSection {TBODY} at (0,0) size 710x24
          RenderTableRow {TR} at (0,2) size 710x20
            RenderTableCell {TD} at (2,2) size 596x20 [r=0 c=0 rs=1 cs=1]
              RenderText {#text} at (1,1) size 594x18
                text run at (1,1) width 594: "The test passes if the editable content is bold, and the non editable content remains unchanged."
                text run at (595,1) width 0: "             "
            RenderTableCell {TD} at (600,2) size 108x20 [r=0 c=1 rs=1 cs=1]
              RenderInline {SPAN} at (0,0) size 106x18
                RenderInline {B} at (0,0) size 106x18
                  RenderText {#text} at (1,1) size 106x18
                    text run at (1,1) width 106: "Editable - line 2"
              RenderText {#text} at (107,1) size 0x18
                text run at (107,1) width 0: "             "
selection start: position 0 of child 1 {TABLE} of body
selection end:   position 2 of child 3 {TABLE} of body
