zellij_utils/opt/rustwide/workdir/assets/prost/
api.action.rs

1#[allow(clippy::derive_partial_eq_without_eq)]
2#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct Action {
4    #[prost(enumeration = "ActionName", tag = "1")]
5    pub name: i32,
6    #[prost(
7        oneof = "action::OptionalPayload",
8        tags = "2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48"
9    )]
10    pub optional_payload: ::core::option::Option<action::OptionalPayload>,
11}
12/// Nested message and enum types in `Action`.
13pub mod action {
14    #[allow(clippy::derive_partial_eq_without_eq)]
15    #[derive(Clone, PartialEq, ::prost::Oneof)]
16    pub enum OptionalPayload {
17        #[prost(message, tag = "2")]
18        SwitchToModePayload(super::SwitchToModePayload),
19        #[prost(message, tag = "3")]
20        WritePayload(super::WritePayload),
21        #[prost(message, tag = "4")]
22        WriteCharsPayload(super::WriteCharsPayload),
23        #[prost(message, tag = "5")]
24        SwitchModeForAllClientsPayload(super::SwitchToModePayload),
25        #[prost(message, tag = "6")]
26        ResizePayload(super::super::resize::Resize),
27        #[prost(enumeration = "super::super::resize::ResizeDirection", tag = "7")]
28        MoveFocusPayload(i32),
29        #[prost(enumeration = "super::super::resize::ResizeDirection", tag = "8")]
30        MoveFocusOrTabPayload(i32),
31        #[prost(message, tag = "9")]
32        MovePanePayload(super::MovePanePayload),
33        #[prost(message, tag = "10")]
34        DumpScreenPayload(super::DumpScreenPayload),
35        #[prost(message, tag = "11")]
36        ScrollUpAtPayload(super::ScrollAtPayload),
37        #[prost(message, tag = "12")]
38        ScrollDownAtPayload(super::ScrollAtPayload),
39        #[prost(message, tag = "13")]
40        NewPanePayload(super::NewPanePayload),
41        #[prost(message, tag = "14")]
42        EditFilePayload(super::EditFilePayload),
43        #[prost(message, tag = "15")]
44        NewFloatingPanePayload(super::NewFloatingPanePayload),
45        #[prost(message, tag = "16")]
46        NewTiledPanePayload(super::NewTiledPanePayload),
47        #[prost(bytes, tag = "17")]
48        PaneNameInputPayload(::prost::alloc::vec::Vec<u8>),
49        #[prost(uint32, tag = "18")]
50        GoToTabPayload(u32),
51        #[prost(message, tag = "19")]
52        GoToTabNamePayload(super::GoToTabNamePayload),
53        #[prost(bytes, tag = "20")]
54        TabNameInputPayload(::prost::alloc::vec::Vec<u8>),
55        #[prost(message, tag = "21")]
56        RunPayload(super::RunCommandAction),
57        #[prost(message, tag = "22")]
58        LeftClickPayload(super::Position),
59        #[prost(message, tag = "23")]
60        RightClickPayload(super::Position),
61        #[prost(message, tag = "24")]
62        MiddleClickPayload(super::Position),
63        #[prost(message, tag = "25")]
64        LaunchOrFocusPluginPayload(super::LaunchOrFocusPluginPayload),
65        #[prost(message, tag = "26")]
66        LeftMouseReleasePayload(super::Position),
67        #[prost(message, tag = "27")]
68        RightMouseReleasePayload(super::Position),
69        #[prost(message, tag = "28")]
70        MiddleMouseReleasePayload(super::Position),
71        #[prost(message, tag = "29")]
72        MouseHoldLeftPayload(super::Position),
73        #[prost(message, tag = "30")]
74        MouseHoldRightPayload(super::Position),
75        #[prost(message, tag = "31")]
76        MouseHoldMiddlePayload(super::Position),
77        #[prost(bytes, tag = "32")]
78        SearchInputPayload(::prost::alloc::vec::Vec<u8>),
79        #[prost(enumeration = "super::SearchDirection", tag = "33")]
80        SearchPayload(i32),
81        #[prost(enumeration = "super::SearchOption", tag = "34")]
82        SearchToggleOptionPayload(i32),
83        #[prost(message, tag = "35")]
84        NewTiledPluginPanePayload(super::NewPluginPanePayload),
85        #[prost(message, tag = "36")]
86        NewFloatingPluginPanePayload(super::NewPluginPanePayload),
87        #[prost(string, tag = "37")]
88        StartOrReloadPluginPayload(::prost::alloc::string::String),
89        #[prost(uint32, tag = "38")]
90        CloseTerminalPanePayload(u32),
91        #[prost(uint32, tag = "39")]
92        ClosePluginPanePayload(u32),
93        #[prost(message, tag = "40")]
94        FocusTerminalPaneWithIdPayload(super::PaneIdAndShouldFloat),
95        #[prost(message, tag = "41")]
96        FocusPluginPaneWithIdPayload(super::PaneIdAndShouldFloat),
97        #[prost(message, tag = "42")]
98        RenameTerminalPanePayload(super::IdAndName),
99        #[prost(message, tag = "43")]
100        RenamePluginPanePayload(super::IdAndName),
101        #[prost(message, tag = "44")]
102        RenameTabPayload(super::IdAndName),
103        #[prost(string, tag = "45")]
104        RenameSessionPayload(::prost::alloc::string::String),
105        #[prost(message, tag = "46")]
106        LaunchPluginPayload(super::LaunchOrFocusPluginPayload),
107        #[prost(message, tag = "47")]
108        MessagePayload(super::CliPipePayload),
109        #[prost(enumeration = "super::MoveTabDirection", tag = "48")]
110        MoveTabPayload(i32),
111    }
112}
113#[allow(clippy::derive_partial_eq_without_eq)]
114#[derive(Clone, PartialEq, ::prost::Message)]
115pub struct CliPipePayload {
116    #[prost(string, optional, tag = "1")]
117    pub name: ::core::option::Option<::prost::alloc::string::String>,
118    #[prost(string, tag = "2")]
119    pub payload: ::prost::alloc::string::String,
120    #[prost(message, repeated, tag = "3")]
121    pub args: ::prost::alloc::vec::Vec<NameAndValue>,
122    #[prost(string, optional, tag = "4")]
123    pub plugin: ::core::option::Option<::prost::alloc::string::String>,
124}
125#[allow(clippy::derive_partial_eq_without_eq)]
126#[derive(Clone, PartialEq, ::prost::Message)]
127pub struct IdAndName {
128    #[prost(bytes = "vec", tag = "1")]
129    pub name: ::prost::alloc::vec::Vec<u8>,
130    #[prost(uint32, tag = "2")]
131    pub id: u32,
132}
133#[allow(clippy::derive_partial_eq_without_eq)]
134#[derive(Clone, PartialEq, ::prost::Message)]
135pub struct PaneIdAndShouldFloat {
136    #[prost(uint32, tag = "1")]
137    pub pane_id: u32,
138    #[prost(bool, tag = "2")]
139    pub should_float: bool,
140}
141#[allow(clippy::derive_partial_eq_without_eq)]
142#[derive(Clone, PartialEq, ::prost::Message)]
143pub struct NewPluginPanePayload {
144    #[prost(string, tag = "1")]
145    pub plugin_url: ::prost::alloc::string::String,
146    #[prost(string, optional, tag = "2")]
147    pub pane_name: ::core::option::Option<::prost::alloc::string::String>,
148    #[prost(bool, tag = "3")]
149    pub skip_plugin_cache: bool,
150}
151#[allow(clippy::derive_partial_eq_without_eq)]
152#[derive(Clone, PartialEq, ::prost::Message)]
153pub struct LaunchOrFocusPluginPayload {
154    #[prost(string, tag = "1")]
155    pub plugin_url: ::prost::alloc::string::String,
156    #[prost(bool, tag = "2")]
157    pub should_float: bool,
158    #[prost(message, optional, tag = "3")]
159    pub plugin_configuration: ::core::option::Option<PluginConfiguration>,
160    #[prost(bool, tag = "4")]
161    pub move_to_focused_tab: bool,
162    #[prost(bool, tag = "5")]
163    pub should_open_in_place: bool,
164    #[prost(bool, tag = "6")]
165    pub skip_plugin_cache: bool,
166}
167#[allow(clippy::derive_partial_eq_without_eq)]
168#[derive(Clone, PartialEq, ::prost::Message)]
169pub struct GoToTabNamePayload {
170    #[prost(string, tag = "1")]
171    pub tab_name: ::prost::alloc::string::String,
172    #[prost(bool, tag = "2")]
173    pub create: bool,
174}
175#[allow(clippy::derive_partial_eq_without_eq)]
176#[derive(Clone, PartialEq, ::prost::Message)]
177pub struct NewFloatingPanePayload {
178    #[prost(message, optional, tag = "1")]
179    pub command: ::core::option::Option<RunCommandAction>,
180}
181#[allow(clippy::derive_partial_eq_without_eq)]
182#[derive(Clone, PartialEq, ::prost::Message)]
183pub struct NewTiledPanePayload {
184    #[prost(message, optional, tag = "1")]
185    pub command: ::core::option::Option<RunCommandAction>,
186    #[prost(enumeration = "super::resize::ResizeDirection", optional, tag = "2")]
187    pub direction: ::core::option::Option<i32>,
188}
189#[allow(clippy::derive_partial_eq_without_eq)]
190#[derive(Clone, PartialEq, ::prost::Message)]
191pub struct MovePanePayload {
192    #[prost(enumeration = "super::resize::ResizeDirection", optional, tag = "1")]
193    pub direction: ::core::option::Option<i32>,
194}
195#[allow(clippy::derive_partial_eq_without_eq)]
196#[derive(Clone, PartialEq, ::prost::Message)]
197pub struct EditFilePayload {
198    #[prost(string, tag = "1")]
199    pub file_to_edit: ::prost::alloc::string::String,
200    #[prost(uint32, optional, tag = "2")]
201    pub line_number: ::core::option::Option<u32>,
202    #[prost(string, optional, tag = "3")]
203    pub cwd: ::core::option::Option<::prost::alloc::string::String>,
204    #[prost(enumeration = "super::resize::ResizeDirection", optional, tag = "4")]
205    pub direction: ::core::option::Option<i32>,
206    #[prost(bool, tag = "5")]
207    pub should_float: bool,
208}
209#[allow(clippy::derive_partial_eq_without_eq)]
210#[derive(Clone, PartialEq, ::prost::Message)]
211pub struct ScrollAtPayload {
212    #[prost(message, optional, tag = "1")]
213    pub position: ::core::option::Option<Position>,
214}
215#[allow(clippy::derive_partial_eq_without_eq)]
216#[derive(Clone, PartialEq, ::prost::Message)]
217pub struct NewPanePayload {
218    #[prost(enumeration = "super::resize::ResizeDirection", optional, tag = "1")]
219    pub direction: ::core::option::Option<i32>,
220    #[prost(string, optional, tag = "2")]
221    pub pane_name: ::core::option::Option<::prost::alloc::string::String>,
222}
223#[allow(clippy::derive_partial_eq_without_eq)]
224#[derive(Clone, PartialEq, ::prost::Message)]
225pub struct SwitchToModePayload {
226    #[prost(enumeration = "super::input_mode::InputMode", tag = "1")]
227    pub input_mode: i32,
228}
229#[allow(clippy::derive_partial_eq_without_eq)]
230#[derive(Clone, PartialEq, ::prost::Message)]
231pub struct WritePayload {
232    #[prost(bytes = "vec", tag = "1")]
233    pub bytes_to_write: ::prost::alloc::vec::Vec<u8>,
234}
235#[allow(clippy::derive_partial_eq_without_eq)]
236#[derive(Clone, PartialEq, ::prost::Message)]
237pub struct WriteCharsPayload {
238    #[prost(string, tag = "1")]
239    pub chars: ::prost::alloc::string::String,
240}
241#[allow(clippy::derive_partial_eq_without_eq)]
242#[derive(Clone, PartialEq, ::prost::Message)]
243pub struct DumpScreenPayload {
244    #[prost(string, tag = "1")]
245    pub file_path: ::prost::alloc::string::String,
246    #[prost(bool, tag = "2")]
247    pub include_scrollback: bool,
248}
249#[allow(clippy::derive_partial_eq_without_eq)]
250#[derive(Clone, PartialEq, ::prost::Message)]
251pub struct Position {
252    #[prost(int64, tag = "1")]
253    pub line: i64,
254    #[prost(int64, tag = "2")]
255    pub column: i64,
256}
257#[allow(clippy::derive_partial_eq_without_eq)]
258#[derive(Clone, PartialEq, ::prost::Message)]
259pub struct RunCommandAction {
260    #[prost(string, tag = "1")]
261    pub command: ::prost::alloc::string::String,
262    #[prost(string, repeated, tag = "2")]
263    pub args: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
264    #[prost(string, optional, tag = "3")]
265    pub cwd: ::core::option::Option<::prost::alloc::string::String>,
266    #[prost(enumeration = "super::resize::ResizeDirection", optional, tag = "4")]
267    pub direction: ::core::option::Option<i32>,
268    #[prost(string, optional, tag = "5")]
269    pub pane_name: ::core::option::Option<::prost::alloc::string::String>,
270    #[prost(bool, tag = "6")]
271    pub hold_on_close: bool,
272    #[prost(bool, tag = "7")]
273    pub hold_on_start: bool,
274}
275#[allow(clippy::derive_partial_eq_without_eq)]
276#[derive(Clone, PartialEq, ::prost::Message)]
277pub struct PluginConfiguration {
278    #[prost(message, repeated, tag = "1")]
279    pub name_and_value: ::prost::alloc::vec::Vec<NameAndValue>,
280}
281#[allow(clippy::derive_partial_eq_without_eq)]
282#[derive(Clone, PartialEq, ::prost::Message)]
283pub struct NameAndValue {
284    #[prost(string, tag = "1")]
285    pub name: ::prost::alloc::string::String,
286    #[prost(string, tag = "2")]
287    pub value: ::prost::alloc::string::String,
288}
289#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
290#[repr(i32)]
291pub enum SearchDirection {
292    Up = 0,
293    Down = 1,
294}
295impl SearchDirection {
296    /// String value of the enum field names used in the ProtoBuf definition.
297    ///
298    /// The values are not transformed in any way and thus are considered stable
299    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
300    pub fn as_str_name(&self) -> &'static str {
301        match self {
302            SearchDirection::Up => "Up",
303            SearchDirection::Down => "Down",
304        }
305    }
306    /// Creates an enum from field names used in the ProtoBuf definition.
307    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
308        match value {
309            "Up" => Some(Self::Up),
310            "Down" => Some(Self::Down),
311            _ => None,
312        }
313    }
314}
315#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
316#[repr(i32)]
317pub enum SearchOption {
318    CaseSensitivity = 0,
319    WholeWord = 1,
320    Wrap = 2,
321}
322impl SearchOption {
323    /// String value of the enum field names used in the ProtoBuf definition.
324    ///
325    /// The values are not transformed in any way and thus are considered stable
326    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
327    pub fn as_str_name(&self) -> &'static str {
328        match self {
329            SearchOption::CaseSensitivity => "CaseSensitivity",
330            SearchOption::WholeWord => "WholeWord",
331            SearchOption::Wrap => "Wrap",
332        }
333    }
334    /// Creates an enum from field names used in the ProtoBuf definition.
335    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
336        match value {
337            "CaseSensitivity" => Some(Self::CaseSensitivity),
338            "WholeWord" => Some(Self::WholeWord),
339            "Wrap" => Some(Self::Wrap),
340            _ => None,
341        }
342    }
343}
344#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
345#[repr(i32)]
346pub enum MoveTabDirection {
347    Left = 0,
348    Right = 1,
349}
350impl MoveTabDirection {
351    /// String value of the enum field names used in the ProtoBuf definition.
352    ///
353    /// The values are not transformed in any way and thus are considered stable
354    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
355    pub fn as_str_name(&self) -> &'static str {
356        match self {
357            MoveTabDirection::Left => "Left",
358            MoveTabDirection::Right => "Right",
359        }
360    }
361    /// Creates an enum from field names used in the ProtoBuf definition.
362    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
363        match value {
364            "Left" => Some(Self::Left),
365            "Right" => Some(Self::Right),
366            _ => None,
367        }
368    }
369}
370#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
371#[repr(i32)]
372pub enum ActionName {
373    Quit = 0,
374    Write = 1,
375    WriteChars = 2,
376    SwitchToMode = 3,
377    SwitchModeForAllClients = 4,
378    Resize = 5,
379    FocusNextPane = 6,
380    FocusPreviousPane = 7,
381    SwitchFocus = 8,
382    MoveFocus = 9,
383    MoveFocusOrTab = 10,
384    MovePane = 11,
385    MovePaneBackwards = 12,
386    ClearScreen = 13,
387    DumpScreen = 14,
388    EditScrollback = 15,
389    ScrollUp = 16,
390    ScrollUpAt = 17,
391    ScrollDown = 18,
392    ScrollDownAt = 19,
393    ScrollToBottom = 20,
394    ScrollToTop = 21,
395    PageScrollUp = 22,
396    PageScrollDown = 23,
397    HalfPageScrollUp = 24,
398    HalfPageScrollDown = 25,
399    ToggleFocusFullscreen = 26,
400    TogglePaneFrames = 27,
401    ToggleActiveSyncTab = 28,
402    NewPane = 29,
403    EditFile = 30,
404    NewFloatingPane = 31,
405    NewTiledPane = 32,
406    TogglePaneEmbedOrFloating = 33,
407    ToggleFloatingPanes = 34,
408    CloseFocus = 35,
409    PaneNameInput = 36,
410    UndoRenamePane = 37,
411    NewTab = 38,
412    NoOp = 39,
413    GoToNextTab = 40,
414    GoToPreviousTab = 41,
415    CloseTab = 42,
416    GoToTab = 43,
417    GoToTabName = 44,
418    ToggleTab = 45,
419    TabNameInput = 46,
420    UndoRenameTab = 47,
421    Run = 48,
422    Detach = 49,
423    LeftClick = 50,
424    RightClick = 51,
425    MiddleClick = 52,
426    LaunchOrFocusPlugin = 53,
427    LeftMouseRelease = 54,
428    RightMouseRelease = 55,
429    MiddleMouseRelease = 56,
430    MouseHoldLeft = 57,
431    MouseHoldRight = 58,
432    MouseHoldMiddle = 59,
433    SearchInput = 60,
434    Search = 61,
435    SearchToggleOption = 62,
436    ToggleMouseMode = 63,
437    PreviousSwapLayout = 64,
438    NextSwapLayout = 65,
439    QueryTabNames = 66,
440    NewTiledPluginPane = 67,
441    NewFloatingPluginPane = 68,
442    StartOrReloadPlugin = 69,
443    CloseTerminalPane = 70,
444    ClosePluginPane = 71,
445    FocusTerminalPaneWithId = 72,
446    FocusPluginPaneWithId = 73,
447    RenameTerminalPane = 74,
448    RenamePluginPane = 75,
449    RenameTab = 76,
450    BreakPane = 77,
451    BreakPaneRight = 78,
452    BreakPaneLeft = 79,
453    RenameSession = 80,
454    LaunchPlugin = 81,
455    CliPipe = 82,
456    MoveTab = 83,
457    KeybindPipe = 84,
458}
459impl ActionName {
460    /// String value of the enum field names used in the ProtoBuf definition.
461    ///
462    /// The values are not transformed in any way and thus are considered stable
463    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
464    pub fn as_str_name(&self) -> &'static str {
465        match self {
466            ActionName::Quit => "Quit",
467            ActionName::Write => "Write",
468            ActionName::WriteChars => "WriteChars",
469            ActionName::SwitchToMode => "SwitchToMode",
470            ActionName::SwitchModeForAllClients => "SwitchModeForAllClients",
471            ActionName::Resize => "Resize",
472            ActionName::FocusNextPane => "FocusNextPane",
473            ActionName::FocusPreviousPane => "FocusPreviousPane",
474            ActionName::SwitchFocus => "SwitchFocus",
475            ActionName::MoveFocus => "MoveFocus",
476            ActionName::MoveFocusOrTab => "MoveFocusOrTab",
477            ActionName::MovePane => "MovePane",
478            ActionName::MovePaneBackwards => "MovePaneBackwards",
479            ActionName::ClearScreen => "ClearScreen",
480            ActionName::DumpScreen => "DumpScreen",
481            ActionName::EditScrollback => "EditScrollback",
482            ActionName::ScrollUp => "ScrollUp",
483            ActionName::ScrollUpAt => "ScrollUpAt",
484            ActionName::ScrollDown => "ScrollDown",
485            ActionName::ScrollDownAt => "ScrollDownAt",
486            ActionName::ScrollToBottom => "ScrollToBottom",
487            ActionName::ScrollToTop => "ScrollToTop",
488            ActionName::PageScrollUp => "PageScrollUp",
489            ActionName::PageScrollDown => "PageScrollDown",
490            ActionName::HalfPageScrollUp => "HalfPageScrollUp",
491            ActionName::HalfPageScrollDown => "HalfPageScrollDown",
492            ActionName::ToggleFocusFullscreen => "ToggleFocusFullscreen",
493            ActionName::TogglePaneFrames => "TogglePaneFrames",
494            ActionName::ToggleActiveSyncTab => "ToggleActiveSyncTab",
495            ActionName::NewPane => "NewPane",
496            ActionName::EditFile => "EditFile",
497            ActionName::NewFloatingPane => "NewFloatingPane",
498            ActionName::NewTiledPane => "NewTiledPane",
499            ActionName::TogglePaneEmbedOrFloating => "TogglePaneEmbedOrFloating",
500            ActionName::ToggleFloatingPanes => "ToggleFloatingPanes",
501            ActionName::CloseFocus => "CloseFocus",
502            ActionName::PaneNameInput => "PaneNameInput",
503            ActionName::UndoRenamePane => "UndoRenamePane",
504            ActionName::NewTab => "NewTab",
505            ActionName::NoOp => "NoOp",
506            ActionName::GoToNextTab => "GoToNextTab",
507            ActionName::GoToPreviousTab => "GoToPreviousTab",
508            ActionName::CloseTab => "CloseTab",
509            ActionName::GoToTab => "GoToTab",
510            ActionName::GoToTabName => "GoToTabName",
511            ActionName::ToggleTab => "ToggleTab",
512            ActionName::TabNameInput => "TabNameInput",
513            ActionName::UndoRenameTab => "UndoRenameTab",
514            ActionName::Run => "Run",
515            ActionName::Detach => "Detach",
516            ActionName::LeftClick => "LeftClick",
517            ActionName::RightClick => "RightClick",
518            ActionName::MiddleClick => "MiddleClick",
519            ActionName::LaunchOrFocusPlugin => "LaunchOrFocusPlugin",
520            ActionName::LeftMouseRelease => "LeftMouseRelease",
521            ActionName::RightMouseRelease => "RightMouseRelease",
522            ActionName::MiddleMouseRelease => "MiddleMouseRelease",
523            ActionName::MouseHoldLeft => "MouseHoldLeft",
524            ActionName::MouseHoldRight => "MouseHoldRight",
525            ActionName::MouseHoldMiddle => "MouseHoldMiddle",
526            ActionName::SearchInput => "SearchInput",
527            ActionName::Search => "Search",
528            ActionName::SearchToggleOption => "SearchToggleOption",
529            ActionName::ToggleMouseMode => "ToggleMouseMode",
530            ActionName::PreviousSwapLayout => "PreviousSwapLayout",
531            ActionName::NextSwapLayout => "NextSwapLayout",
532            ActionName::QueryTabNames => "QueryTabNames",
533            ActionName::NewTiledPluginPane => "NewTiledPluginPane",
534            ActionName::NewFloatingPluginPane => "NewFloatingPluginPane",
535            ActionName::StartOrReloadPlugin => "StartOrReloadPlugin",
536            ActionName::CloseTerminalPane => "CloseTerminalPane",
537            ActionName::ClosePluginPane => "ClosePluginPane",
538            ActionName::FocusTerminalPaneWithId => "FocusTerminalPaneWithId",
539            ActionName::FocusPluginPaneWithId => "FocusPluginPaneWithId",
540            ActionName::RenameTerminalPane => "RenameTerminalPane",
541            ActionName::RenamePluginPane => "RenamePluginPane",
542            ActionName::RenameTab => "RenameTab",
543            ActionName::BreakPane => "BreakPane",
544            ActionName::BreakPaneRight => "BreakPaneRight",
545            ActionName::BreakPaneLeft => "BreakPaneLeft",
546            ActionName::RenameSession => "RenameSession",
547            ActionName::LaunchPlugin => "LaunchPlugin",
548            ActionName::CliPipe => "CliPipe",
549            ActionName::MoveTab => "MoveTab",
550            ActionName::KeybindPipe => "KeybindPipe",
551        }
552    }
553    /// Creates an enum from field names used in the ProtoBuf definition.
554    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
555        match value {
556            "Quit" => Some(Self::Quit),
557            "Write" => Some(Self::Write),
558            "WriteChars" => Some(Self::WriteChars),
559            "SwitchToMode" => Some(Self::SwitchToMode),
560            "SwitchModeForAllClients" => Some(Self::SwitchModeForAllClients),
561            "Resize" => Some(Self::Resize),
562            "FocusNextPane" => Some(Self::FocusNextPane),
563            "FocusPreviousPane" => Some(Self::FocusPreviousPane),
564            "SwitchFocus" => Some(Self::SwitchFocus),
565            "MoveFocus" => Some(Self::MoveFocus),
566            "MoveFocusOrTab" => Some(Self::MoveFocusOrTab),
567            "MovePane" => Some(Self::MovePane),
568            "MovePaneBackwards" => Some(Self::MovePaneBackwards),
569            "ClearScreen" => Some(Self::ClearScreen),
570            "DumpScreen" => Some(Self::DumpScreen),
571            "EditScrollback" => Some(Self::EditScrollback),
572            "ScrollUp" => Some(Self::ScrollUp),
573            "ScrollUpAt" => Some(Self::ScrollUpAt),
574            "ScrollDown" => Some(Self::ScrollDown),
575            "ScrollDownAt" => Some(Self::ScrollDownAt),
576            "ScrollToBottom" => Some(Self::ScrollToBottom),
577            "ScrollToTop" => Some(Self::ScrollToTop),
578            "PageScrollUp" => Some(Self::PageScrollUp),
579            "PageScrollDown" => Some(Self::PageScrollDown),
580            "HalfPageScrollUp" => Some(Self::HalfPageScrollUp),
581            "HalfPageScrollDown" => Some(Self::HalfPageScrollDown),
582            "ToggleFocusFullscreen" => Some(Self::ToggleFocusFullscreen),
583            "TogglePaneFrames" => Some(Self::TogglePaneFrames),
584            "ToggleActiveSyncTab" => Some(Self::ToggleActiveSyncTab),
585            "NewPane" => Some(Self::NewPane),
586            "EditFile" => Some(Self::EditFile),
587            "NewFloatingPane" => Some(Self::NewFloatingPane),
588            "NewTiledPane" => Some(Self::NewTiledPane),
589            "TogglePaneEmbedOrFloating" => Some(Self::TogglePaneEmbedOrFloating),
590            "ToggleFloatingPanes" => Some(Self::ToggleFloatingPanes),
591            "CloseFocus" => Some(Self::CloseFocus),
592            "PaneNameInput" => Some(Self::PaneNameInput),
593            "UndoRenamePane" => Some(Self::UndoRenamePane),
594            "NewTab" => Some(Self::NewTab),
595            "NoOp" => Some(Self::NoOp),
596            "GoToNextTab" => Some(Self::GoToNextTab),
597            "GoToPreviousTab" => Some(Self::GoToPreviousTab),
598            "CloseTab" => Some(Self::CloseTab),
599            "GoToTab" => Some(Self::GoToTab),
600            "GoToTabName" => Some(Self::GoToTabName),
601            "ToggleTab" => Some(Self::ToggleTab),
602            "TabNameInput" => Some(Self::TabNameInput),
603            "UndoRenameTab" => Some(Self::UndoRenameTab),
604            "Run" => Some(Self::Run),
605            "Detach" => Some(Self::Detach),
606            "LeftClick" => Some(Self::LeftClick),
607            "RightClick" => Some(Self::RightClick),
608            "MiddleClick" => Some(Self::MiddleClick),
609            "LaunchOrFocusPlugin" => Some(Self::LaunchOrFocusPlugin),
610            "LeftMouseRelease" => Some(Self::LeftMouseRelease),
611            "RightMouseRelease" => Some(Self::RightMouseRelease),
612            "MiddleMouseRelease" => Some(Self::MiddleMouseRelease),
613            "MouseHoldLeft" => Some(Self::MouseHoldLeft),
614            "MouseHoldRight" => Some(Self::MouseHoldRight),
615            "MouseHoldMiddle" => Some(Self::MouseHoldMiddle),
616            "SearchInput" => Some(Self::SearchInput),
617            "Search" => Some(Self::Search),
618            "SearchToggleOption" => Some(Self::SearchToggleOption),
619            "ToggleMouseMode" => Some(Self::ToggleMouseMode),
620            "PreviousSwapLayout" => Some(Self::PreviousSwapLayout),
621            "NextSwapLayout" => Some(Self::NextSwapLayout),
622            "QueryTabNames" => Some(Self::QueryTabNames),
623            "NewTiledPluginPane" => Some(Self::NewTiledPluginPane),
624            "NewFloatingPluginPane" => Some(Self::NewFloatingPluginPane),
625            "StartOrReloadPlugin" => Some(Self::StartOrReloadPlugin),
626            "CloseTerminalPane" => Some(Self::CloseTerminalPane),
627            "ClosePluginPane" => Some(Self::ClosePluginPane),
628            "FocusTerminalPaneWithId" => Some(Self::FocusTerminalPaneWithId),
629            "FocusPluginPaneWithId" => Some(Self::FocusPluginPaneWithId),
630            "RenameTerminalPane" => Some(Self::RenameTerminalPane),
631            "RenamePluginPane" => Some(Self::RenamePluginPane),
632            "RenameTab" => Some(Self::RenameTab),
633            "BreakPane" => Some(Self::BreakPane),
634            "BreakPaneRight" => Some(Self::BreakPaneRight),
635            "BreakPaneLeft" => Some(Self::BreakPaneLeft),
636            "RenameSession" => Some(Self::RenameSession),
637            "LaunchPlugin" => Some(Self::LaunchPlugin),
638            "CliPipe" => Some(Self::CliPipe),
639            "MoveTab" => Some(Self::MoveTab),
640            "KeybindPipe" => Some(Self::KeybindPipe),
641            _ => None,
642        }
643    }
644}