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: shouldChangeSelectedDOMRange:range from 0 of LI > UL > DIV > DIV > BODY > HTML > #document to 0 of LI > UL > DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > LI > UL > DIV > DIV > BODY > HTML > #document to 1 of #text > LI > UL > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > LI > UL > DIV > DIV > BODY > HTML > #document to 1 of #text > LI > UL > DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > LI > UL > DIV > DIV > BODY > HTML > #document to 2 of #text > LI > UL > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 2 of #text > LI > UL > DIV > DIV > BODY > HTML > #document to 2 of #text > LI > UL > DIV > DIV > BODY > HTML > #document toDOMRange:range from 3 of #text > LI > UL > DIV > DIV > BODY > HTML > #document to 3 of #text > 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 784x220 [border: (4px solid #0000FF)]
        RenderBlock {DIV} at (20,20) size 744x69
          RenderText {#text} at (0,0) size 65x26
            text run at (0,0) width 65: "Tests: "
          RenderBR {BR} at (0,0) size 0x0
          RenderText {#text} at (0,27) size 663x20
            text run at (0,27) width 663: "Our ability to \"edit around\" content the HTML editing code does not yet handle very well. "
          RenderBR {BR} at (662,27) size 1x20
          RenderInline {I} at (0,0) size 99x20
            RenderText {#text} at (0,48) size 99x20
              text run at (0,48) width 99: "For this test: "
          RenderText {#text} at (98,48) size 228x20
            text run at (98,48) width 228: "Test typing at the start of a list."
        RenderBlock (anonymous) at (20,89) size 744x21
          RenderBR {BR} at (0,0) size 0x20
        RenderBlock {DIV} at (20,110) size 744x90
          RenderText {#text} at (0,0) size 189x26
            text run at (0,0) width 189: "Expected Results: "
          RenderBR {BR} at (188,5) size 1x20
          RenderText {#text} at (0,27) size 709x41
            text run at (0,27) width 709: "The content in the red box must exactly match the content in the green box (except for the border"
            text run at (0,48) width 53: "color). "
          RenderBR {BR} at (53,48) size 0x20
          RenderInline {I} at (0,0) size 99x20
            RenderText {#text} at (0,69) size 99x20
              text run at (0,69) width 99: "For this test: "
          RenderText {#text} at (98,69) size 415x20
            text run at (98,69) width 415: "Typed text should appear at the start of the first list item."
      RenderBlock {DIV} at (0,230) size 784x133 [border: (2px solid #008000)]
        RenderBlock {UL} at (2,26) size 780x81
          RenderListItem {LI} at (40,0) size 740x27
            RenderListMarker at (-22,0) size 9x26: bullet
            RenderText {#text} at (0,0) size 114x26
              text run at (0,0) width 114: "xxxline one"
          RenderListItem {LI} at (40,27) size 740x27
            RenderListMarker at (-22,0) size 9x26: bullet
            RenderText {#text} at (0,0) size 79x26
              text run at (0,0) width 79: "line two"
          RenderListItem {LI} at (40,54) size 740x27
            RenderListMarker at (-22,0) size 9x26: bullet
            RenderText {#text} at (0,0) size 92x26
              text run at (0,0) width 92: "line three"
      RenderBlock {DIV} at (0,373) size 784x133
        RenderBlock {DIV} at (0,0) size 784x133 [border: (2px solid #FF0000)]
          RenderBlock {UL} at (2,26) size 780x81
            RenderListItem {LI} at (40,0) size 740x27
              RenderListMarker at (-22,0) size 9x26: bullet
              RenderText {#text} at (0,0) size 114x26
                text run at (0,0) width 114: "xxxline one"
            RenderListItem {LI} at (40,27) size 740x27
              RenderListMarker at (-22,0) size 9x26: bullet
              RenderText {#text} at (0,0) size 79x26
                text run at (0,0) width 79: "line two"
            RenderListItem {LI} at (40,54) size 740x27
              RenderListMarker at (-22,0) size 9x26: bullet
              RenderText {#text} at (0,0) size 92x26
                text run at (0,0) width 92: "line three"
caret: position 3 of child 0 {#text} of child 1 {LI} of child 1 {UL} of child 1 {DIV} of child 5 {DIV} of body
