|
|
fb0999df90
|
feat: 统一 current_monitor 切换并让光标跟随 current_monitor 变化
- 新增 wm_set_current_monitor ,切换前记录光标当前所在 monitor 的最后
位置
- 切换到目标 monitor 时按需恢复该 monitor 的光标位置
- 将 action/event/client 中直接赋值 wm.current_monitor 的逻辑改为统一
调用 wm_set_current_monitor
- 优化 monitor_restore_cursor_point:首次未初始化时计算并设置位置
- 为 wm_get_monitor_by_area / wm_get_monitor_by_point 增加
returns_nonnull 约束,并让 by_point 复用 by_area
|
2026-03-03 04:11:02 +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 |
|
|
|
9b7c3a67ef
|
perf: 避免不必要的栈顶窗口重排
在 client_stack_raise 中如果 client 已经在窗口栈顶部直接返回,避免不必
要的窗口栈重排
|
2026-03-03 00:27:23 +08:00 |
|
|
|
ab3d441928
|
fix: 将 client 的 instance 和 class 属性也无作为任务标题备选项
|
2026-03-03 00:22:39 +08:00 |
|
|
|
94d3be12ec
|
fix: 修复 MIN/MAX 宏守卫导致的宏可能不生效问题
|
2026-03-03 00:12:19 +08:00 |
|
|
|
323a0f3711
|
支持窗口最小化功能
|
2026-02-26 11:28:56 +08:00 |
|
|
|
8c0b295115
|
实现 client 窗口自带最大化按钮功能
|
2026-02-26 00:24:52 +08:00 |
|
|
|
89275d0643
|
修改默认 firefox 和 mpv 相关规则
|
2026-02-24 03:14:13 +08:00 |
|
|
|
d516d8f9e0
|
添加关闭窗口功能
|
2026-02-24 03:13:23 +08:00 |
|
|
|
6d65c53d43
|
完善 xwindow_send_event 函数功能
|
2026-02-24 03:05:43 +08:00 |
|
|
|
9baa3d4d1c
|
状态栏: 修复 CPU 使用率不能正确获取 bug
|
2026-02-14 05:07:11 +08:00 |
|
|
|
3edac120d2
|
状态栏: 内存小于 1KB 时显示整数格式
|
2026-02-11 15:09:17 +08:00 |
|
|
|
b5c0cfefd7
|
处理 pulseaudio 服务关闭导致的程序意外终止
|
2026-02-11 14:38:05 +08:00 |
|
|
|
a69f3bbc64
|
状态栏添加音量显示并添加音量调节功能
|
2026-02-11 02:22:49 +08:00 |
|
|
|
194c2b000d
|
添加状态栏
|
2026-02-05 05:42:54 +08:00 |
|
|
|
3b7bd55519
|
调整快捷键设置
|
2026-02-04 17:22:42 +08:00 |
|
|
|
8337ab9519
|
添加窗口规则支持
|
2026-02-04 16:47:35 +08:00 |
|
|
|
0e07ba135b
|
支持窗口最大化操作
|
2026-02-04 12:13:19 +08:00 |
|
|
|
4b6df52b41
|
修复窗口全屏后其他窗口未重新布局问题
|
2026-02-01 16:39:10 +08:00 |
|
|
|
a08fbcbb9c
|
修复任务列表中窗口名称更新不及时问题
|
2026-01-31 23:34:32 +08:00 |
|
|
|
5dd042384d
|
添加自启动程序支持
|
2026-01-31 23:30:10 +08:00 |
|
|
|
a748159dcd
|
删除 client 不必要的属性
|
2026-01-29 09:59:14 +08:00 |
|
|
|
6f4690705a
|
修正浮动窗口和全屏窗口配合行为
|
2026-01-29 09:18:45 +08:00 |
|
|
|
a5ce85be78
|
支持窗口全屏操作
|
2026-01-29 07:46:06 +08:00 |
|
|
|
a772d0f56f
|
支持 client 窗口浮动
|
2026-01-28 23:40:15 +08:00 |
|
|
|
5ecaa97f10
|
添加 raise_or_run 功能
|
2026-01-28 16:19:18 +08:00 |
|
|
|
99d2e33a46
|
使用 _NET_WM_DESKTOP 保存和恢复 client 所在 tag
|
2026-01-28 09:50:36 +08:00 |
|
|
|
d1fa848632
|
快捷键主 modifier 从 ALT 切换到 SUPER
|
2026-01-27 01:14:29 +08:00 |
|
|
|
23fb95a5e4
|
清理 root 窗口 property
|
2026-01-27 01:14:29 +08:00 |
|
|
|
47d578ca71
|
实现 wm_scan_clients 函数
|
2026-01-27 01:14:29 +08:00 |
|
|
|
ef37f28fa5
|
处理锁屏或息屏重新进入桌面后 bar 不显示问题
|
2026-01-27 01:14:29 +08:00 |
|
|
|
3d5f8ab7e0
|
设置 root 窗口背景为黑色以免 client 窗口销毁后画面不更新
|
2026-01-27 01:14:26 +08:00 |
|
|
|
21d7adf882
|
删除不必要的子进程信号
glib 会自动处理子进程资源,无需手动处理,手动处理不当反而会造成 bug
|
2026-01-25 11:25:56 +08:00 |
|
|
|
3e2bf57218
|
修复部分软件启动很慢的问题(如 xterm)
|
2026-01-25 11:24:48 +08:00 |
|
|
|
049b18a496
|
调整 send_client_to_next_monitor 函数实现
|
2026-01-14 03:44:53 +08:00 |
|
|
|
ced78b004f
|
添加记录和恢复光标在每个 monitor 中的位置功能
|
2026-01-13 12:29:49 +08:00 |
|
|
|
5e22aed718
|
monitor_arrange 函数支持多 monitor
|
2026-01-13 09:44:53 +08:00 |
|
|
|
6b49045ee9
|
切换 client 所在 monitor
|
2026-01-07 12:12:56 +08:00 |
|
|
|
2902c994ba
|
切换 client 所在 tag
|
2026-01-07 11:39:46 +08:00 |
|
|
|
1dbcf3e654
|
tile 布局
|
2026-01-06 04:28:33 +08:00 |
|
|
|
8fba9ee71f
|
处理切换 tag 后 client 的焦点
|
2026-01-05 22:18:57 +08:00 |
|
|
|
943ede70a0
|
实现 _NET_ACTIVE_WINDOW 消息协议
|
2026-01-05 22:04:27 +08:00 |
|
|
|
fac2a84d7f
|
更新 clang-format 配置
|
2026-01-02 18:24:56 +08:00 |
|
|
|
6382afeb03
|
处理堆叠顺序
|
2025-12-22 11:37:18 +08:00 |
|
|
|
dee16344ce
|
修复 xwindow_get_text_property 函数中返回 reply 为 NULL 造成的 bug
|
2025-12-22 09:43:42 +08:00 |
|
|
|
94d3aa669f
|
处理窗口创建/销毁和切换 tag 时的窗口焦点
|
2025-12-22 09:43:42 +08:00 |
|
|
|
b944251f11
|
切换 tag 时重排对应 monitor 中的 client
|
2025-12-22 08:30:19 +08:00 |
|
|
|
c5e79661d1
|
使用 Xephyr 调试程序时继承现有 dpi 设置的值
|
2025-12-20 22:50:33 +08:00 |
|
|
|
8eeeff5f3b
|
添加从 Xresources 中读取配置功能
|
2025-12-20 22:47:58 +08:00 |
|
|
|
364a00fb7c
|
添加边框
|
2025-12-20 20:22:41 +08:00 |
|