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

Side by Side Diff: Source/web/LinkHighlight.h

Issue 541913002: Create a GraphicsContext from a DisplayList. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@display-list-changes
Patch Set: Rebased Created 6 years, 3 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
« no previous file with comments | « Source/platform/graphics/GraphicsContext.cpp ('k') | Source/web/LinkHighlight.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 10 matching lines...) Expand all
21 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 */ 24 */
25 25
26 #ifndef LinkHighlight_h 26 #ifndef LinkHighlight_h
27 #define LinkHighlight_h 27 #define LinkHighlight_h
28 28
29 #include "platform/geometry/FloatPoint.h" 29 #include "platform/geometry/FloatPoint.h"
30 #include "platform/geometry/IntPoint.h" 30 #include "platform/geometry/IntPoint.h"
31 #include "platform/graphics/DisplayList.h"
esprehn 2014/09/06 01:29:17 Can we forward declare this instead?
Stephen Chennney 2014/09/08 17:42:09 Done.
31 #include "platform/graphics/GraphicsLayer.h" 32 #include "platform/graphics/GraphicsLayer.h"
32 #include "platform/graphics/Path.h" 33 #include "platform/graphics/Path.h"
33 #include "public/platform/WebCompositorAnimationDelegate.h" 34 #include "public/platform/WebCompositorAnimationDelegate.h"
34 #include "public/platform/WebContentLayer.h" 35 #include "public/platform/WebContentLayer.h"
35 #include "public/platform/WebContentLayerClient.h" 36 #include "public/platform/WebContentLayerClient.h"
36 #include "public/platform/WebLayer.h" 37 #include "public/platform/WebLayer.h"
37 #include "wtf/OwnPtr.h" 38 #include "wtf/OwnPtr.h"
38 #include "wtf/Vector.h" 39 #include "wtf/Vector.h"
39 40
40 namespace blink { 41 namespace blink {
41 42
43 class Node;
42 class RenderLayer; 44 class RenderLayer;
43 class RenderObject; 45 class RenderObject;
44 class Node;
45 struct WebFloatRect; 46 struct WebFloatRect;
46 struct WebRect; 47 struct WebRect;
47 class WebViewImpl; 48 class WebViewImpl;
48 49
49 class LinkHighlight FINAL : public WebContentLayerClient, public WebCompositorAn imationDelegate, blink::LinkHighlightClient { 50 class LinkHighlight FINAL : public WebContentLayerClient, public WebCompositorAn imationDelegate, blink::LinkHighlightClient {
50 public: 51 public:
51 static PassOwnPtr<LinkHighlight> create(Node*, WebViewImpl*); 52 static PassOwnPtr<LinkHighlight> create(Node*, WebViewImpl*);
52 virtual ~LinkHighlight(); 53 virtual ~LinkHighlight();
53 54
54 WebContentLayer* contentLayer(); 55 WebContentLayer* contentLayer();
(...skipping 24 matching lines...) Expand all
79 80
80 RenderLayer* computeEnclosingCompositingLayer(); 81 RenderLayer* computeEnclosingCompositingLayer();
81 void clearGraphicsLayerLinkHighlightPointer(); 82 void clearGraphicsLayerLinkHighlightPointer();
82 // This function computes the highlight path, and returns true if it has cha nged 83 // This function computes the highlight path, and returns true if it has cha nged
83 // size since the last call to this function. 84 // size since the last call to this function.
84 bool computeHighlightLayerPathAndPosition(RenderLayer*); 85 bool computeHighlightLayerPathAndPosition(RenderLayer*);
85 86
86 OwnPtr<WebContentLayer> m_contentLayer; 87 OwnPtr<WebContentLayer> m_contentLayer;
87 OwnPtr<WebLayer> m_clipLayer; 88 OwnPtr<WebLayer> m_clipLayer;
88 Path m_path; 89 Path m_path;
90 RefPtr<DisplayList> m_displayList;
89 91
90 RefPtrWillBePersistent<Node> m_node; 92 RefPtrWillBePersistent<Node> m_node;
91 WebViewImpl* m_owningWebViewImpl; 93 WebViewImpl* m_owningWebViewImpl;
92 GraphicsLayer* m_currentGraphicsLayer; 94 GraphicsLayer* m_currentGraphicsLayer;
93 95
94 bool m_geometryNeedsUpdate; 96 bool m_geometryNeedsUpdate;
95 bool m_isAnimating; 97 bool m_isAnimating;
96 double m_startTime; 98 double m_startTime;
97 }; 99 };
98 100
99 } // namespace blink 101 } // namespace blink
100 102
101 #endif 103 #endif
OLDNEW
« no previous file with comments | « Source/platform/graphics/GraphicsContext.cpp ('k') | Source/web/LinkHighlight.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698