Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: third_party/WebKit/Source/core/css/CSSSelector.cpp

Issue 2795143004: [selectors4] Implement :focus-within pseudo-class (Closed)
Patch Set: Rebased patch Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 6 * Copyright (C) 2002, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights
7 * reserved. 7 * reserved.
8 * Copyright (C) 2008 David Smith (catfish.man@gmail.com) 8 * Copyright (C) 2008 David Smith (catfish.man@gmail.com)
9 * Copyright (C) 2010 Google Inc. All rights reserved. 9 * Copyright (C) 2010 Google Inc. All rights reserved.
10 * 10 *
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 case kPseudoNthLastChild: 209 case kPseudoNthLastChild:
210 case kPseudoNthLastOfType: 210 case kPseudoNthLastOfType:
211 case kPseudoLink: 211 case kPseudoLink:
212 case kPseudoVisited: 212 case kPseudoVisited:
213 case kPseudoAny: 213 case kPseudoAny:
214 case kPseudoAnyLink: 214 case kPseudoAnyLink:
215 case kPseudoAutofill: 215 case kPseudoAutofill:
216 case kPseudoHover: 216 case kPseudoHover:
217 case kPseudoDrag: 217 case kPseudoDrag:
218 case kPseudoFocus: 218 case kPseudoFocus:
219 case kPseudoFocusWithin:
219 case kPseudoActive: 220 case kPseudoActive:
220 case kPseudoChecked: 221 case kPseudoChecked:
221 case kPseudoEnabled: 222 case kPseudoEnabled:
222 case kPseudoFullPageMedia: 223 case kPseudoFullPageMedia:
223 case kPseudoDefault: 224 case kPseudoDefault:
224 case kPseudoDisabled: 225 case kPseudoDisabled:
225 case kPseudoOptional: 226 case kPseudoOptional:
226 case kPseudoPlaceholder: 227 case kPseudoPlaceholder:
227 case kPseudoPlaceholderShown: 228 case kPseudoPlaceholderShown:
228 case kPseudoRequired: 229 case kPseudoRequired:
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
326 {"double-button", CSSSelector::kPseudoDoubleButton}, 327 {"double-button", CSSSelector::kPseudoDoubleButton},
327 {"empty", CSSSelector::kPseudoEmpty}, 328 {"empty", CSSSelector::kPseudoEmpty},
328 {"enabled", CSSSelector::kPseudoEnabled}, 329 {"enabled", CSSSelector::kPseudoEnabled},
329 {"end", CSSSelector::kPseudoEnd}, 330 {"end", CSSSelector::kPseudoEnd},
330 {"first", CSSSelector::kPseudoFirstPage}, 331 {"first", CSSSelector::kPseudoFirstPage},
331 {"first-child", CSSSelector::kPseudoFirstChild}, 332 {"first-child", CSSSelector::kPseudoFirstChild},
332 {"first-letter", CSSSelector::kPseudoFirstLetter}, 333 {"first-letter", CSSSelector::kPseudoFirstLetter},
333 {"first-line", CSSSelector::kPseudoFirstLine}, 334 {"first-line", CSSSelector::kPseudoFirstLine},
334 {"first-of-type", CSSSelector::kPseudoFirstOfType}, 335 {"first-of-type", CSSSelector::kPseudoFirstOfType},
335 {"focus", CSSSelector::kPseudoFocus}, 336 {"focus", CSSSelector::kPseudoFocus},
337 {"focus-within", CSSSelector::kPseudoFocusWithin},
336 {"future", CSSSelector::kPseudoFutureCue}, 338 {"future", CSSSelector::kPseudoFutureCue},
337 {"horizontal", CSSSelector::kPseudoHorizontal}, 339 {"horizontal", CSSSelector::kPseudoHorizontal},
338 {"host", CSSSelector::kPseudoHost}, 340 {"host", CSSSelector::kPseudoHost},
339 {"hover", CSSSelector::kPseudoHover}, 341 {"hover", CSSSelector::kPseudoHover},
340 {"in-range", CSSSelector::kPseudoInRange}, 342 {"in-range", CSSSelector::kPseudoInRange},
341 {"increment", CSSSelector::kPseudoIncrement}, 343 {"increment", CSSSelector::kPseudoIncrement},
342 {"indeterminate", CSSSelector::kPseudoIndeterminate}, 344 {"indeterminate", CSSSelector::kPseudoIndeterminate},
343 {"invalid", CSSSelector::kPseudoInvalid}, 345 {"invalid", CSSSelector::kPseudoInvalid},
344 {"last-child", CSSSelector::kPseudoLastChild}, 346 {"last-child", CSSSelector::kPseudoLastChild},
345 {"last-of-type", CSSSelector::kPseudoLastOfType}, 347 {"last-of-type", CSSSelector::kPseudoLastOfType},
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
541 case kPseudoDefined: 543 case kPseudoDefined:
542 case kPseudoDisabled: 544 case kPseudoDisabled:
543 case kPseudoDoubleButton: 545 case kPseudoDoubleButton:
544 case kPseudoDrag: 546 case kPseudoDrag:
545 case kPseudoEmpty: 547 case kPseudoEmpty:
546 case kPseudoEnabled: 548 case kPseudoEnabled:
547 case kPseudoEnd: 549 case kPseudoEnd:
548 case kPseudoFirstChild: 550 case kPseudoFirstChild:
549 case kPseudoFirstOfType: 551 case kPseudoFirstOfType:
550 case kPseudoFocus: 552 case kPseudoFocus:
553 case kPseudoFocusWithin:
551 case kPseudoFullPageMedia: 554 case kPseudoFullPageMedia:
552 case kPseudoFullScreen: 555 case kPseudoFullScreen:
553 case kPseudoFullScreenAncestor: 556 case kPseudoFullScreenAncestor:
554 case kPseudoFutureCue: 557 case kPseudoFutureCue:
555 case kPseudoHorizontal: 558 case kPseudoHorizontal:
556 case kPseudoHost: 559 case kPseudoHost:
557 case kPseudoHostContext: 560 case kPseudoHostContext:
558 case kPseudoHostHasAppearance: 561 case kPseudoHostHasAppearance:
559 case kPseudoHover: 562 case kPseudoHover:
560 case kPseudoInRange: 563 case kPseudoInRange:
(...skipping 449 matching lines...) Expand 10 before | Expand all | Expand 10 after
1010 if (count < NthBValue()) 1013 if (count < NthBValue())
1011 return false; 1014 return false;
1012 return (count - NthBValue()) % NthAValue() == 0; 1015 return (count - NthBValue()) % NthAValue() == 0;
1013 } 1016 }
1014 if (count > NthBValue()) 1017 if (count > NthBValue())
1015 return false; 1018 return false;
1016 return (NthBValue() - count) % (-NthAValue()) == 0; 1019 return (NthBValue() - count) % (-NthAValue()) == 0;
1017 } 1020 }
1018 1021
1019 } // namespace blink 1022 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/css/CSSSelector.h ('k') | third_party/WebKit/Source/core/css/RuleFeature.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698