Skip to content
  • darin's avatar
    LayoutTests: · 55ae73e3
    darin authored
            Reviewed by Mitz.
    
            - test for http://bugs.webkit.org/show_bug.cgi?id=7452
              <rdar://problem/3211749> line breaks ignored after <wbr> in <pre> block (affects livejournal.com)
    
            * fast/text/wbr-pre-expected.checksum: Added.
            * fast/text/wbr-pre-expected.png: Added.
            * fast/text/wbr-pre-expected.txt: Added.
            * fast/text/wbr-pre.html: Added.
    
            - test for http://bugs.webkit.org/show_bug.cgi?id=10657
              <rdar://problem/4274588> <wbr> tags are ignored
    
            * fast/text/wbr-expected.checksum: Added.
            * fast/text/wbr-expected.png: Added.
            * fast/text/wbr-expected.txt: Added.
            * fast/text/wbr.html: Added.
    
            - test for http://bugs.webkit.org/show_bug.cgi?id=12689
              <wbr> :before/:after content causes line break
    
            * fast/css-generated-content/wbr-with-before-content-expected.checksum: Added.
            * fast/css-generated-content/wbr-with-before-content-expected.png: Added.
            * fast/css-generated-content/wbr-with-before-content-expected.txt: Added.
            * fast/css-generated-content/wbr-with-before-content.html: Added.
    
            - test for <rdar://problem/5127366> DOM tree isn't correct when parsing with <wbr>
    
            * fast/invalid/021-expected.txt: Updated result.
            * fast/parser/parse-wbr-expected.txt: Added.
            * fast/parser/parse-wbr.html: Added.
    
    WebCore:
    
            Reviewed by Mitz.
    
            - fix http://bugs.webkit.org/show_bug.cgi?id=7452
              <rdar://problem/3211749> line breaks ignored after <wbr> in <pre> block (affects livejournal.com)
    
            - fix http://bugs.webkit.org/show_bug.cgi?id=10657
              <rdar://problem/4274588> <wbr> tags are ignored
    
            - fix http://bugs.webkit.org/show_bug.cgi?id=12689
              <wbr> :before/:after content causes line break
    
            - fix <rdar://problem/5127366> DOM tree isn't correct when parsing with <wbr>
    
            Test: fast/text/wbr-pre.html
            Test: fast/text/wbr.html
            Test: fast/css-generated-content/wbr-with-before-content.html
            Test: fast/parser/parse-wbr.html
    
            * html/HTMLElement.h:
            * html/HTMLElement.cpp:
            (WebCore::HTMLElement::endTagRequirement): Use the same end tag requirement for a <wbr>
            element as for a <br> element, TagStatusForbidden.
            (WebCore::HTMLElement::tagPriority): Use the same priority for a <wbr> element as for a
            <br> element, 0.
            (WebCore::HTMLElement::createRenderer): Added. Create a RenderWordBreak to trigger the
            new rendering code paths.
    
            * rendering/RenderFlow.h: Add a virtual isWordBreak so we can detect RenderWordBreak.
    
            * rendering/RenderWordBreak.h: Added.
            * rendering/RenderWordBreak.cpp: Added.
    
            * WebCore.pro: Added new files.
            * WebCore.xcodeproj/project.pbxproj: Added new files.
            * WebCoreSources.bkl: Added new files.
    
            * rendering/RenderBlock.cpp: (WebCore::RenderBlock::calcInlinePrefWidths): Reset the
            line when we hit a <wbr>.
            * rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak): Add a line break when
            we hit a <wbr>.
    
            * dom/Node.cpp: (Node::createRendererIfNeeded): Fix a null check for the case where
            createRenderer returns 0 even though rendererIsNeeded returned true. I can't reproduce
            it on demand, but while running layout tests I hit this once. Since there was already
            a null check here, I rearranged it so it guards all the code that uses the renderer.
            Later we might want to figure out under exactly what circumstances rendererIsNeeded
            will return true but createRenderer return 0 and consider eliminating them.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21405 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    55ae73e3