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

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

Issue 212123002: Unship '::-webkit-distributed(...)' functional pseudo element. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased Created 6 years, 9 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 | Annotate | Revision Log
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 232 matching lines...) Expand 10 before | Expand all | Expand 10 after
243 case PseudoFirstPage: 243 case PseudoFirstPage:
244 case PseudoLeftPage: 244 case PseudoLeftPage:
245 case PseudoRightPage: 245 case PseudoRightPage:
246 case PseudoInRange: 246 case PseudoInRange:
247 case PseudoOutOfRange: 247 case PseudoOutOfRange:
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:
254 case PseudoUnresolved: 253 case PseudoUnresolved:
255 case PseudoContent: 254 case PseudoContent:
256 case PseudoHost: 255 case PseudoHost:
257 case PseudoHostContext: 256 case PseudoHostContext:
258 case PseudoFullScreen: 257 case PseudoFullScreen:
259 case PseudoFullScreenDocument: 258 case PseudoFullScreenDocument:
260 case PseudoFullScreenAncestor: 259 case PseudoFullScreenAncestor:
261 return NOPSEUDO; 260 return NOPSEUDO;
262 case PseudoNotParsed: 261 case PseudoNotParsed:
263 ASSERT_NOT_REACHED(); 262 ASSERT_NOT_REACHED();
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 {"first", CSSSelector::PseudoFirstPage}, 339 {"first", CSSSelector::PseudoFirstPage},
341 {"left", CSSSelector::PseudoLeftPage}, 340 {"left", CSSSelector::PseudoLeftPage},
342 {"right", CSSSelector::PseudoRightPage}, 341 {"right", CSSSelector::PseudoRightPage},
343 {"-webkit-full-screen", CSSSelector::PseudoFullScreen}, 342 {"-webkit-full-screen", CSSSelector::PseudoFullScreen},
344 {"-webkit-full-screen-document", CSSSelector::PseudoFullScreenDocument}, 343 {"-webkit-full-screen-document", CSSSelector::PseudoFullScreenDocument},
345 {"-webkit-full-screen-ancestor", CSSSelector::PseudoFullScreenAncestor}, 344 {"-webkit-full-screen-ancestor", CSSSelector::PseudoFullScreenAncestor},
346 {"cue(", CSSSelector::PseudoCue}, 345 {"cue(", CSSSelector::PseudoCue},
347 {"cue", CSSSelector::PseudoWebKitCustomElement}, 346 {"cue", CSSSelector::PseudoWebKitCustomElement},
348 {"future", CSSSelector::PseudoFutureCue}, 347 {"future", CSSSelector::PseudoFutureCue},
349 {"past", CSSSelector::PseudoPastCue}, 348 {"past", CSSSelector::PseudoPastCue},
350 {"-webkit-distributed(", CSSSelector::PseudoDistributed},
351 {"in-range", CSSSelector::PseudoInRange}, 349 {"in-range", CSSSelector::PseudoInRange},
352 {"out-of-range", CSSSelector::PseudoOutOfRange}, 350 {"out-of-range", CSSSelector::PseudoOutOfRange},
353 {"scope", CSSSelector::PseudoScope}, 351 {"scope", CSSSelector::PseudoScope},
354 {"unresolved", CSSSelector::PseudoUnresolved}, 352 {"unresolved", CSSSelector::PseudoUnresolved},
355 {"host", CSSSelector::PseudoHost}, 353 {"host", CSSSelector::PseudoHost},
356 {"host(", CSSSelector::PseudoHost}, 354 {"host(", CSSSelector::PseudoHost},
357 {"host-context", CSSSelector::PseudoHostContext}, 355 {"host-context", CSSSelector::PseudoHostContext},
358 {"host-context(", CSSSelector::PseudoHostContext}, 356 {"host-context(", CSSSelector::PseudoHostContext},
359 {"content", CSSSelector::PseudoContent}, 357 {"content", CSSSelector::PseudoContent},
360 }; 358 };
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
439 bool isPagePseudoClass = false; // Page pseudo-class 437 bool isPagePseudoClass = false; // Page pseudo-class
440 438
441 switch (m_pseudoType) { 439 switch (m_pseudoType) {
442 case PseudoAfter: 440 case PseudoAfter:
443 case PseudoBefore: 441 case PseudoBefore:
444 case PseudoCue: 442 case PseudoCue:
445 case PseudoFirstLetter: 443 case PseudoFirstLetter:
446 case PseudoFirstLine: 444 case PseudoFirstLine:
447 compat = true; 445 compat = true;
448 case PseudoBackdrop: 446 case PseudoBackdrop:
449 case PseudoDistributed:
450 case PseudoResizer: 447 case PseudoResizer:
451 case PseudoScrollbar: 448 case PseudoScrollbar:
452 case PseudoScrollbarCorner: 449 case PseudoScrollbarCorner:
453 case PseudoScrollbarButton: 450 case PseudoScrollbarButton:
454 case PseudoScrollbarThumb: 451 case PseudoScrollbarThumb:
455 case PseudoScrollbarTrack: 452 case PseudoScrollbarTrack:
456 case PseudoScrollbarTrackPiece: 453 case PseudoScrollbarTrackPiece:
457 case PseudoSelection: 454 case PseudoSelection:
458 case PseudoUserAgentCustomElement: 455 case PseudoUserAgentCustomElement:
459 case PseudoWebKitCustomElement: 456 case PseudoWebKitCustomElement:
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
684 } 681 }
685 } 682 }
686 if (cs->relation() != CSSSelector::SubSelector || !cs->tagHistory()) 683 if (cs->relation() != CSSSelector::SubSelector || !cs->tagHistory())
687 break; 684 break;
688 cs = cs->tagHistory(); 685 cs = cs->tagHistory();
689 } 686 }
690 687
691 if (const CSSSelector* tagHistory = cs->tagHistory()) { 688 if (const CSSSelector* tagHistory = cs->tagHistory()) {
692 switch (cs->relation()) { 689 switch (cs->relation()) {
693 case CSSSelector::Descendant: 690 case CSSSelector::Descendant:
694 if (cs->relationIsAffectedByPseudoContent() && tagHistory->pseudoTyp e() != CSSSelector::PseudoContent)
695 return tagHistory->selectorText("::-webkit-distributed(" + str.t oString() + rightSide + ")");
696 return tagHistory->selectorText(" " + str.toString() + rightSide); 691 return tagHistory->selectorText(" " + str.toString() + rightSide);
697 case CSSSelector::Child: 692 case CSSSelector::Child:
698 if (cs->relationIsAffectedByPseudoContent() && tagHistory->pseudoTyp e() != CSSSelector::PseudoContent)
699 return tagHistory->selectorText("::-webkit-distributed(> " + str .toString() + rightSide + ")");
700 return tagHistory->selectorText(" > " + str.toString() + rightSide); 693 return tagHistory->selectorText(" > " + str.toString() + rightSide);
701 case CSSSelector::Shadow: 694 case CSSSelector::Shadow:
702 return tagHistory->selectorText(" /shadow/ " + str.toString() + righ tSide); 695 return tagHistory->selectorText(" /shadow/ " + str.toString() + righ tSide);
703 case CSSSelector::ShadowDeep: 696 case CSSSelector::ShadowDeep:
704 return tagHistory->selectorText(" /deep/ " + str.toString() + rightS ide); 697 return tagHistory->selectorText(" /deep/ " + str.toString() + rightS ide);
705 case CSSSelector::DirectAdjacent: 698 case CSSSelector::DirectAdjacent:
706 return tagHistory->selectorText(" + " + str.toString() + rightSide); 699 return tagHistory->selectorText(" + " + str.toString() + rightSide);
707 case CSSSelector::IndirectAdjacent: 700 case CSSSelector::IndirectAdjacent:
708 return tagHistory->selectorText(" ~ " + str.toString() + rightSide); 701 return tagHistory->selectorText(" ~ " + str.toString() + rightSide);
709 case CSSSelector::SubSelector: 702 case CSSSelector::SubSelector:
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
883 return false; 876 return false;
884 return (count - m_b) % m_a == 0; 877 return (count - m_b) % m_a == 0;
885 } else { 878 } else {
886 if (count > m_b) 879 if (count > m_b)
887 return false; 880 return false;
888 return (m_b - count) % (-m_a) == 0; 881 return (m_b - count) % (-m_a) == 0;
889 } 882 }
890 } 883 }
891 884
892 } // namespace WebCore 885 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698