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

Side by Side Diff: third_party/WebKit/Source/web/InspectorRenderingAgent.cpp

Issue 2819183002: [DevTools] Consolidate overlay-related functionality in Overlay domain (Closed)
Patch Set: rebased bad merge Created 3 years, 8 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "web/InspectorRenderingAgent.h"
6
7 #include "core/frame/FrameView.h"
8 #include "core/frame/Settings.h"
9 #include "core/page/Page.h"
10 #include "web/InspectorOverlay.h"
11 #include "web/WebLocalFrameImpl.h"
12 #include "web/WebViewImpl.h"
13
14 namespace blink {
15
16 using protocol::Response;
17
18 namespace RenderingAgentState {
19 static const char kShowDebugBorders[] = "showDebugBorders";
20 static const char kShowFPSCounter[] = "showFPSCounter";
21 static const char kShowPaintRects[] = "showPaintRects";
22 static const char kShowScrollBottleneckRects[] = "showScrollBottleneckRects";
23 static const char kShowSizeOnResize[] = "showSizeOnResize";
24 }
25
26 InspectorRenderingAgent* InspectorRenderingAgent::Create(
27 WebLocalFrameImpl* web_local_frame_impl,
28 InspectorOverlay* overlay) {
29 return new InspectorRenderingAgent(web_local_frame_impl, overlay);
30 }
31
32 InspectorRenderingAgent::InspectorRenderingAgent(
33 WebLocalFrameImpl* web_local_frame_impl,
34 InspectorOverlay* overlay)
35 : web_local_frame_impl_(web_local_frame_impl), overlay_(overlay) {}
36
37 WebViewImpl* InspectorRenderingAgent::GetWebViewImpl() {
38 return web_local_frame_impl_->ViewImpl();
39 }
40
41 void InspectorRenderingAgent::Restore() {
42 setShowDebugBorders(
43 state_->booleanProperty(RenderingAgentState::kShowDebugBorders, false));
44 setShowFPSCounter(
45 state_->booleanProperty(RenderingAgentState::kShowFPSCounter, false));
46 setShowPaintRects(
47 state_->booleanProperty(RenderingAgentState::kShowPaintRects, false));
48 setShowScrollBottleneckRects(state_->booleanProperty(
49 RenderingAgentState::kShowScrollBottleneckRects, false));
50 setShowViewportSizeOnResize(
51 state_->booleanProperty(RenderingAgentState::kShowSizeOnResize, false));
52 }
53
54 Response InspectorRenderingAgent::disable() {
55 setShowDebugBorders(false);
56 setShowFPSCounter(false);
57 setShowPaintRects(false);
58 setShowScrollBottleneckRects(false);
59 setShowViewportSizeOnResize(false);
60 return Response::OK();
61 }
62
63 Response InspectorRenderingAgent::setShowDebugBorders(bool show) {
64 state_->setBoolean(RenderingAgentState::kShowDebugBorders, show);
65 if (show) {
66 Response response = CompositingEnabled();
67 if (!response.isSuccess())
68 return response;
69 }
70 GetWebViewImpl()->SetShowDebugBorders(show);
71 return Response::OK();
72 }
73
74 Response InspectorRenderingAgent::setShowFPSCounter(bool show) {
75 state_->setBoolean(RenderingAgentState::kShowFPSCounter, show);
76 if (show) {
77 Response response = CompositingEnabled();
78 if (!response.isSuccess())
79 return response;
80 }
81 GetWebViewImpl()->SetShowFPSCounter(show);
82 return Response::OK();
83 }
84
85 Response InspectorRenderingAgent::setShowPaintRects(bool show) {
86 state_->setBoolean(RenderingAgentState::kShowPaintRects, show);
87 GetWebViewImpl()->SetShowPaintRects(show);
88 if (!show && web_local_frame_impl_->GetFrameView())
89 web_local_frame_impl_->GetFrameView()->Invalidate();
90 return Response::OK();
91 }
92
93 Response InspectorRenderingAgent::setShowScrollBottleneckRects(bool show) {
94 state_->setBoolean(RenderingAgentState::kShowScrollBottleneckRects, show);
95 if (show) {
96 Response response = CompositingEnabled();
97 if (!response.isSuccess())
98 return response;
99 }
100 GetWebViewImpl()->SetShowScrollBottleneckRects(show);
101 return Response::OK();
102 }
103
104 Response InspectorRenderingAgent::setShowViewportSizeOnResize(bool show) {
105 state_->setBoolean(RenderingAgentState::kShowSizeOnResize, show);
106 if (overlay_)
107 overlay_->SetShowViewportSizeOnResize(show);
108 return Response::OK();
109 }
110
111 Response InspectorRenderingAgent::CompositingEnabled() {
112 if (!GetWebViewImpl()
113 ->GetPage()
114 ->GetSettings()
115 .GetAcceleratedCompositingEnabled())
116 return Response::Error("Compositing mode is not supported");
117 return Response::OK();
118 }
119
120 DEFINE_TRACE(InspectorRenderingAgent) {
121 visitor->Trace(web_local_frame_impl_);
122 visitor->Trace(overlay_);
123 InspectorBaseAgent::Trace(visitor);
124 }
125
126 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/web/InspectorRenderingAgent.h ('k') | third_party/WebKit/Source/web/WebDevToolsAgentImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698