Changeset 167437 in webkit
- Timestamp:
- Apr 17, 2014 10:41:38 AM (10 years ago)
- Location:
- trunk
- Files:
-
- 5 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r167434 r167437 1 2014-04-17 Koji Ishii <kojishi@gmail.com> 2 3 Catch up ruby and its tag omission rule changes in HTML5 CR Feb 2014 4 https://bugs.webkit.org/show_bug.cgi?id=131175 5 6 Reviewed by Darin Adler. 7 8 25 new test cases in 2 test files imported from pull requests to html5lib-tests, 9 with run- and expected-files generated. 10 All new tests pass with the changes included in this patch. 11 12 * html5lib/generated/run-ruby-data-expected.txt: Added. 13 * html5lib/generated/run-ruby-data.html: Added (generated by generate-test-wrappers.py) 14 * html5lib/generated/run-ruby-write-expected.txt: Added. 15 * html5lib/generated/run-ruby-write.html: Added (generated by generate-test-wrappers.py) 16 * html5lib/resources/ruby.dat: Added from https://github.com/darobin/html5lib-tests/pull/1 17 * html5lib/resources/tests19.dat: Updated from https://github.com/html5lib/html5lib-tests/pull/27 18 1 19 2014-04-17 Alexey Proskuryakov <ap@apple.com> 2 20 -
trunk/LayoutTests/html5lib/resources/tests19.dat
r167213 r167437 249 249 | <p> 250 250 | <rt> 251 252 #data 253 <html><ruby>a<rb>b<rt></ruby></html> 254 #errors 255 (1,6): expected-doctype-but-got-start-tag 256 #document 257 | <html> 258 | <head> 259 | <body> 260 | <ruby> 261 | "a" 262 | <rb> 263 | "b" 264 | <rt> 265 266 #data 267 <html><ruby>a<rp>b<rt></ruby></html> 268 #errors 269 (1,6): expected-doctype-but-got-start-tag 270 #document 271 | <html> 272 | <head> 273 | <body> 274 | <ruby> 275 | "a" 276 | <rp> 277 | "b" 278 | <rt> 279 280 #data 281 <html><ruby>a<rt>b<rt></ruby></html> 282 #errors 283 (1,6): expected-doctype-but-got-start-tag 284 #document 285 | <html> 286 | <head> 287 | <body> 288 | <ruby> 289 | "a" 290 | <rt> 291 | "b" 292 | <rt> 293 294 #data 295 <html><ruby>a<rtc>b<rt>c<rb>d</ruby></html> 296 #errors 297 (1,6): expected-doctype-but-got-start-tag 298 #document 299 | <html> 300 | <head> 301 | <body> 302 | <ruby> 303 | "a" 304 | <rtc> 305 | "b" 306 | <rt> 307 | "c" 308 | <rb> 309 | "d" 251 310 252 311 #data -
trunk/Source/WebCore/ChangeLog
r167436 r167437 1 2014-04-17 Koji Ishii <kojishi@gmail.com> 2 3 Catch up ruby and its tag omission rule changes in HTML5 CR Feb 2014 4 https://bugs.webkit.org/show_bug.cgi?id=131175 5 6 Reviewed by Darin Adler. 7 8 Tests: html5lib/resources/ruby.dat 9 html5lib/resources/tests19.dat 10 11 This patch makes WebKit HTML parser to match to the tag omission rules of HTML5 CR Feb 2014: 12 http://www.w3.org/TR/2014/CR-html5-20140204/syntax.html#syntax-tag-omission 13 with the support for two new elements (rb, rtc) which were also defined in the spec: 14 http://www.w3.org/TR/2014/CR-html5-20140204/text-level-semantics.html#the-rb-element 15 http://www.w3.org/TR/2014/CR-html5-20140204/text-level-semantics.html#the-rtc-element 16 to better support use cases presented by W3C I18N WG: 17 http://www.w3.org/TR/ruby-use-cases/ 18 19 * html/HTMLTagNames.in: rb and rtc added as HTMLElement interfaces. 20 * html/parser/HTMLConstructionSite.cpp: 21 (WebCore::hasImpliedEndTag): the spec says rb and rtc have implied end tags. 22 * html/parser/HTMLTreeBuilder.cpp: 23 (WebCore::HTMLTreeBuilder::processStartTagForInBody): rb and rtc added. rt excludes rtc from its implied end tags. 24 1 25 2014-04-17 Darin Adler <darin@apple.com> 2 26 -
trunk/Source/WebCore/html/HTMLTagNames.in
r163528 r167437 101 101 progress interfaceName=HTMLProgressElement, conditional=PROGRESS_ELEMENT, generateTypeHelpers 102 102 q interfaceName=HTMLQuoteElement 103 rb interfaceName=HTMLElement 103 104 rp interfaceName=HTMLElement 104 105 rt interfaceName=HTMLElement 106 rtc interfaceName=HTMLElement 105 107 ruby interfaceName=HTMLElement 106 108 s interfaceName=HTMLElement -
trunk/Source/WebCore/html/parser/HTMLConstructionSite.cpp
r165699 r167437 65 65 || isHTMLOptGroupElement(item->node()) 66 66 || item->hasTagName(pTag) 67 || item->hasTagName(rbTag) 67 68 || item->hasTagName(rpTag) 68 || item->hasTagName(rtTag); 69 || item->hasTagName(rtTag) 70 || item->hasTagName(rtcTag); 69 71 } 70 72 -
trunk/Source/WebCore/html/parser/HTMLTreeBuilder.cpp
r166532 r167437 877 877 return; 878 878 } 879 if (token->name() == r pTag || token->name() == rtTag) {879 if (token->name() == rbTag || token->name() == rpTag || token->name() == rtcTag) { 880 880 if (m_tree.openElements()->inScope(rubyTag.localName())) { 881 881 m_tree.generateImpliedEndTags(); 882 882 if (!m_tree.currentStackItem()->hasTagName(rubyTag)) 883 parseError(token); 884 } 885 m_tree.insertHTMLElement(token); 886 return; 887 } 888 if (token->name() == rtTag) { 889 if (m_tree.openElements()->inScope(rubyTag.localName())) { 890 m_tree.generateImpliedEndTagsWithExclusion(rtcTag.localName()); 891 if (!m_tree.currentStackItem()->hasTagName(rubyTag) && !m_tree.currentStackItem()->hasTagName(rtcTag)) 883 892 parseError(token); 884 893 }
Note: See TracChangeset
for help on using the changeset viewer.