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

Side by Side Diff: components/mus/surfaces/display_impl.h

Issue 1989693002: Introduce DisplayCompositor Mojo API for Mus (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed Rob's comments Created 4 years, 6 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 2016 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 #ifndef COMPONENTS_MUS_SURFACES_DISPLAY_IMPL_H_
6 #define COMPONENTS_MUS_SURFACES_DISPLAY_IMPL_H_
7
8 #include "components/mus/public/interfaces/display_compositor_host.mojom.h"
9 #include "components/mus/surfaces/compositor_frame_sink_delegate.h"
10 #include "components/mus/surfaces/surfaces_state.h"
11 #include "mojo/public/cpp/bindings/binding.h"
12
13 namespace mus {
14
15 class DisplayImpl : public mojom::Display, public CompositorFrameSinkDelegate {
16 public:
17 DisplayImpl(int accelerated_widget,
18 mojo::InterfaceRequest<mojom::Display> display,
19 mojom::DisplayHostPtr host,
20 mojo::InterfaceRequest<mojom::CompositorFrameSink> sink,
21 mojom::CompositorFrameSinkClientPtr client,
22 const scoped_refptr<SurfacesState>& surfaces_state);
23 ~DisplayImpl() override;
24
25 // mojom::Display implementation.
26 void CreateClient(
27 uint32_t client_id,
28 mojo::InterfaceRequest<mojom::DisplayClient> client) override;
29
30 private:
31 // CompositorFrameSinkDelegate implementation:
32 void CompositorFrameSinkConnectionLost(int sink_id) override;
33 cc::SurfaceId GenerateSurfaceId() override;
34
35 std::unique_ptr<CompositorFrameSinkImpl> sink_;
36 mojo::Binding<mojom::Display> binding_;
37 DISALLOW_COPY_AND_ASSIGN(DisplayImpl);
38 };
39
40 } // namespace mus
41
42 #endif // COMPONENTS_MUS_SURFACES_DISPLAY_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698