Chromium Code Reviews| Index: content/browser/compositor/frame_sink_manager_host.h |
| diff --git a/content/browser/compositor/frame_sink_manager_host.h b/content/browser/compositor/frame_sink_manager_host.h |
| index 8c7865ddbef16db670fc221000383d1d93c2663d..6d600e61223101b32f82acadfc514310eb56fef5 100644 |
| --- a/content/browser/compositor/frame_sink_manager_host.h |
| +++ b/content/browser/compositor/frame_sink_manager_host.h |
| @@ -7,9 +7,11 @@ |
| #include "base/compiler_specific.h" |
| #include "base/macros.h" |
| +#include "base/observer_list.h" |
| #include "cc/ipc/frame_sink_manager.mojom.h" |
| #include "cc/surfaces/frame_sink_id.h" |
| #include "components/viz/frame_sinks/mojo_frame_sink_manager.h" |
| +#include "content/browser/compositor/frame_sink_observer.h" |
| #include "content/common/content_export.h" |
| #include "mojo/public/cpp/bindings/binding.h" |
| @@ -33,6 +35,9 @@ class CONTENT_EXPORT FrameSinkManagerHost |
| // Start Mojo connection to FrameSinkManager. Most tests won't need this. |
| void ConnectToFrameSinkManager(); |
| + void AddObserver(FrameSinkObserver* observer); |
|
Fady Samuel
2017/04/28 04:58:00
I had envisioned this would take in a FrameSinkId
kylechar
2017/05/01 19:07:48
After doing a quick implementation with unordered_
|
| + void RemoveObserver(FrameSinkObserver* observer); |
| + |
| // See frame_sink_manager.mojom for descriptions. |
| void CreateCompositorFrameSink( |
| const cc::FrameSinkId& frame_sink_id, |
| @@ -59,6 +64,9 @@ class CONTENT_EXPORT FrameSinkManagerHost |
| // happen using Mojo. See http://crbug.com/657959. |
| viz::MojoFrameSinkManager frame_sink_manager_; |
| + // Local observers to that receive OnSurfaceCreated() messages from IPC. |
| + base::ObserverList<FrameSinkObserver> observers_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(FrameSinkManagerHost); |
| }; |