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

Side by Side Diff: content/browser/frame_host/cross_process_frame_connector.cc

Issue 2614423003: Adding SatisfySequence and RequireSequence to SurfaceManager (Closed)
Patch Set: up Created 3 years, 11 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/browser/frame_host/cross_process_frame_connector.h" 5 #include "content/browser/frame_host/cross_process_frame_connector.h"
6 6
7 #include "cc/surfaces/surface.h" 7 #include "cc/surfaces/surface.h"
8 #include "cc/surfaces/surface_hittest.h" 8 #include "cc/surfaces/surface_hittest.h"
9 #include "cc/surfaces/surface_manager.h" 9 #include "cc/surfaces/surface_manager.h"
10 #include "content/browser/compositor/surface_utils.h" 10 #include "content/browser/compositor/surface_utils.h"
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 const gfx::Size& frame_size, 91 const gfx::Size& frame_size,
92 float scale_factor, 92 float scale_factor,
93 const cc::SurfaceSequence& sequence) { 93 const cc::SurfaceSequence& sequence) {
94 frame_proxy_in_parent_renderer_->Send(new FrameMsg_SetChildFrameSurface( 94 frame_proxy_in_parent_renderer_->Send(new FrameMsg_SetChildFrameSurface(
95 frame_proxy_in_parent_renderer_->GetRoutingID(), surface_id, frame_size, 95 frame_proxy_in_parent_renderer_->GetRoutingID(), surface_id, frame_size,
96 scale_factor, sequence)); 96 scale_factor, sequence));
97 } 97 }
98 98
99 void CrossProcessFrameConnector::OnSatisfySequence( 99 void CrossProcessFrameConnector::OnSatisfySequence(
100 const cc::SurfaceSequence& sequence) { 100 const cc::SurfaceSequence& sequence) {
101 std::vector<uint32_t> sequences; 101 GetSurfaceManager()->SatisfySequence(sequence);
102 sequences.push_back(sequence.sequence);
103 cc::SurfaceManager* manager = GetSurfaceManager();
104 manager->DidSatisfySequences(sequence.frame_sink_id, &sequences);
105 } 102 }
106 103
107 void CrossProcessFrameConnector::OnRequireSequence( 104 void CrossProcessFrameConnector::OnRequireSequence(
108 const cc::SurfaceId& id, 105 const cc::SurfaceId& id,
109 const cc::SurfaceSequence& sequence) { 106 const cc::SurfaceSequence& sequence) {
110 cc::SurfaceManager* manager = GetSurfaceManager(); 107 GetSurfaceManager()->RequireSequence(id, sequence);
111 cc::Surface* surface = manager->GetSurfaceForId(id);
112 if (!surface) {
113 LOG(ERROR) << "Attempting to require callback on nonexistent surface";
114 return;
115 }
116 surface->AddDestructionDependency(sequence);
117 } 108 }
118 109
119 gfx::Rect CrossProcessFrameConnector::ChildFrameRect() { 110 gfx::Rect CrossProcessFrameConnector::ChildFrameRect() {
120 return child_frame_rect_; 111 return child_frame_rect_;
121 } 112 }
122 113
123 void CrossProcessFrameConnector::UpdateCursor(const WebCursor& cursor) { 114 void CrossProcessFrameConnector::UpdateCursor(const WebCursor& cursor) {
124 RenderWidgetHostViewBase* root_view = GetRootRenderWidgetHostView(); 115 RenderWidgetHostViewBase* root_view = GetRootRenderWidgetHostView();
125 if (root_view) 116 if (root_view)
126 root_view->UpdateCursor(cursor); 117 root_view->UpdateCursor(cursor);
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 369
379 if (parent) { 370 if (parent) {
380 return static_cast<RenderWidgetHostViewBase*>( 371 return static_cast<RenderWidgetHostViewBase*>(
381 parent->current_frame_host()->GetView()); 372 parent->current_frame_host()->GetView());
382 } 373 }
383 374
384 return nullptr; 375 return nullptr;
385 } 376 }
386 377
387 } // namespace content 378 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698