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

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

Issue 1958073002: Introduce :-internal-shadow-host-has-appearance pseudo class, and apply it to METER element. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 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 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 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 case PseudoPastCue: 257 case PseudoPastCue:
258 case PseudoUnresolved: 258 case PseudoUnresolved:
259 case PseudoContent: 259 case PseudoContent:
260 case PseudoHost: 260 case PseudoHost:
261 case PseudoHostContext: 261 case PseudoHostContext:
262 case PseudoShadow: 262 case PseudoShadow:
263 case PseudoFullScreen: 263 case PseudoFullScreen:
264 case PseudoFullScreenAncestor: 264 case PseudoFullScreenAncestor:
265 case PseudoSpatialNavigationFocus: 265 case PseudoSpatialNavigationFocus:
266 case PseudoListBox: 266 case PseudoListBox:
267 case PseudoHostHasAppearance:
267 case PseudoSlotted: 268 case PseudoSlotted:
268 return PseudoIdNone; 269 return PseudoIdNone;
269 } 270 }
270 271
271 ASSERT_NOT_REACHED(); 272 ASSERT_NOT_REACHED();
272 return PseudoIdNone; 273 return PseudoIdNone;
273 } 274 }
274 275
275 // Could be made smaller and faster by replacing pointer with an 276 // Could be made smaller and faster by replacing pointer with an
276 // offset into a string buffer and making the bit fields smaller but 277 // offset into a string buffer and making the bit fields smaller but
277 // that could not be maintained by hand. 278 // that could not be maintained by hand.
278 struct NameToPseudoStruct { 279 struct NameToPseudoStruct {
279 const char* string; 280 const char* string;
280 unsigned type:8; 281 unsigned type:8;
281 }; 282 };
282 283
283 // These tables should be kept sorted. 284 // These tables should be kept sorted.
284 const static NameToPseudoStruct pseudoTypeWithoutArgumentsMap[] = { 285 const static NameToPseudoStruct pseudoTypeWithoutArgumentsMap[] = {
285 {"-internal-list-box", CSSSelector::PseudoListBox}, 286 {"-internal-list-box", CSSSelector::PseudoListBox},
286 {"-internal-media-controls-cast-button", CSSSelector::PseudoWebKitCustomElement} , 287 {"-internal-media-controls-cast-button", CSSSelector::PseudoWebKitCustomElement} ,
287 {"-internal-media-controls-overlay-cast-button", CSSSelector::PseudoWebKitCustom Element}, 288 {"-internal-media-controls-overlay-cast-button", CSSSelector::PseudoWebKitCustom Element},
288 {"-internal-media-controls-text-track-list", CSSSelector::PseudoWebKitCustomElem ent}, 289 {"-internal-media-controls-text-track-list", CSSSelector::PseudoWebKitCustomElem ent},
289 {"-internal-media-controls-text-track-list-item", CSSSelector::PseudoWebKitCusto mElement}, 290 {"-internal-media-controls-text-track-list-item", CSSSelector::PseudoWebKitCusto mElement},
290 {"-internal-media-controls-text-track-list-item-input", CSSSelector::PseudoWebKi tCustomElement}, 291 {"-internal-media-controls-text-track-list-item-input", CSSSelector::PseudoWebKi tCustomElement},
291 {"-internal-media-controls-text-track-list-kind-captions", CSSSelector::PseudoWe bKitCustomElement}, 292 {"-internal-media-controls-text-track-list-kind-captions", CSSSelector::PseudoWe bKitCustomElement},
292 {"-internal-media-controls-text-track-list-kind-subtitles", CSSSelector::PseudoW ebKitCustomElement}, 293 {"-internal-media-controls-text-track-list-kind-subtitles", CSSSelector::PseudoW ebKitCustomElement},
294 {"-internal-shadow-host-has-appearance", CSSSelector::PseudoHostHasAppearance},
293 {"-internal-spatial-navigation-focus", CSSSelector::PseudoSpatialNavigationFocus }, 295 {"-internal-spatial-navigation-focus", CSSSelector::PseudoSpatialNavigationFocus },
294 {"-webkit-any-link", CSSSelector::PseudoAnyLink}, 296 {"-webkit-any-link", CSSSelector::PseudoAnyLink},
295 {"-webkit-autofill", CSSSelector::PseudoAutofill}, 297 {"-webkit-autofill", CSSSelector::PseudoAutofill},
296 {"-webkit-drag", CSSSelector::PseudoDrag}, 298 {"-webkit-drag", CSSSelector::PseudoDrag},
297 {"-webkit-full-page-media", CSSSelector::PseudoFullPageMedia}, 299 {"-webkit-full-page-media", CSSSelector::PseudoFullPageMedia},
298 {"-webkit-full-screen", CSSSelector::PseudoFullScreen}, 300 {"-webkit-full-screen", CSSSelector::PseudoFullScreen},
299 {"-webkit-full-screen-ancestor", CSSSelector::PseudoFullScreenAncestor}, 301 {"-webkit-full-screen-ancestor", CSSSelector::PseudoFullScreenAncestor},
300 {"-webkit-resizer", CSSSelector::PseudoResizer}, 302 {"-webkit-resizer", CSSSelector::PseudoResizer},
301 {"-webkit-scrollbar", CSSSelector::PseudoScrollbar}, 303 {"-webkit-scrollbar", CSSSelector::PseudoScrollbar},
302 {"-webkit-scrollbar-button", CSSSelector::PseudoScrollbarButton}, 304 {"-webkit-scrollbar-button", CSSSelector::PseudoScrollbarButton},
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
515 case PseudoFirstChild: 517 case PseudoFirstChild:
516 case PseudoFirstOfType: 518 case PseudoFirstOfType:
517 case PseudoFocus: 519 case PseudoFocus:
518 case PseudoFullPageMedia: 520 case PseudoFullPageMedia:
519 case PseudoFullScreen: 521 case PseudoFullScreen:
520 case PseudoFullScreenAncestor: 522 case PseudoFullScreenAncestor:
521 case PseudoFutureCue: 523 case PseudoFutureCue:
522 case PseudoHorizontal: 524 case PseudoHorizontal:
523 case PseudoHost: 525 case PseudoHost:
524 case PseudoHostContext: 526 case PseudoHostContext:
527 case PseudoHostHasAppearance:
525 case PseudoHover: 528 case PseudoHover:
526 case PseudoInRange: 529 case PseudoInRange:
527 case PseudoIncrement: 530 case PseudoIncrement:
528 case PseudoIndeterminate: 531 case PseudoIndeterminate:
529 case PseudoInvalid: 532 case PseudoInvalid:
530 case PseudoLang: 533 case PseudoLang:
531 case PseudoLastChild: 534 case PseudoLastChild:
532 case PseudoLastOfType: 535 case PseudoLastOfType:
533 case PseudoLink: 536 case PseudoLink:
534 case PseudoListBox: 537 case PseudoListBox:
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after
797 case CSSSelector::PseudoFirstChild: 800 case CSSSelector::PseudoFirstChild:
798 case CSSSelector::PseudoLastChild: 801 case CSSSelector::PseudoLastChild:
799 case CSSSelector::PseudoFirstOfType: 802 case CSSSelector::PseudoFirstOfType:
800 case CSSSelector::PseudoLastOfType: 803 case CSSSelector::PseudoLastOfType:
801 case CSSSelector::PseudoOnlyOfType: 804 case CSSSelector::PseudoOnlyOfType:
802 case CSSSelector::PseudoHost: 805 case CSSSelector::PseudoHost:
803 case CSSSelector::PseudoHostContext: 806 case CSSSelector::PseudoHostContext:
804 case CSSSelector::PseudoNot: 807 case CSSSelector::PseudoNot:
805 case CSSSelector::PseudoSpatialNavigationFocus: 808 case CSSSelector::PseudoSpatialNavigationFocus:
806 case CSSSelector::PseudoListBox: 809 case CSSSelector::PseudoListBox:
810 case CSSSelector::PseudoHostHasAppearance:
807 return true; 811 return true;
808 default: 812 default:
809 return false; 813 return false;
810 } 814 }
811 } 815 }
812 816
813 bool CSSSelector::isCompound() const 817 bool CSSSelector::isCompound() const
814 { 818 {
815 if (!validateSubSelector(this)) 819 if (!validateSubSelector(this))
816 return false; 820 return false;
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
919 if (count < nthBValue()) 923 if (count < nthBValue())
920 return false; 924 return false;
921 return (count - nthBValue()) % nthAValue() == 0; 925 return (count - nthBValue()) % nthAValue() == 0;
922 } 926 }
923 if (count > nthBValue()) 927 if (count > nthBValue())
924 return false; 928 return false;
925 return (nthBValue() - count) % (-nthAValue()) == 0; 929 return (nthBValue() - count) % (-nthAValue()) == 0;
926 } 930 }
927 931
928 } // namespace blink 932 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698