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

Side by Side Diff: Source/core/dom/MarkerPseudoElement.h

Issue 778003003: List marker pseudo elements. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 10 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
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef MarkerPseudoElement_h
6 #define MarkerPseudoElement_h
7
8 #include "core/dom/PseudoElement.h"
9
10 namespace blink {
11
12 class RenderBlockFlow;
13 class RenderListMarker;
14
15 class MarkerPseudoElement final : public PseudoElement {
16 WTF_MAKE_NONCOPYABLE(MarkerPseudoElement);
17 public:
18 static PassRefPtrWillBeRawPtr<MarkerPseudoElement> create(Element* parent)
19 {
20 return adoptRefWillBeNoop(new MarkerPseudoElement(parent));
21 }
22
23 virtual ~MarkerPseudoElement();
24
25 void attach(const AttachContext& = AttachContext()) override;
26 void removeListMarker();
27
28 RenderObject* createRenderer(RenderStyle*) override;
29
30 // FIXME: Make these private and file static when old code is removed.
31 static RenderObject* getParentOfFirstLineBox(RenderBlockFlow* curr, const Re nderObject* marker);
32 static RenderObject* firstNonMarkerChild(RenderObject* parent);
33
34 static PassRefPtr<RenderStyle> styleForListMarkerRenderer(RenderObject&, Ren derStyle*);
35
36 private:
37 explicit MarkerPseudoElement(Element*);
38
39 PassRefPtr<RenderStyle> customStyleForRenderer();
40
41 void didRecalcStyle(StyleRecalcChange) override;
42
43 void attachListMarkerRenderer();
44 };
45
46 DEFINE_ELEMENT_TYPE_CASTS(MarkerPseudoElement, isMarkerPseudoElement());
47
48 } // namespace blink
49
50 #endif // MarkerPseudoElement_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698