summaryrefslogtreecommitdiffstats
path: root/zellij-utils/assets/prost/api.event.rs
diff options
context:
space:
mode:
Diffstat (limited to 'zellij-utils/assets/prost/api.event.rs')
-rw-r--r--zellij-utils/assets/prost/api.event.rs381
1 files changed, 381 insertions, 0 deletions
diff --git a/zellij-utils/assets/prost/api.event.rs b/zellij-utils/assets/prost/api.event.rs
new file mode 100644
index 000000000..39bc97705
--- /dev/null
+++ b/zellij-utils/assets/prost/api.event.rs
@@ -0,0 +1,381 @@
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct EventNameList {
+ #[prost(enumeration = "EventType", repeated, tag = "1")]
+ pub event_types: ::prost::alloc::vec::Vec<i32>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct Event {
+ #[prost(enumeration = "EventType", tag = "1")]
+ pub name: i32,
+ #[prost(oneof = "event::Payload", tags = "2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13")]
+ pub payload: ::core::option::Option<event::Payload>,
+}
+/// Nested message and enum types in `Event`.
+pub mod event {
+ #[allow(clippy::derive_partial_eq_without_eq)]
+ #[derive(Clone, PartialEq, ::prost::Oneof)]
+ pub enum Payload {
+ #[prost(message, tag = "2")]
+ ModeUpdatePayload(super::ModeUpdatePayload),
+ #[prost(message, tag = "3")]
+ TabUpdatePayload(super::TabUpdatePayload),
+ #[prost(message, tag = "4")]
+ PaneUpdatePayload(super::PaneUpdatePayload),
+ #[prost(message, tag = "5")]
+ KeyPayload(super::super::key::Key),
+ #[prost(message, tag = "6")]
+ MouseEventPayload(super::MouseEventPayload),
+ #[prost(float, tag = "7")]
+ TimerPayload(f32),
+ #[prost(enumeration = "super::CopyDestination", tag = "8")]
+ CopyToClipboardPayload(i32),
+ #[prost(bool, tag = "9")]
+ VisiblePayload(bool),
+ #[prost(message, tag = "10")]
+ CustomMessagePayload(super::CustomMessagePayload),
+ #[prost(message, tag = "11")]
+ FileListPayload(super::FileListPayload),
+ #[prost(message, tag = "12")]
+ PermissionRequestResultPayload(super::PermissionRequestResultPayload),
+ #[prost(message, tag = "13")]
+ SessionUpdatePayload(super::SessionUpdatePayload),
+ }
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct SessionUpdatePayload {
+ #[prost(message, repeated, tag = "1")]
+ pub session_manifests: ::prost::alloc::vec::Vec<SessionManifest>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct PermissionRequestResultPayload {
+ #[prost(bool, tag = "1")]
+ pub granted: bool,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct FileListPayload {
+ #[prost(string, repeated, tag = "1")]
+ pub paths: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct CustomMessagePayload {
+ #[prost(string, tag = "1")]
+ pub message_name: ::prost::alloc::string::String,
+ #[prost(string, tag = "2")]
+ pub payload: ::prost::alloc::string::String,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct MouseEventPayload {
+ #[prost(enumeration = "MouseEventName", tag = "1")]
+ pub mouse_event_name: i32,
+ #[prost(oneof = "mouse_event_payload::MouseEventPayload", tags = "2, 3")]
+ pub mouse_event_payload: ::core::option::Option<
+ mouse_event_payload::MouseEventPayload,
+ >,
+}
+/// Nested message and enum types in `MouseEventPayload`.
+pub mod mouse_event_payload {
+ #[allow(clippy::derive_partial_eq_without_eq)]
+ #[derive(Clone, PartialEq, ::prost::Oneof)]
+ pub enum MouseEventPayload {
+ #[prost(uint32, tag = "2")]
+ LineCount(u32),
+ #[prost(message, tag = "3")]
+ Position(super::super::action::Position),
+ }
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct TabUpdatePayload {
+ #[prost(message, repeated, tag = "1")]
+ pub tab_info: ::prost::alloc::vec::Vec<TabInfo>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct PaneUpdatePayload {
+ #[prost(message, repeated, tag = "1")]
+ pub pane_manifest: ::prost::alloc::vec::Vec<PaneManifest>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct PaneManifest {
+ #[prost(uint32, tag = "1")]
+ pub tab_index: u32,
+ #[prost(message, repeated, tag = "2")]
+ pub panes: ::prost::alloc::vec::Vec<PaneInfo>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct SessionManifest {
+ #[prost(string, tag = "1")]
+ pub name: ::prost::alloc::string::String,
+ #[prost(message, repeated, tag = "2")]
+ pub tabs: ::prost::alloc::vec::Vec<TabInfo>,
+ #[prost(message, repeated, tag = "3")]
+ pub panes: ::prost::alloc::vec::Vec<PaneManifest>,
+ #[prost(uint32, tag = "4")]
+ pub connected_clients: u32,
+ #[prost(bool, tag = "5")]
+ pub is_current_session: bool,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct PaneInfo {
+ #[prost(uint32, tag = "1")]
+ pub id: u32,
+ #[prost(bool, tag = "2")]
+ pub is_plugin: bool,
+ #[prost(bool, tag = "3")]
+ pub is_focused: bool,
+ #[prost(bool, tag = "4")]
+ pub is_fullscreen: bool,
+ #[prost(bool, tag = "5")]
+ pub is_floating: bool,
+ #[prost(bool, tag = "6")]
+ pub is_suppressed: bool,
+ #[prost(string, tag = "7")]
+ pub title: ::prost::alloc::string::String,
+ #[prost(bool, tag = "8")]
+ pub exited: bool,
+ #[prost(int32, optional, tag = "9")]
+ pub exit_status: ::core::option::Option<i32>,
+ #[prost(bool, tag = "10")]
+ pub is_held: bool,
+ #[prost(uint32, tag = "11")]
+ pub pane_x: u32,
+ #[prost(uint32, tag = "12")]
+ pub pane_content_x: u32,
+ #[prost(uint32, tag = "13")]
+ pub pane_y: u32,
+ #[prost(uint32, tag = "14")]
+ pub pane_content_y: u32,
+ #[prost(uint32, tag = "15")]
+ pub pane_rows: u32,
+ #[prost(uint32, tag = "16")]
+ pub pane_content_rows: u32,
+ #[prost(uint32, tag = "17")]
+ pub pane_columns: u32,
+ #[prost(uint32, tag = "18")]
+ pub pane_content_columns: u32,
+ #[prost(message, optional, tag = "19")]
+ pub cursor_coordinates_in_pane: ::core::option::Option<super::action::Position>,
+ #[prost(string, optional, tag = "20")]
+ pub terminal_command: ::core::option::Option<::prost::alloc::string::String>,
+ #[prost(string, optional, tag = "21")]
+ pub plugin_url: ::core::option::Option<::prost::alloc::string::String>,
+ #[prost(bool, tag = "22")]
+ pub is_selectable: bool,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct TabInfo {
+ #[prost(uint32, tag = "1")]
+ pub position: u32,
+ #[prost(string, tag = "2")]
+ pub name: ::prost::alloc::string::String,
+ #[prost(bool, tag = "3")]
+ pub active: bool,
+ #[prost(uint32, tag = "4")]
+ pub panes_to_hide: u32,
+ #[prost(bool, tag = "5")]
+ pub is_fullscreen_active: bool,
+ #[prost(bool, tag = "6")]
+ pub is_sync_panes_active: bool,
+ #[prost(bool, tag = "7")]
+ pub are_floating_panes_visible: bool,
+ #[prost(uint32, repeated, tag = "8")]
+ pub other_focused_clients: ::prost::alloc::vec::Vec<u32>,
+ #[prost(string, optional, tag = "9")]
+ pub active_swap_layout_name: ::core::option::Option<::prost::alloc::string::String>,
+ #[prost(bool, tag = "10")]
+ pub is_swap_layout_dirty: bool,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct ModeUpdatePayload {
+ #[prost(enumeration = "super::input_mode::InputMode", tag = "1")]
+ pub current_mode: i32,
+ #[prost(message, repeated, tag = "2")]
+ pub keybinds: ::prost::alloc::vec::Vec<InputModeKeybinds>,
+ #[prost(message, optional, tag = "3")]
+ pub style: ::core::option::Option<super::style::Style>,
+ #[prost(bool, tag = "4")]
+ pub arrow_fonts_support: bool,
+ #[prost(string, optional, tag = "5")]
+ pub session_name: ::core::option::Option<::prost::alloc::string::String>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct InputModeKeybinds {
+ #[prost(enumeration = "super::input_mode::InputMode", tag = "1")]
+ pub mode: i32,
+ #[prost(message, repeated, tag = "2")]
+ pub key_bind: ::prost::alloc::vec::Vec<KeyBind>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct KeyBind {
+ #[prost(message, optional, tag = "1")]
+ pub key: ::core::option::Option<super::key::Key>,
+ #[prost(message, repeated, tag = "2")]
+ pub action: ::prost::alloc::vec::Vec<super::action::Action>,
+}
+#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
+#[repr(i32)]
+pub enum EventType {
+ /// / The input mode or relevant metadata changed
+ ModeUpdate = 0,
+ /// / The tab state in the app was changed
+ TabUpdate = 1,
+ /// / The pane state in the app was changed
+ PaneUpdate = 2,
+ /// / A key was pressed while the user is focused on this plugin's pane
+ Key = 3,
+ /// / A mouse event happened while the user is focused on this plugin's pane
+ Mouse = 4,
+ /// / A timer expired set by the `set_timeout` method exported by `zellij-tile`.
+ Timer = 5,
+ /// / Text was copied to the clipboard anywhere in the app
+ CopyToClipboard = 6,
+ /// / Failed to copy text to clipboard anywhere in the app
+ SystemClipboardFailure = 7,
+ /// / Input was received anywhere in the app
+ InputReceived = 8,
+ /// / This plugin became visible or invisible
+ Visible = 9,
+ /// / A message from one of the plugin's workers
+ CustomMessage = 10,
+ /// / A file was created somewhere in the Zellij CWD folder
+ FileSystemCreate = 11,
+ /// / A file was accessed somewhere in the Zellij CWD folder
+ FileSystemRead = 12,
+ /// / A file was modified somewhere in the Zellij CWD folder
+ FileSystemUpdate = 13,
+ /// / A file was deleted somewhere in the Zellij CWD folder
+ FileSystemDelete = 14,
+ PermissionRequestResult = 15,
+ SessionUpdate = 16,
+}
+impl EventType {
+ /// String value of the enum field names used in the ProtoBuf definition.
+ ///
+ /// The values are not transformed in any way and thus are considered stable
+ /// (if the ProtoBuf definition does not change) and safe for programmatic use.
+ pub fn as_str_name(&self) -> &'static str {
+ match self {
+ EventType::ModeUpdate => "ModeUpdate",
+ EventType::TabUpdate => "TabUpdate",
+ EventType::PaneUpdate => "PaneUpdate",
+ EventType::Key => "Key",
+ EventType::Mouse => "Mouse",
+ EventType::Timer => "Timer",
+ EventType::CopyToClipboard => "CopyToClipboard",
+ EventType::SystemClipboardFailure => "SystemClipboardFailure",
+ EventType::InputReceived => "InputReceived",
+ EventType::Visible => "Visible",
+ EventType::CustomMessage => "CustomMessage",
+ EventType::FileSystemCreate => "FileSystemCreate",
+ EventType::FileSystemRead => "FileSystemRead",
+ EventType::FileSystemUpdate => "FileSystemUpdate",
+ EventType::FileSystemDelete => "FileSystemDelete",
+ EventType::PermissionRequestResult => "PermissionRequestResult",
+ EventType::SessionUpdate => "SessionUpdate",
+ }
+ }
+ /// Creates an enum from field names used in the ProtoBuf definition.
+ pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
+ match value {
+ "ModeUpdate" => Some(Self::ModeUpdate),
+ "TabUpdate" => Some(Self::TabUpdate),
+ "PaneUpdate" => Some(Self::PaneUpdate),
+ "Key" => Some(Self::Key),
+ "Mouse" => Some(Self::Mouse),
+ "Timer" => Some(Self::Timer),
+ "CopyToClipboard" => Some(Self::CopyToClipboard),
+ "SystemClipboardFailure" => Some(Self::SystemClipboardFailure),
+ "InputReceived" => Some(Self::InputReceived),
+ "Visible" => Some(Self::Visible),
+ "CustomMessage" => Some(Self::CustomMessage),
+ "FileSystemCreate" => Some(Self::FileSystemCreate),
+ "FileSystemRead" => Some(Self::FileSystemRead),
+ "FileSystemUpdate" => Some(Self::FileSystemUpdate),
+ "FileSystemDelete" => Some(Self::FileSystemDelete),
+ "PermissionRequestResult" => Some(Self::PermissionRequestResult),
+ "SessionUpdate" => Some(Self::SessionUpdate),
+ _ => None,
+ }
+ }
+}
+#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
+#[repr(i32)]
+pub enum CopyDestination {
+ Command = 0,
+ Primary = 1,
+ System = 2,
+}
+impl CopyDestination {
+ /// String value of the enum field names used in the ProtoBuf definition.
+ ///
+ /// The values are not transformed in any way and thus are considered stable
+ /// (if the ProtoBuf definition does not change) and safe for programmatic use.
+ pub fn as_str_name(&self) -> &'static str {
+ match self {
+ CopyDestination::Command => "Command",
+ CopyDestination::Primary => "Primary",
+ CopyDestination::System => "System",
+ }
+ }
+ /// Creates an enum from field names used in the ProtoBuf definition.
+ pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
+ match value {
+ "Command" => Some(Self::Command),
+ "Primary" => Some(Self::Primary),
+ "System" => Some(Self::System),
+ _ => None,
+ }
+ }
+}
+#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
+#[repr(i32)]
+pub enum MouseEventName {
+ MouseScrollUp = 0,
+ MouseScrollDown = 1,
+ MouseLeftClick = 2,
+ MouseRightClick = 3,
+ MouseHold = 4,
+ MouseRelease = 5,
+}
+impl MouseEventName {
+ /// String value of the enum field names used in the ProtoBuf definition.
+ ///
+ /// The values are not transformed in any way and thus are considered stable
+ /// (if the ProtoBuf definition does not change) and safe for programmatic use.
+ pub fn as_str_name(&self) -> &'static str {
+ match self {
+ MouseEventName::MouseScrollUp => "MouseScrollUp",
+ MouseEventName::MouseScrollDown => "MouseScrollDown",
+ MouseEventName::MouseLeftClick => "MouseLeftClick",
+ MouseEventName::MouseRightClick => "MouseRightClick",
+ MouseEventName::MouseHold => "MouseHold",
+ MouseEventName::MouseRelease => "MouseRelease",
+ }
+ }
+ /// Creates an enum from field names used in the ProtoBuf definition.
+ pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
+ match value {
+ "MouseScrollUp" => Some(Self::MouseScrollUp),
+ "MouseScrollDown" => Some(Self::MouseScrollDown),
+ "MouseLeftClick" => Some(Self::MouseLeftClick),
+ "MouseRightClick" => Some(Self::MouseRightClick),
+ "MouseHold" => Some(Self::MouseHold),
+ "MouseRelease" => Some(Self::MouseRelease),
+ _ => None,
+ }
+ }
+}