feat(core/policy): 添加 unmanage/focus/kill 命令处理

This commit is contained in:
2026-04-23 04:49:43 +08:00
parent fc68e75f82
commit a749fc3c6c
2 changed files with 94 additions and 9 deletions

View File

@@ -5,7 +5,10 @@
typedef enum command_type_t {
ZDWM_COMMAND_MANAGE_WINDOW,
ZDWM_COMMAND_SWITCH_WORKSPACE
ZDWM_COMMAND_UNMANAGE_WINDOW,
ZDWM_COMMAND_FOCUS_WINDOW,
ZDWM_COMMAND_KILL_WINDOW,
ZDWM_COMMAND_SWITCH_WORKSPACE,
} command_type_t;
typedef struct manage_window_command_t {
@@ -19,6 +22,10 @@ typedef struct switch_workspace_command_t {
workspace_id_t workspace;
} switch_workspace_command_t;
typedef struct only_window_command_t {
window_id_t window;
} only_window_command_t;
/**
* @brief 非 owning 的命令值对象
* @details
@@ -32,6 +39,9 @@ typedef struct command_t {
command_type_t type;
union {
manage_window_command_t manage_window;
only_window_command_t unmanage;
only_window_command_t focus;
only_window_command_t kill;
switch_workspace_command_t switch_workspace;
} as;
} command_t;