EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document
EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: shouldDeleteDOMRange:range from 0 of #text > LI > UL > DIV > DIV > BODY > HTML > #document to 0 of #text > DIV > DIV > BODY > HTML > #document
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of #text > LI > UL > DIV > DIV > BODY > HTML > #document to 2 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of LI > UL > DIV > DIV > BODY > HTML > #document to 0 of LI > UL > DIV > 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 784x584
      RenderBlock {DIV} at (0,0) size 784x250 [border: (4px solid #0000FF)]
        RenderBlock {DIV} at (20,20) size 744x72
          RenderText {#text} at (0,0) size 66x28
            text run at (0,0) width 66: "Tests: "
          RenderBR {BR} at (0,0) size 0x0
          RenderText {#text} at (0,28) size 655x22
            text run at (0,28) width 655: "Our ability to \"edit around\" content the HTML editing code does not yet handle very well. "
          RenderBR {BR} at (654,45) size 1x0
          RenderInline {I} at (0,0) size 98x22
            RenderText {#text} at (0,50) size 98x22
              text run at (0,50) width 98: "For this test: "
          RenderText {#text} at (97,50) size 166x22
            text run at (97,50) width 166: "Select and delete a list."
        RenderBlock (anonymous) at (20,92) size 744x22
          RenderBR {BR} at (0,0) size 0x22
        RenderBlock {DIV} at (20,114) size 744x116
          RenderText {#text} at (0,0) size 190x28
            text run at (0,0) width 190: "Expected Results: "
          RenderBR {BR} at (189,22) size 1x0
          RenderText {#text} at (0,28) size 700x44
            text run at (0,28) width 700: "The content in the red box must exactly match the content in the green box (except for the border"
            text run at (0,50) width 52: "color). "
          RenderBR {BR} at (51,67) size 1x0
          RenderInline {I} at (0,0) size 98x22
            RenderText {#text} at (0,72) size 98x22
              text run at (0,72) width 98: "For this test: "
          RenderText {#text} at (97,72) size 700x44
            text run at (97,72) width 603: "Only list content should get deleted. Surrounding content that is not selected should"
            text run at (0,94) width 199: "(obviously) not be affected."
      RenderBlock {DIV} at (0,260) size 784x32 [border: (2px solid #008000)]
        RenderText {#text} at (2,2) size 106x28
          text run at (2,2) width 106: "beforeafter"
      RenderBlock {DIV} at (0,302) size 784x108
        RenderBlock {DIV} at (0,0) size 784x108 [border: (2px solid #FF0000)]
          RenderBlock (anonymous) at (2,2) size 780x28
            RenderText {#text} at (0,0) size 62x28
              text run at (0,0) width 62: "before"
          RenderBlock {UL} at (2,54) size 780x28
            RenderListItem {LI} at (40,0) size 740x28
              RenderListMarker at (-22,0) size 9x28: bullet
              RenderText {#text} at (0,0) size 44x28
                text run at (0,0) width 44: "after"
caret: position 0 of child 0 {#text} of child 1 {LI} of child 1 {UL} of child 1 {DIV} of child 5 {DIV} of body
