core: 定义核心事件数据模型并更新其文档
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "wm_binding.h"
|
||||
#include "wm_event.h"
|
||||
#include "wm_plan.h"
|
||||
|
||||
@@ -18,6 +19,22 @@ typedef enum wm_backend_next_result_t {
|
||||
|
||||
typedef struct wm_backend_api_t {
|
||||
bool (*init)(wm_backend_t *backend);
|
||||
/*
|
||||
* 安装 bootstrap 固定下来的键盘绑定表。
|
||||
* X11 这类需要被动抓键的平台可以在这里建立平台侧 grab;
|
||||
* 总能收到所有键盘事件的 backend 可以把它留空。
|
||||
*/
|
||||
bool (*set_keybindings)(wm_backend_t *backend,
|
||||
const wm_key_binding_table_t *keybindings);
|
||||
/*
|
||||
* 安装 bootstrap 固定下来的鼠标按键绑定表。
|
||||
* X11 这类需要被动抓按钮的平台可以把它缓存下来,并在 root 或新受管窗口
|
||||
* 上按 target 规则建立 grab;总能收到所有 pointer button 事件的 backend
|
||||
* 可以把它留空。
|
||||
*/
|
||||
bool (*set_pointer_bindings)(
|
||||
wm_backend_t *backend,
|
||||
const wm_pointer_binding_table_t *pointer_bindings);
|
||||
/*
|
||||
* 返回一个 backend 轮询结果。
|
||||
* 只有返回 WM_BACKEND_NEXT_EVENT 时,out 才包含一个完整的 runtime 输入事件。
|
||||
|
||||
Reference in New Issue
Block a user