1
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
pub use crate::handlers::command_handler::ReleaseScratchPadOption;
use crate::{
layouts::Layout,
models::{ScratchPadName, TagId, WindowHandle},
};
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize, Clone, PartialEq, Debug)]
pub enum Command {
CloseWindow,
SwapScreens,
SoftReload,
HardReload,
AttachScratchPad {
window: Option<WindowHandle>,
scratchpad: ScratchPadName,
},
ReleaseScratchPad {
window: ReleaseScratchPadOption,
tag: Option<TagId>,
},
PrevScratchPadWindow {
scratchpad: ScratchPadName,
},
NextScratchPadWindow {
scratchpad: ScratchPadName,
},
ToggleScratchPad(ScratchPadName),
ToggleFullScreen,
ToggleSticky,
GoToTag {
tag: TagId,
swap: bool,
},
ReturnToLastTag,
FloatingToTile,
TileToFloating,
ToggleFloating,
MoveWindowUp,
MoveWindowDown,
MoveWindowTop {
swap: bool,
},
FocusNextTag,
FocusPreviousTag,
FocusWindow(String),
FocusWindowUp,
FocusWindowDown,
FocusWindowTop {
swap: bool,
},
FocusWorkspaceNext,
FocusWorkspacePrevious,
SendWindowToTag {
window: Option<WindowHandle>,
tag: TagId,
},
MoveWindowToNextTag {
follow: bool,
},
MoveWindowToPreviousTag {
follow: bool,
},
MoveWindowToLastWorkspace,
MoveWindowToNextWorkspace,
MoveWindowToPreviousWorkspace,
NextLayout,
PreviousLayout,
SetLayout(Layout),
RotateTag,
IncreaseMainWidth(i8),
DecreaseMainWidth(i8),
SetMarginMultiplier(f32),
SendWorkspaceToTag(usize, usize),
CloseAllOtherWindows,
Other(String),
}