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

Side by Side Diff: third_party/WebKit/Source/core/paint/StubChromeClientForSPv2.h

Issue 2342103002: Refactor the way PaintArtifactCompositor is attached and used. (Closed)
Patch Set: none Created 4 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef StubChromeClientForSPv2_h 5 #ifndef StubChromeClientForSPv2_h
6 #define StubChromeClientForSPv2_h 6 #define StubChromeClientForSPv2_h
7 7
8 #include "core/loader/EmptyClients.h" 8 #include "core/loader/EmptyClients.h"
9 #include "platform/graphics/compositing/PaintArtifactCompositor.h" 9 #include "platform/graphics/compositing/PaintArtifactCompositor.h"
10 #include "platform/testing/WebLayerTreeViewImplForTesting.h" 10 #include "platform/testing/WebLayerTreeViewImplForTesting.h"
11 11
12 namespace blink { 12 namespace blink {
13 13
14 // A simple ChromeClient implementation which forwards painted artifacts to a 14 // A simple ChromeClient implementation which forwards painted artifacts to a
15 // PaintArtifactCompositor attached to a testing WebLayerTreeView, and permits 15 // PaintArtifactCompositor attached to a testing WebLayerTreeView, and permits
16 // simple analysis of the results. 16 // simple analysis of the results.
17 class StubChromeClientForSPv2 : public EmptyChromeClient { 17 class StubChromeClientForSPv2 : public EmptyChromeClient {
18 public: 18 public:
19 StubChromeClientForSPv2() : m_layerTreeView() 19 StubChromeClientForSPv2() : m_layerTreeView()
20 { 20 {
21 m_layerTreeView.setRootLayer(*m_paintArtifactCompositor.getWebLayer()); 21 m_layerTreeView.setRootLayer(*m_paintArtifactCompositor.getWebLayer());
22 } 22 }
23 23
24 bool hasLayer(const WebLayer& layer) { return m_layerTreeView.hasLayer(layer ); } 24 bool hasLayer(const WebLayer& layer) { return m_layerTreeView.hasLayer(layer ); }
25 25
26 // ChromeClient
27 void didPaint(const PaintArtifact& artifact) override
28 {
29 m_paintArtifactCompositor.update(artifact);
30 }
31
32 private: 26 private:
33 WebLayerTreeViewImplForTesting m_layerTreeView; 27 WebLayerTreeViewImplForTesting m_layerTreeView;
34 PaintArtifactCompositor m_paintArtifactCompositor; 28 PaintArtifactCompositor m_paintArtifactCompositor;
35 }; 29 };
36 30
37 } // namespace blink 31 } // namespace blink
38 32
39 #endif // StubChromeClientForSPv2_h 33 #endif // StubChromeClientForSPv2_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698