| 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 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 250 case PseudoLeftPage: | 250 case PseudoLeftPage: |
| 251 case PseudoRightPage: | 251 case PseudoRightPage: |
| 252 case PseudoInRange: | 252 case PseudoInRange: |
| 253 case PseudoOutOfRange: | 253 case PseudoOutOfRange: |
| 254 case PseudoWebKitCustomElement: | 254 case PseudoWebKitCustomElement: |
| 255 case PseudoBlinkInternalElement: | 255 case PseudoBlinkInternalElement: |
| 256 case PseudoCue: | 256 case PseudoCue: |
| 257 case PseudoFutureCue: | 257 case PseudoFutureCue: |
| 258 case PseudoPastCue: | 258 case PseudoPastCue: |
| 259 case PseudoUnresolved: | 259 case PseudoUnresolved: |
| 260 case PseudoDefined: |
| 260 case PseudoContent: | 261 case PseudoContent: |
| 261 case PseudoHost: | 262 case PseudoHost: |
| 262 case PseudoHostContext: | 263 case PseudoHostContext: |
| 263 case PseudoShadow: | 264 case PseudoShadow: |
| 264 case PseudoFullScreen: | 265 case PseudoFullScreen: |
| 265 case PseudoFullScreenAncestor: | 266 case PseudoFullScreenAncestor: |
| 266 case PseudoSpatialNavigationFocus: | 267 case PseudoSpatialNavigationFocus: |
| 267 case PseudoListBox: | 268 case PseudoListBox: |
| 268 case PseudoHostHasAppearance: | 269 case PseudoHostHasAppearance: |
| 269 case PseudoSlotted: | 270 case PseudoSlotted: |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 310 {"active", CSSSelector::PseudoActive}, | 311 {"active", CSSSelector::PseudoActive}, |
| 311 {"after", CSSSelector::PseudoAfter}, | 312 {"after", CSSSelector::PseudoAfter}, |
| 312 {"backdrop", CSSSelector::PseudoBackdrop}, | 313 {"backdrop", CSSSelector::PseudoBackdrop}, |
| 313 {"before", CSSSelector::PseudoBefore}, | 314 {"before", CSSSelector::PseudoBefore}, |
| 314 {"checked", CSSSelector::PseudoChecked}, | 315 {"checked", CSSSelector::PseudoChecked}, |
| 315 {"content", CSSSelector::PseudoContent}, | 316 {"content", CSSSelector::PseudoContent}, |
| 316 {"corner-present", CSSSelector::PseudoCornerPresent}, | 317 {"corner-present", CSSSelector::PseudoCornerPresent}, |
| 317 {"cue", CSSSelector::PseudoWebKitCustomElement}, | 318 {"cue", CSSSelector::PseudoWebKitCustomElement}, |
| 318 {"decrement", CSSSelector::PseudoDecrement}, | 319 {"decrement", CSSSelector::PseudoDecrement}, |
| 319 {"default", CSSSelector::PseudoDefault}, | 320 {"default", CSSSelector::PseudoDefault}, |
| 321 {"defined", CSSSelector::PseudoDefined}, |
| 320 {"disabled", CSSSelector::PseudoDisabled}, | 322 {"disabled", CSSSelector::PseudoDisabled}, |
| 321 {"double-button", CSSSelector::PseudoDoubleButton}, | 323 {"double-button", CSSSelector::PseudoDoubleButton}, |
| 322 {"empty", CSSSelector::PseudoEmpty}, | 324 {"empty", CSSSelector::PseudoEmpty}, |
| 323 {"enabled", CSSSelector::PseudoEnabled}, | 325 {"enabled", CSSSelector::PseudoEnabled}, |
| 324 {"end", CSSSelector::PseudoEnd}, | 326 {"end", CSSSelector::PseudoEnd}, |
| 325 {"first", CSSSelector::PseudoFirstPage}, | 327 {"first", CSSSelector::PseudoFirstPage}, |
| 326 {"first-child", CSSSelector::PseudoFirstChild}, | 328 {"first-child", CSSSelector::PseudoFirstChild}, |
| 327 {"first-letter", CSSSelector::PseudoFirstLetter}, | 329 {"first-letter", CSSSelector::PseudoFirstLetter}, |
| 328 {"first-line", CSSSelector::PseudoFirstLine}, | 330 {"first-line", CSSSelector::PseudoFirstLine}, |
| 329 {"first-of-type", CSSSelector::PseudoFirstOfType}, | 331 {"first-of-type", CSSSelector::PseudoFirstOfType}, |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 407 pseudoTypeMapEnd = pseudoTypeWithArgumentsMap + WTF_ARRAY_LENGTH(pseudoT
ypeWithArgumentsMap); | 409 pseudoTypeMapEnd = pseudoTypeWithArgumentsMap + WTF_ARRAY_LENGTH(pseudoT
ypeWithArgumentsMap); |
| 408 } else { | 410 } else { |
| 409 pseudoTypeMap = pseudoTypeWithoutArgumentsMap; | 411 pseudoTypeMap = pseudoTypeWithoutArgumentsMap; |
| 410 pseudoTypeMapEnd = pseudoTypeWithoutArgumentsMap + WTF_ARRAY_LENGTH(pseu
doTypeWithoutArgumentsMap); | 412 pseudoTypeMapEnd = pseudoTypeWithoutArgumentsMap + WTF_ARRAY_LENGTH(pseu
doTypeWithoutArgumentsMap); |
| 411 } | 413 } |
| 412 NameToPseudoStruct dummyKey = { 0, CSSSelector::PseudoUnknown }; | 414 NameToPseudoStruct dummyKey = { 0, CSSSelector::PseudoUnknown }; |
| 413 const NameToPseudoStruct* match = std::lower_bound(pseudoTypeMap, pseudoType
MapEnd, dummyKey, NameToPseudoCompare(name)); | 415 const NameToPseudoStruct* match = std::lower_bound(pseudoTypeMap, pseudoType
MapEnd, dummyKey, NameToPseudoCompare(name)); |
| 414 if (match == pseudoTypeMapEnd || match->string != name.getString()) | 416 if (match == pseudoTypeMapEnd || match->string != name.getString()) |
| 415 return CSSSelector::PseudoUnknown; | 417 return CSSSelector::PseudoUnknown; |
| 416 | 418 |
| 419 if (match->type == CSSSelector::PseudoDefined && !RuntimeEnabledFeatures::cu
stomElementsV1Enabled()) |
| 420 return CSSSelector::PseudoUnknown; |
| 421 |
| 417 return static_cast<CSSSelector::PseudoType>(match->type); | 422 return static_cast<CSSSelector::PseudoType>(match->type); |
| 418 } | 423 } |
| 419 | 424 |
| 420 #ifndef NDEBUG | 425 #ifndef NDEBUG |
| 421 void CSSSelector::show(int indent) const | 426 void CSSSelector::show(int indent) const |
| 422 { | 427 { |
| 423 printf("%*sselectorText(): %s\n", indent, "", selectorText().ascii().data())
; | 428 printf("%*sselectorText(): %s\n", indent, "", selectorText().ascii().data())
; |
| 424 printf("%*sm_match: %d\n", indent, "", m_match); | 429 printf("%*sm_match: %d\n", indent, "", m_match); |
| 425 if (m_match != Tag) | 430 if (m_match != Tag) |
| 426 printf("%*svalue(): %s\n", indent, "", value().ascii().data()); | 431 printf("%*svalue(): %s\n", indent, "", value().ascii().data()); |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 505 m_pseudoType = PseudoUnknown; | 510 m_pseudoType = PseudoUnknown; |
| 506 break; | 511 break; |
| 507 case PseudoActive: | 512 case PseudoActive: |
| 508 case PseudoAny: | 513 case PseudoAny: |
| 509 case PseudoAnyLink: | 514 case PseudoAnyLink: |
| 510 case PseudoAutofill: | 515 case PseudoAutofill: |
| 511 case PseudoChecked: | 516 case PseudoChecked: |
| 512 case PseudoCornerPresent: | 517 case PseudoCornerPresent: |
| 513 case PseudoDecrement: | 518 case PseudoDecrement: |
| 514 case PseudoDefault: | 519 case PseudoDefault: |
| 520 case PseudoDefined: |
| 515 case PseudoDisabled: | 521 case PseudoDisabled: |
| 516 case PseudoDoubleButton: | 522 case PseudoDoubleButton: |
| 517 case PseudoDrag: | 523 case PseudoDrag: |
| 518 case PseudoEmpty: | 524 case PseudoEmpty: |
| 519 case PseudoEnabled: | 525 case PseudoEnabled: |
| 520 case PseudoEnd: | 526 case PseudoEnd: |
| 521 case PseudoFirstChild: | 527 case PseudoFirstChild: |
| 522 case PseudoFirstOfType: | 528 case PseudoFirstOfType: |
| 523 case PseudoFocus: | 529 case PseudoFocus: |
| 524 case PseudoFullPageMedia: | 530 case PseudoFullPageMedia: |
| (...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 927 if (count < nthBValue()) | 933 if (count < nthBValue()) |
| 928 return false; | 934 return false; |
| 929 return (count - nthBValue()) % nthAValue() == 0; | 935 return (count - nthBValue()) % nthAValue() == 0; |
| 930 } | 936 } |
| 931 if (count > nthBValue()) | 937 if (count > nthBValue()) |
| 932 return false; | 938 return false; |
| 933 return (nthBValue() - count) % (-nthAValue()) == 0; | 939 return (nthBValue() - count) % (-nthAValue()) == 0; |
| 934 } | 940 } |
| 935 | 941 |
| 936 } // namespace blink | 942 } // namespace blink |
| OLD | NEW |