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

Side by Side Diff: third_party/WebKit/Source/web/tests/sim/SimCompositor.h

Issue 2860673002: Change all test cases to use WebViewBase instead of WebViewImpl. (Closed)
Patch Set: Address code review comments. Created 3 years, 7 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 SimCompositor_h 5 #ifndef SimCompositor_h
6 #define SimCompositor_h 6 #define SimCompositor_h
7 7
8 #include "public/platform/WebLayerTreeView.h" 8 #include "public/platform/WebLayerTreeView.h"
9 9
10 namespace blink { 10 namespace blink {
11 11
12 class SimDisplayItemList; 12 class SimDisplayItemList;
13 class WebViewImpl; 13 class WebViewBase;
14 14
15 // Simulated very basic compositor that's capable of running the BeginMainFrame 15 // Simulated very basic compositor that's capable of running the BeginMainFrame
16 // processing steps on WebView: beginFrame, layout, paint. 16 // processing steps on WebView: beginFrame, layout, paint.
17 // 17 //
18 // The painting capabilities are very limited in that only the main layer of 18 // The painting capabilities are very limited in that only the main layer of
19 // every CompositedLayerMapping will be painted, squashed layers 19 // every CompositedLayerMapping will be painted, squashed layers
20 // are not supported and the entirety of every layer is always repainted even if 20 // are not supported and the entirety of every layer is always repainted even if
21 // only part of the layer was invalid. 21 // only part of the layer was invalid.
22 // 22 //
23 // Note: This also does not support compositor driven animations. 23 // Note: This also does not support compositor driven animations.
24 class SimCompositor final : public WebLayerTreeView { 24 class SimCompositor final : public WebLayerTreeView {
25 public: 25 public:
26 explicit SimCompositor(); 26 explicit SimCompositor();
27 ~SimCompositor(); 27 ~SimCompositor();
28 28
29 void SetWebViewImpl(WebViewImpl&); 29 void SetWebView(WebViewBase&);
30 30
31 // Execute the BeginMainFrame processing steps, an approximation of what 31 // Execute the BeginMainFrame processing steps, an approximation of what
32 // cc::ThreadProxy::BeginMainFrame would do. 32 // cc::ThreadProxy::BeginMainFrame would do.
33 // If time is not specified a 60Hz frame rate time progression is used. 33 // If time is not specified a 60Hz frame rate time progression is used.
34 SimDisplayItemList BeginFrame(double time_delta_in_seconds = 0.016); 34 SimDisplayItemList BeginFrame(double time_delta_in_seconds = 0.016);
35 35
36 bool NeedsBeginFrame() const { return needs_begin_frame_; } 36 bool NeedsBeginFrame() const { return needs_begin_frame_; }
37 bool DeferCommits() const { return defer_commits_; } 37 bool DeferCommits() const { return defer_commits_; }
38 38
39 bool HasSelection() const { return has_selection_; } 39 bool HasSelection() const { return has_selection_; }
40 40
41 private: 41 private:
42 void SetNeedsBeginFrame() override; 42 void SetNeedsBeginFrame() override;
43 void SetDeferCommits(bool) override; 43 void SetDeferCommits(bool) override;
44 void RegisterSelection(const WebSelection&) override; 44 void RegisterSelection(const WebSelection&) override;
45 void ClearSelection() override; 45 void ClearSelection() override;
46 46
47 bool needs_begin_frame_; 47 bool needs_begin_frame_;
48 bool defer_commits_; 48 bool defer_commits_;
49 bool has_selection_; 49 bool has_selection_;
50 WebViewImpl* web_view_impl_; 50 WebViewBase* web_view_;
51 double last_frame_time_monotonic_; 51 double last_frame_time_monotonic_;
52 }; 52 };
53 53
54 } // namespace blink 54 } // namespace blink
55 55
56 #endif 56 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698