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

Side by Side Diff: content/renderer/render_widget.cc

Issue 1385043002: cc: Remove SetLayerTreeHostClientReady() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@startcomp
Patch Set: Created 5 years, 2 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "content/renderer/render_widget.h" 5 #include "content/renderer/render_widget.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 1321 matching lines...) Expand 10 before | Expand all | Expand 10 after
1332 physical_backing_size_ = gfx::ScaleToCeiledSize(size_, device_scale_factor_); 1332 physical_backing_size_ = gfx::ScaleToCeiledSize(size_, device_scale_factor_);
1333 if (compositor_) 1333 if (compositor_)
1334 compositor_->setViewportSize(size_, physical_backing_size_); 1334 compositor_->setViewportSize(size_, physical_backing_size_);
1335 } 1335 }
1336 1336
1337 void RenderWidget::initializeLayerTreeView() { 1337 void RenderWidget::initializeLayerTreeView() {
1338 DCHECK(!host_closing_); 1338 DCHECK(!host_closing_);
1339 1339
1340 compositor_ = RenderWidgetCompositor::Create(this, compositor_deps_); 1340 compositor_ = RenderWidgetCompositor::Create(this, compositor_deps_);
1341 compositor_->setViewportSize(size_, physical_backing_size_); 1341 compositor_->setViewportSize(size_, physical_backing_size_);
1342
1343 // For background pages and certain tests, we don't want to trigger
1344 // OutputSurface creation.
1345 if (never_visible_ || !RenderThreadImpl::current())
1346 compositor_->SetNeverVisible();
1347
1342 StartCompositor(); 1348 StartCompositor();
1343 } 1349 }
1344 1350
1345 void RenderWidget::WillCloseLayerTreeView() { 1351 void RenderWidget::WillCloseLayerTreeView() {
1346 if (host_closing_) 1352 if (host_closing_)
1347 return; 1353 return;
1348 1354
1349 // Prevent new compositors or output surfaces from being created. 1355 // Prevent new compositors or output surfaces from being created.
1350 host_closing_ = true; 1356 host_closing_ = true;
1351 1357
(...skipping 809 matching lines...) Expand 10 before | Expand all | Expand 10 after
2161 // it can be bundled in the event ack. 2167 // it can be bundled in the event ack.
2162 if (handling_event_overscroll_) { 2168 if (handling_event_overscroll_) {
2163 handling_event_overscroll_->reset(new DidOverscrollParams(params)); 2169 handling_event_overscroll_->reset(new DidOverscrollParams(params));
2164 return; 2170 return;
2165 } 2171 }
2166 2172
2167 Send(new InputHostMsg_DidOverscroll(routing_id_, params)); 2173 Send(new InputHostMsg_DidOverscroll(routing_id_, params));
2168 } 2174 }
2169 2175
2170 void RenderWidget::StartCompositor() { 2176 void RenderWidget::StartCompositor() {
2171 // For widgets that are never visible, we don't need the compositor to run 2177 if (!is_hidden())
2172 // at all. 2178 compositor_->setVisible(true);
2173 if (never_visible_)
2174 return;
2175 // In tests without a RenderThreadImpl, don't set ready as this kicks
2176 // off creating output surfaces that the test can't create.
2177 if (!RenderThreadImpl::current())
2178 return;
2179 compositor_->StartCompositor();
2180 } 2179 }
2181 2180
2182 void RenderWidget::SchedulePluginMove(const WebPluginGeometry& move) { 2181 void RenderWidget::SchedulePluginMove(const WebPluginGeometry& move) {
2183 size_t i = 0; 2182 size_t i = 0;
2184 for (; i < plugin_window_moves_.size(); ++i) { 2183 for (; i < plugin_window_moves_.size(); ++i) {
2185 if (plugin_window_moves_[i].window == move.window) { 2184 if (plugin_window_moves_[i].window == move.window) {
2186 if (move.rects_valid) { 2185 if (move.rects_valid) {
2187 plugin_window_moves_[i] = move; 2186 plugin_window_moves_[i] = move;
2188 } else { 2187 } else {
2189 plugin_window_moves_[i].visible = move.visible; 2188 plugin_window_moves_[i].visible = move.visible;
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
2385 void RenderWidget::RegisterVideoHoleFrame(RenderFrameImpl* frame) { 2384 void RenderWidget::RegisterVideoHoleFrame(RenderFrameImpl* frame) {
2386 video_hole_frames_.AddObserver(frame); 2385 video_hole_frames_.AddObserver(frame);
2387 } 2386 }
2388 2387
2389 void RenderWidget::UnregisterVideoHoleFrame(RenderFrameImpl* frame) { 2388 void RenderWidget::UnregisterVideoHoleFrame(RenderFrameImpl* frame) {
2390 video_hole_frames_.RemoveObserver(frame); 2389 video_hole_frames_.RemoveObserver(frame);
2391 } 2390 }
2392 #endif // defined(VIDEO_HOLE) 2391 #endif // defined(VIDEO_HOLE)
2393 2392
2394 } // namespace content 2393 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698