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

Side by Side Diff: content/browser/compositor/frame_sink_manager_host.cc

Issue 2810703004: Add observers to FrameSinkManagerHost. (Closed)
Patch Set: Make more better. 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 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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/compositor/frame_sink_manager_host.h" 5 #include "content/browser/compositor/frame_sink_manager_host.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "cc/surfaces/surface_info.h" 9 #include "cc/surfaces/surface_info.h"
10 #include "cc/surfaces/surface_manager.h" 10 #include "cc/surfaces/surface_manager.h"
(...skipping 10 matching lines...) Expand all
21 cc::SurfaceManager* FrameSinkManagerHost::surface_manager() { 21 cc::SurfaceManager* FrameSinkManagerHost::surface_manager() {
22 return frame_sink_manager_.surface_manager(); 22 return frame_sink_manager_.surface_manager();
23 } 23 }
24 24
25 void FrameSinkManagerHost::ConnectToFrameSinkManager() { 25 void FrameSinkManagerHost::ConnectToFrameSinkManager() {
26 DCHECK(!frame_sink_manager_ptr_.is_bound()); 26 DCHECK(!frame_sink_manager_ptr_.is_bound());
27 frame_sink_manager_.Connect(mojo::MakeRequest(&frame_sink_manager_ptr_), 27 frame_sink_manager_.Connect(mojo::MakeRequest(&frame_sink_manager_ptr_),
28 binding_.CreateInterfacePtrAndBind()); 28 binding_.CreateInterfacePtrAndBind());
29 } 29 }
30 30
31 void FrameSinkManagerHost::AddObserver(FrameSinkObserver* observer) {
32 observers_.AddObserver(observer);
33 }
34
35 void FrameSinkManagerHost::RemoveObserver(FrameSinkObserver* observer) {
36 observers_.RemoveObserver(observer);
37 }
38
31 void FrameSinkManagerHost::CreateCompositorFrameSink( 39 void FrameSinkManagerHost::CreateCompositorFrameSink(
32 const cc::FrameSinkId& frame_sink_id, 40 const cc::FrameSinkId& frame_sink_id,
33 cc::mojom::MojoCompositorFrameSinkRequest request, 41 cc::mojom::MojoCompositorFrameSinkRequest request,
34 cc::mojom::MojoCompositorFrameSinkPrivateRequest private_request, 42 cc::mojom::MojoCompositorFrameSinkPrivateRequest private_request,
35 cc::mojom::MojoCompositorFrameSinkClientPtr client) { 43 cc::mojom::MojoCompositorFrameSinkClientPtr client) {
36 DCHECK(frame_sink_manager_ptr_.is_bound()); 44 DCHECK(frame_sink_manager_ptr_.is_bound());
37 frame_sink_manager_ptr_->CreateCompositorFrameSink( 45 frame_sink_manager_ptr_->CreateCompositorFrameSink(
38 frame_sink_id, std::move(request), std::move(private_request), 46 frame_sink_id, std::move(request), std::move(private_request),
39 std::move(client)); 47 std::move(client));
40 } 48 }
41 49
42 void FrameSinkManagerHost::RegisterFrameSinkHierarchy( 50 void FrameSinkManagerHost::RegisterFrameSinkHierarchy(
43 const cc::FrameSinkId& parent_frame_sink_id, 51 const cc::FrameSinkId& parent_frame_sink_id,
44 const cc::FrameSinkId& child_frame_sink_id) { 52 const cc::FrameSinkId& child_frame_sink_id) {
45 DCHECK(frame_sink_manager_ptr_.is_bound()); 53 DCHECK(frame_sink_manager_ptr_.is_bound());
46 frame_sink_manager_ptr_->RegisterFrameSinkHierarchy(parent_frame_sink_id, 54 frame_sink_manager_ptr_->RegisterFrameSinkHierarchy(parent_frame_sink_id,
47 child_frame_sink_id); 55 child_frame_sink_id);
48 } 56 }
49 57
50 void FrameSinkManagerHost::UnregisterFrameSinkHierarchy( 58 void FrameSinkManagerHost::UnregisterFrameSinkHierarchy(
51 const cc::FrameSinkId& parent_frame_sink_id, 59 const cc::FrameSinkId& parent_frame_sink_id,
52 const cc::FrameSinkId& child_frame_sink_id) { 60 const cc::FrameSinkId& child_frame_sink_id) {
53 DCHECK(frame_sink_manager_ptr_.is_bound()); 61 DCHECK(frame_sink_manager_ptr_.is_bound());
54 frame_sink_manager_ptr_->UnregisterFrameSinkHierarchy(parent_frame_sink_id, 62 frame_sink_manager_ptr_->UnregisterFrameSinkHierarchy(parent_frame_sink_id,
55 child_frame_sink_id); 63 child_frame_sink_id);
56 } 64 }
57 65
58 void FrameSinkManagerHost::OnSurfaceCreated( 66 void FrameSinkManagerHost::OnSurfaceCreated(
59 const cc::SurfaceInfo& surface_info) { 67 const cc::SurfaceInfo& surface_info) {
60 // TODO(kylechar): Implement. 68 for (auto& observer : observers_)
69 observer.OnSurfaceCreated(surface_info);
61 } 70 }
62 71
63 } // namespace content 72 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698