OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Neither the name of Google Inc. nor the names of its | 10 * * Neither the name of Google Inc. nor the names of its |
(...skipping 19 matching lines...) Expand all Loading... |
30 #include "core/CoreExport.h" | 30 #include "core/CoreExport.h" |
31 #include "core/dom/Element.h" | 31 #include "core/dom/Element.h" |
32 #include "core/style/ComputedStyle.h" | 32 #include "core/style/ComputedStyle.h" |
33 | 33 |
34 namespace blink { | 34 namespace blink { |
35 | 35 |
36 class CORE_EXPORT PseudoElement : public Element { | 36 class CORE_EXPORT PseudoElement : public Element { |
37 public: | 37 public: |
38 static PassRefPtrWillBeRawPtr<PseudoElement> create(Element* parent, PseudoI
d); | 38 static PassRefPtrWillBeRawPtr<PseudoElement> create(Element* parent, PseudoI
d); |
39 | 39 |
40 virtual PassRefPtr<ComputedStyle> customStyleForLayoutObject() override; | 40 PassRefPtr<ComputedStyle> customStyleForLayoutObject() override; |
41 virtual void attach(const AttachContext& = AttachContext()) override; | 41 void attach(const AttachContext& = AttachContext()) override; |
42 virtual bool layoutObjectIsNeeded(const ComputedStyle&) override; | 42 bool layoutObjectIsNeeded(const ComputedStyle&) override; |
43 | 43 |
44 virtual bool canStartSelection() const override { return false; } | 44 bool canStartSelection() const override { return false; } |
45 virtual bool canContainRangeEndPoint() const override { return false; } | 45 bool canContainRangeEndPoint() const override { return false; } |
46 virtual PseudoId pseudoId() const override { return m_pseudoId; } | 46 PseudoId pseudoId() const override { return m_pseudoId; } |
47 | 47 |
48 static String pseudoElementNameForEvents(PseudoId); | 48 static String pseudoElementNameForEvents(PseudoId); |
49 | 49 |
50 Node* findAssociatedNode() const; | 50 Node* findAssociatedNode() const; |
51 | 51 |
52 virtual void dispose(); | 52 virtual void dispose(); |
53 | 53 |
54 protected: | 54 protected: |
55 PseudoElement(Element*, PseudoId); | 55 PseudoElement(Element*, PseudoId); |
56 | 56 |
57 private: | 57 private: |
58 virtual void didRecalcStyle(StyleRecalcChange) override; | 58 void didRecalcStyle(StyleRecalcChange) override; |
59 | 59 |
60 PseudoId m_pseudoId; | 60 PseudoId m_pseudoId; |
61 }; | 61 }; |
62 | 62 |
63 const QualifiedName& pseudoElementTagName(); | 63 const QualifiedName& pseudoElementTagName(); |
64 | 64 |
65 inline bool pseudoElementLayoutObjectIsNeeded(const ComputedStyle* style) | 65 inline bool pseudoElementLayoutObjectIsNeeded(const ComputedStyle* style) |
66 { | 66 { |
67 if (!style) | 67 if (!style) |
68 return false; | 68 return false; |
69 if (style->display() == NONE) | 69 if (style->display() == NONE) |
70 return false; | 70 return false; |
71 if (style->styleType() == FIRST_LETTER || style->styleType() == BACKDROP) | 71 if (style->styleType() == FIRST_LETTER || style->styleType() == BACKDROP) |
72 return true; | 72 return true; |
73 return style->contentData(); | 73 return style->contentData(); |
74 } | 74 } |
75 | 75 |
76 DEFINE_ELEMENT_TYPE_CASTS(PseudoElement, isPseudoElement()); | 76 DEFINE_ELEMENT_TYPE_CASTS(PseudoElement, isPseudoElement()); |
77 | 77 |
78 } // namespace | 78 } // namespace |
79 | 79 |
80 #endif | 80 #endif |
OLD | NEW |