core: 定义核心事件数据模型并更新其文档
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "wm_binding.h"
|
||||
#include "wm_backend.h"
|
||||
#include "wm_layout.h"
|
||||
#include "wm_plan.h"
|
||||
@@ -23,6 +24,11 @@ typedef struct wm_interaction_state_t {
|
||||
wm_rect_t window_origin_rect;
|
||||
} wm_interaction_state_t;
|
||||
|
||||
typedef struct wm_border_palette_t {
|
||||
wm_rgba32_t normal_rgba;
|
||||
wm_rgba32_t focused_rgba;
|
||||
} wm_border_palette_t;
|
||||
|
||||
typedef struct wm_runtime_bootstrap_t {
|
||||
/*
|
||||
* 输出配置(启动时扫描显示器后填充)。
|
||||
@@ -55,6 +61,18 @@ typedef struct wm_runtime_bootstrap_t {
|
||||
*/
|
||||
wm_policy_config_t policy;
|
||||
|
||||
/*
|
||||
* 不可变键盘绑定表。
|
||||
* 当前草案把它视为 bootstrap 提供的只读视图;items 的生命周期必须覆盖 runtime。
|
||||
*/
|
||||
wm_key_binding_table_t keybindings;
|
||||
|
||||
/*
|
||||
* 不可变鼠标按键绑定表。
|
||||
* bar / status 点击属于核心外服务,因此这里只覆盖 root / window 目标。
|
||||
*/
|
||||
wm_pointer_binding_table_t pointer_bindings;
|
||||
|
||||
/*
|
||||
* 全局统一边框宽度。
|
||||
* 它不是窗口真状态。runtime 在提交 configure effect 时:
|
||||
@@ -63,6 +81,14 @@ typedef struct wm_runtime_bootstrap_t {
|
||||
*/
|
||||
uint16_t border_width;
|
||||
|
||||
/*
|
||||
* 全局边框颜色配置。
|
||||
* 它不是窗口真状态。runtime 在提交 configure effect 时根据当前焦点关系解析:
|
||||
* - 当前 workspace 的 focused window -> focused_rgba
|
||||
* - 其余窗口 -> normal_rgba
|
||||
*/
|
||||
wm_border_palette_t border_palette;
|
||||
|
||||
/*
|
||||
* Existing windows discovered during startup should be translated into these
|
||||
* commands instead of being injected into wm_state_t directly.
|
||||
@@ -80,7 +106,10 @@ typedef struct wm_runtime_t {
|
||||
wm_command_buffer_t command_buffer;
|
||||
wm_layout_registry_t layouts;
|
||||
wm_policy_config_t policy;
|
||||
wm_key_binding_table_t keybindings;
|
||||
wm_pointer_binding_table_t pointer_bindings;
|
||||
uint16_t border_width;
|
||||
wm_border_palette_t border_palette;
|
||||
wm_interaction_state_t interaction;
|
||||
wm_backend_t backend;
|
||||
wm_service_registry_t services;
|
||||
|
||||
Reference in New Issue
Block a user