| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| |
| import "begin_main_frame_and_commit_state.proto"; |
| |
| package cc.proto; |
| |
| // Control messages sent to the main side of the compositor(server) from the |
| // impl side of the compositor(client). |
| // TODO(khushalsagar): Are any more messages required? (See crbug.com/584078) |
| message CompositorMessageToMain { |
| enum Type { |
| // The enum values which are unknown get mapped to the default value, which |
| // is zero. This can happen with when the protocol version is different on |
| // the client and server. |
| // Ignore the messages with type UNKNOWN. |
| UNKNOWN = 0; |
| |
| // Sent by the client to start the commit process. See |
| // compositor_message_to_impl.proto for details. |
| BEGIN_MAIN_FRAME = 1; |
| } |
| |
| optional Type message_type = 1; |
| |
| // Only one of the following fields will be set per CompositorMessageToMain. |
| |
| // Set for message Type::BEGIN_MAIN_FRAME. |
| optional BeginMainFrame begin_main_frame_message = 2; |
| } |
| |
| message BeginMainFrame { |
| optional BeginMainFrameAndCommitState begin_main_frame_state = 1; |
| } |