Revert of Fix sandbox target in Windows GN build and enable it. (patchset #1 id:1...
[chromium-blink-merge.git] / mojo / services / public / interfaces / native_viewport / native_viewport.mojom
blob861e1ed855952a31e513b6195b8c4668425749ec
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
3 // found in the LICENSE file.
5 module mojo;
7 import "mojo/services/public/interfaces/geometry/geometry.mojom";
8 import "mojo/services/public/interfaces/gpu/command_buffer.mojom";
9 import "mojo/services/public/interfaces/input_events/input_events.mojom";
10 import "mojo/services/public/interfaces/surfaces/surface_id.mojom";
12 [Client=NativeViewportClient]
13 interface NativeViewport {
14   // TODO(sky): having a create function is awkward. Should there be a factory
15   // to create the NativeViewport that takes the size?
16   Create(Size size) => (uint64 native_viewport_id);
17   Show();
18   Hide();
19   Close();
20   SetSize(Size size);
21   SubmittedFrame(SurfaceId surface_id);
22   SetEventDispatcher(NativeViewportEventDispatcher dispatcher);
25 interface NativeViewportEventDispatcher {
26   OnEvent(Event event) => ();
29 interface NativeViewportClient {
30   // OnSizeChanged() is sent at least once after the callback from Create() is
31   // called.
32   OnSizeChanged(Size size);
33   OnDestroyed();