| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999-2003 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999-2003 Lars Knoll (knoll@kde.org) |
| 3 * 1999 Waldo Bastian (bastian@kde.org) | 3 * 1999 Waldo Bastian (bastian@kde.org) |
| 4 * 2001 Andreas Schlapbach (schlpbch@iam.unibe.ch) | 4 * 2001 Andreas Schlapbach (schlpbch@iam.unibe.ch) |
| 5 * 2001-2003 Dirk Mueller (mueller@kde.org) | 5 * 2001-2003 Dirk Mueller (mueller@kde.org) |
| 6 * Copyright (C) 2002, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv
ed. | 6 * Copyright (C) 2002, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv
ed. |
| 7 * Copyright (C) 2008 David Smith (catfish.man@gmail.com) | 7 * Copyright (C) 2008 David Smith (catfish.man@gmail.com) |
| 8 * Copyright (C) 2010 Google Inc. All rights reserved. | 8 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 9 * | 9 * |
| 10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
| (...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 248 case PseudoUserAgentCustomElement: | 248 case PseudoUserAgentCustomElement: |
| 249 case PseudoWebKitCustomElement: | 249 case PseudoWebKitCustomElement: |
| 250 case PseudoCue: | 250 case PseudoCue: |
| 251 case PseudoFutureCue: | 251 case PseudoFutureCue: |
| 252 case PseudoPastCue: | 252 case PseudoPastCue: |
| 253 case PseudoDistributed: | 253 case PseudoDistributed: |
| 254 case PseudoUnresolved: | 254 case PseudoUnresolved: |
| 255 case PseudoContent: | 255 case PseudoContent: |
| 256 case PseudoHost: | 256 case PseudoHost: |
| 257 case PseudoAncestor: | 257 case PseudoAncestor: |
| 258 case PseudoShadow: |
| 258 case PseudoFullScreen: | 259 case PseudoFullScreen: |
| 259 case PseudoFullScreenDocument: | 260 case PseudoFullScreenDocument: |
| 260 case PseudoFullScreenAncestor: | 261 case PseudoFullScreenAncestor: |
| 261 return NOPSEUDO; | 262 return NOPSEUDO; |
| 262 case PseudoNotParsed: | 263 case PseudoNotParsed: |
| 263 ASSERT_NOT_REACHED(); | 264 ASSERT_NOT_REACHED(); |
| 264 return NOPSEUDO; | 265 return NOPSEUDO; |
| 265 } | 266 } |
| 266 | 267 |
| 267 ASSERT_NOT_REACHED(); | 268 ASSERT_NOT_REACHED(); |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 351 {"-webkit-distributed(", CSSSelector::PseudoDistributed, 0}, | 352 {"-webkit-distributed(", CSSSelector::PseudoDistributed, 0}, |
| 352 {"in-range", CSSSelector::PseudoInRange, 0}, | 353 {"in-range", CSSSelector::PseudoInRange, 0}, |
| 353 {"out-of-range", CSSSelector::PseudoOutOfRange, 0}, | 354 {"out-of-range", CSSSelector::PseudoOutOfRange, 0}, |
| 354 {"scope", CSSSelector::PseudoScope, 0}, | 355 {"scope", CSSSelector::PseudoScope, 0}, |
| 355 {"unresolved", CSSSelector::PseudoUnresolved, 0}, | 356 {"unresolved", CSSSelector::PseudoUnresolved, 0}, |
| 356 {"host", CSSSelector::PseudoHost, CSSSel
ector::RequiresShadowDOM}, | 357 {"host", CSSSelector::PseudoHost, CSSSel
ector::RequiresShadowDOM}, |
| 357 {"host(", CSSSelector::PseudoHost, CSSSel
ector::RequiresShadowDOM}, | 358 {"host(", CSSSelector::PseudoHost, CSSSel
ector::RequiresShadowDOM}, |
| 358 {"ancestor", CSSSelector::PseudoAncestor, CSSSel
ector::RequiresShadowDOM}, | 359 {"ancestor", CSSSelector::PseudoAncestor, CSSSel
ector::RequiresShadowDOM}, |
| 359 {"ancestor(", CSSSelector::PseudoAncestor, CSSSel
ector::RequiresShadowDOM}, | 360 {"ancestor(", CSSSelector::PseudoAncestor, CSSSel
ector::RequiresShadowDOM}, |
| 360 {"content", CSSSelector::PseudoContent, CSSSel
ector::RequiresShadowDOM}, | 361 {"content", CSSSelector::PseudoContent, CSSSel
ector::RequiresShadowDOM}, |
| 362 {"shadow", CSSSelector::PseudoShadow, CSSSel
ector::RequiresShadowDOM}, |
| 361 }; | 363 }; |
| 362 | 364 |
| 363 static HashMap<StringImpl*, CSSSelector::PseudoType>* nameToPseudoTypeMap() | 365 static HashMap<StringImpl*, CSSSelector::PseudoType>* nameToPseudoTypeMap() |
| 364 { | 366 { |
| 365 static HashMap<StringImpl*, CSSSelector::PseudoType>* nameToPseudoType = 0; | 367 static HashMap<StringImpl*, CSSSelector::PseudoType>* nameToPseudoType = 0; |
| 366 if (!nameToPseudoType) { | 368 if (!nameToPseudoType) { |
| 367 nameToPseudoType = new HashMap<StringImpl*, CSSSelector::PseudoType>; | 369 nameToPseudoType = new HashMap<StringImpl*, CSSSelector::PseudoType>; |
| 368 | 370 |
| 369 size_t pseudoCount = WTF_ARRAY_LENGTH(pseudoTypeMap); | 371 size_t pseudoCount = WTF_ARRAY_LENGTH(pseudoTypeMap); |
| 370 for (size_t i = 0; i < pseudoCount; i++) { | 372 for (size_t i = 0; i < pseudoCount; i++) { |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 456 case PseudoScrollbar: | 458 case PseudoScrollbar: |
| 457 case PseudoScrollbarCorner: | 459 case PseudoScrollbarCorner: |
| 458 case PseudoScrollbarButton: | 460 case PseudoScrollbarButton: |
| 459 case PseudoScrollbarThumb: | 461 case PseudoScrollbarThumb: |
| 460 case PseudoScrollbarTrack: | 462 case PseudoScrollbarTrack: |
| 461 case PseudoScrollbarTrackPiece: | 463 case PseudoScrollbarTrackPiece: |
| 462 case PseudoSelection: | 464 case PseudoSelection: |
| 463 case PseudoUserAgentCustomElement: | 465 case PseudoUserAgentCustomElement: |
| 464 case PseudoWebKitCustomElement: | 466 case PseudoWebKitCustomElement: |
| 465 case PseudoContent: | 467 case PseudoContent: |
| 468 case PseudoShadow: |
| 466 element = true; | 469 element = true; |
| 467 break; | 470 break; |
| 468 case PseudoUnknown: | 471 case PseudoUnknown: |
| 469 case PseudoEmpty: | 472 case PseudoEmpty: |
| 470 case PseudoFirstChild: | 473 case PseudoFirstChild: |
| 471 case PseudoFirstOfType: | 474 case PseudoFirstOfType: |
| 472 case PseudoLastChild: | 475 case PseudoLastChild: |
| 473 case PseudoLastOfType: | 476 case PseudoLastOfType: |
| 474 case PseudoOnlyChild: | 477 case PseudoOnlyChild: |
| 475 case PseudoOnlyOfType: | 478 case PseudoOnlyOfType: |
| (...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 696 if (const CSSSelector* tagHistory = cs->tagHistory()) { | 699 if (const CSSSelector* tagHistory = cs->tagHistory()) { |
| 697 switch (cs->relation()) { | 700 switch (cs->relation()) { |
| 698 case CSSSelector::Descendant: | 701 case CSSSelector::Descendant: |
| 699 if (cs->relationIsAffectedByPseudoContent() && tagHistory->pseudoTyp
e() != CSSSelector::PseudoContent) | 702 if (cs->relationIsAffectedByPseudoContent() && tagHistory->pseudoTyp
e() != CSSSelector::PseudoContent) |
| 700 return tagHistory->selectorText("::-webkit-distributed(" + str.t
oString() + rightSide + ")"); | 703 return tagHistory->selectorText("::-webkit-distributed(" + str.t
oString() + rightSide + ")"); |
| 701 return tagHistory->selectorText(" " + str.toString() + rightSide); | 704 return tagHistory->selectorText(" " + str.toString() + rightSide); |
| 702 case CSSSelector::Child: | 705 case CSSSelector::Child: |
| 703 if (cs->relationIsAffectedByPseudoContent() && tagHistory->pseudoTyp
e() != CSSSelector::PseudoContent) | 706 if (cs->relationIsAffectedByPseudoContent() && tagHistory->pseudoTyp
e() != CSSSelector::PseudoContent) |
| 704 return tagHistory->selectorText("::-webkit-distributed(> " + str
.toString() + rightSide + ")"); | 707 return tagHistory->selectorText("::-webkit-distributed(> " + str
.toString() + rightSide + ")"); |
| 705 return tagHistory->selectorText(" > " + str.toString() + rightSide); | 708 return tagHistory->selectorText(" > " + str.toString() + rightSide); |
| 706 case CSSSelector::Shadow: | |
| 707 return tagHistory->selectorText(" /shadow/ " + str.toString() + righ
tSide); | |
| 708 case CSSSelector::ShadowDeep: | 709 case CSSSelector::ShadowDeep: |
| 709 return tagHistory->selectorText(" /shadow-deep/ " + str.toString() +
rightSide); | 710 return tagHistory->selectorText(" /shadow-deep/ " + str.toString() +
rightSide); |
| 710 case CSSSelector::DirectAdjacent: | 711 case CSSSelector::DirectAdjacent: |
| 711 return tagHistory->selectorText(" + " + str.toString() + rightSide); | 712 return tagHistory->selectorText(" + " + str.toString() + rightSide); |
| 712 case CSSSelector::IndirectAdjacent: | 713 case CSSSelector::IndirectAdjacent: |
| 713 return tagHistory->selectorText(" ~ " + str.toString() + rightSide); | 714 return tagHistory->selectorText(" ~ " + str.toString() + rightSide); |
| 714 case CSSSelector::SubSelector: | 715 case CSSSelector::SubSelector: |
| 715 ASSERT_NOT_REACHED(); | 716 ASSERT_NOT_REACHED(); |
| 716 case CSSSelector::ShadowPseudo: | 717 case CSSSelector::ShadowPseudo: |
| 717 return tagHistory->selectorText(str.toString() + rightSide); | 718 return tagHistory->selectorText(str.toString() + rightSide); |
| (...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 888 return false; | 889 return false; |
| 889 return (count - m_b) % m_a == 0; | 890 return (count - m_b) % m_a == 0; |
| 890 } else { | 891 } else { |
| 891 if (count > m_b) | 892 if (count > m_b) |
| 892 return false; | 893 return false; |
| 893 return (m_b - count) % (-m_a) == 0; | 894 return (m_b - count) % (-m_a) == 0; |
| 894 } | 895 } |
| 895 } | 896 } |
| 896 | 897 |
| 897 } // namespace WebCore | 898 } // namespace WebCore |
| OLD | NEW |