OLD | NEW |
| (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 module mus.gpu.mojom; | |
6 | |
7 import "components/mus/public/interfaces/gpu/display_compositor.mojom"; | |
8 | |
9 // This is a privileged API to be used only by the Mus Window Server. | |
10 // There is one Display per accelerated widget. This corresponds to a physical | |
11 // display on Chrome OS, and a window on other Chrome platforms. | |
12 interface Display { | |
13 // Each client (process) has a unique |client_id| and implements the | |
14 // DisplayClient interface. | |
15 CreateClient(uint32 client_id, DisplayClient& client); | |
16 }; | |
17 | |
18 interface DisplayHost { | |
19 // TODO(fsamuel): OnBeginFrame needs to take a BeginFrameArgs instance per | |
20 // cc/output/begin_frame_args.h. | |
21 OnBeginFrame(); | |
22 }; | |
23 | |
24 // This is a privileged API to be used only by the Mus Window Server. | |
25 // There should be only one DisplayCompositor connection. | |
26 interface DisplayCompositor { | |
27 CreateDisplay(int32 accelerated_widget, | |
28 Display& display, | |
29 DisplayHost display_host, | |
30 CompositorFrameSink& sink, | |
31 CompositorFrameSinkClient client); | |
32 }; | |
OLD | NEW |