Commit Graph

31 Commits

Author SHA1 Message Date
a4bd0b53de feat(bar): 添加窗口列表显示当前 workspace 的窗口列表 2026-06-16 17:14:59 +08:00
dee4073996 feat(bar): 新增绑定模式指示器显示当前 binding mode
- 新增 bar/binding: 监听 binding mode 变更,显示当前模式名
- 支持点击单元循环切换绑定模式(binding_mode_cycle)
- 默认模式下按 show_default 配置决定是否隐藏单元
- 补充 binding 相关默认配置(颜色、内边距、是否显示默认模式)
2026-06-16 02:09:38 +08:00
ac65180203 feat(bar): 按间隔节流 bar_item 更新
- 新增 base/time: time_monotonic_ms 与 time_create_monotonic_timerfd_by_fps
- bar 初始化改用该工具创建 timerfd,移除内联的 itimerspec 拼装
- bar_item_update 按 update_interval_ms 节流,记录 last_updated_time 跳过过早更新
2026-06-16 00:31:07 +08:00
62f6bab611 feat(bar): 新增 text 文字排版模块并将其集成到 bar 生命周期中 2026-06-08 01:24:49 +08:00
3a8c392d90 feat(bar): 实现 bar 初始化和清理功能并将其集成到 runtime 中 2026-06-08 01:21:19 +08:00
be37b17c2e refactor(runtime): 将 runtime 模块从 core 目录迁移至独立的 runtime 目录并封装内部细节 2026-06-06 02:08:35 +08:00
e9366b64e2 feat(backend): 添加创建 bar 窗口接口 2026-06-06 00:40:33 +08:00
f540c07aad refactor: 将 APP_NAME 宏从 CMake 配置文件生成改为静态头文件 2026-06-05 18:59:38 +08:00
ebc277201a chore: 删除老旧的测试代码和构建工具脚本 2026-06-05 16:23:04 +08:00
ff40b3caa0 feat(bar): 添加状态栏 bar 模块的基础架构和 workspace 指示器 2026-06-05 02:23:01 +08:00
09d5e4b4d0 refactor(policy): 删除 action 模块,将 action -> command 解析放在 policy 模块内部
- 删除 src/core/action.c|h,将 spawn 移至 src/base/process
- policy_resolve_action 实现完整的 action 分发逻辑
- binding_table_cycle_mode 改为纯计算,返回模式 ID 而非修改状态
- 从 state 移除 state_workspace_cycle_layout / state_cycle_current_output
- 新增 ZDWM_COMMAND_QUIT 命令,通过 plan 标志驱动 runtime 退出
- set_binding_mode 现在生成 BIND_KEY effect 以同步后端按键绑定
- 扩展 action 数据类型支持 window_send_to_workspace 和 window_cycle_output
2026-05-27 01:12:04 +08:00
74319e97f1 feat: 添加核心状态变更通知系统 2026-05-17 03:20:38 +08:00
601c0f3d1a refactor: 迁移 CMake 到模块化目录构建并添加新入口 2026-05-09 23:03:00 +08:00
56f211480f feat(core/binding): 实现 parse_key_sequence 函数解析按键序列 2026-04-25 07:53:57 +08:00
67f0c169f5 utils 按作用拆成 log/macros/memory 三个模块 2026-03-23 19:05:39 +08:00
34017fb5da 调整数据类型和接口函数命名规范 2026-03-23 12:42:19 +08:00
ac22a2b529 feat: 添加屏幕去重功能并调整测试用例目录结构 2026-03-22 04:18:59 +08:00
5d89caff0a 调整 X11 backend 目录结构 2026-03-21 03:01:27 +08:00
58d1b09203 test: 接入 CTest 并添加基础 runtime 测试 2026-03-14 13:55:09 +08:00
cdcafa1216 feat(tray): 增加独立系统托盘模块并补齐兼容性与所有权处理 2026-03-10 07:50:29 +08:00
d8cd91ea48 feat: 状态栏配置接入配置系统 2026-03-09 00:49:09 +08:00
35f0ea9680 feat: 添加壁纸功能 2026-03-08 15:23:09 +08:00
41a2289c96 feat: client 的任务栏标题点击行为根据 client 窗口的遮挡状态进行
- 当点击 client 在任务中的标题时,如果 client 被其他窗口遮挡,则将其显
示出来,否则切换其 minimize 属性
- 新增 rect 模块用于辅助判断 client 的遮挡状态,添加
rect_intersection/rect_subtract/rect_subtract_many 函数
- client 模块新增 client_get_obscured_state 计算 client 窗口被遮挡状态
- action 模块新增 change_client_state_dwim,实现上述的 client 状态切换
2026-03-03 00:35:11 +08:00
a69f3bbc64 状态栏添加音量显示并添加音量调节功能 2026-02-11 02:22:49 +08:00
194c2b000d 添加状态栏 2026-02-05 05:42:54 +08:00
1dbcf3e654 tile 布局 2026-01-06 04:28:33 +08:00
8eeeff5f3b 添加从 Xresources 中读取配置功能 2025-12-20 22:47:58 +08:00
489ae4bf2a 添加 monocle 布局功能 2025-12-09 00:48:52 +08:00
db917c1293 显式使用 GNU23 代替 C23 2025-12-08 05:40:54 +08:00
b99b8368aa 封装窗口焦点控制函数 2025-11-25 06:10:42 +08:00
2df0b58cb0 初始化 xkb 扩展 2025-11-25 06:06:42 +08:00