EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 9 of DIV > BODY > HTML > #document
EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:(null) toDOMRange:range from 2 of #text > SPAN > LI > OL > DIV > BODY > HTML > #document to 2 of #text > SPAN > LI > OL > 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 {P} at (0,0) size 784x72
        RenderText {#text} at (0,0) size 636x18
          text run at (0,0) width 636: "This tests Insert{Un}OrderedList on a range selection that contains a mix of list and non-list content. "
        RenderInline {B} at (0,0) size 781x72
          RenderText {#text} at (636,0) size 781x72
            text run at (636,0) width 138: "This test used to end"
            text run at (0,18) width 781: "with a flat list from 1 to 6, with a selection extending from just before the last \"o\" in \"1. asdfoo\" to just after the \"a\""
            text run at (0,36) width 538: "in \"6. baz\". This result changed with John's rangeCompliantEquivalent fixes in"
            text run at (0,54) width 400: "CompositeEditCommand::moveParagraphs on 11/30/2006."
      RenderBlock {DIV} at (0,88) size 784x126
        RenderBlock (anonymous) at (0,0) size 784x0
        RenderBlock {OL} at (0,0) size 784x126
          RenderListItem {LI} at (40,0) size 744x36
            RenderBlock (anonymous) at (0,0) size 744x18
              RenderListMarker at (-20,0) size 16x18: "1"
            RenderBlock {OL} at (0,18) size 744x18
              RenderListItem {LI} at (40,0) size 704x18
                RenderListMarker at (-20,0) size 16x18: "1"
                RenderText {#text} at (0,0) size 21x18
                  text run at (0,0) width 21: "asd"
                RenderInline {SPAN} at (0,0) size 21x18
                  RenderText {#text} at (21,0) size 21x18
                    text run at (21,0) width 21: "foo"
          RenderListItem {LI} at (40,36) size 744x18
            RenderListMarker at (-20,0) size 16x18: "2"
            RenderText {#text} at (0,0) size 20x18
              text run at (0,0) width 20: "bar"
          RenderListItem {LI} at (40,54) size 744x18
            RenderListMarker at (-20,0) size 16x18: "3"
            RenderText {#text} at (0,0) size 22x18
              text run at (0,0) width 22: "baz"
          RenderListItem {LI} at (40,72) size 744x18
            RenderListMarker at (-20,0) size 16x18: "4"
            RenderText {#text} at (0,0) size 21x18
              text run at (0,0) width 21: "foo"
          RenderListItem {LI} at (40,90) size 744x18
            RenderListMarker at (-20,0) size 16x18: "5"
            RenderText {#text} at (0,0) size 20x18
              text run at (0,0) width 20: "bar"
          RenderListItem {LI} at (40,108) size 744x18
            RenderListMarker at (-20,0) size 16x18: "6"
            RenderInline {SPAN} at (0,0) size 22x18
              RenderText {#text} at (0,0) size 22x18
                text run at (0,0) width 22: "baz"
        RenderBlock (anonymous) at (0,142) size 784x0
caret: position 2 of child 0 {#text} of child 0 {SPAN} of child 5 {LI} of child 0 {OL} of child 2 {DIV} of child 1 {BODY} of child 0 {HTML} of document
