LabWC 0.8.4 版本发布:窗口管理器的精细化升级
2025-06-25 16:31:01作者:董宙帆
LabWC 是一款轻量级的 Wayland 合成器窗口管理器,专注于提供简洁高效的桌面环境体验。作为 Openbox 的 Wayland 实现,LabWC 继承了 Openbox 的配置方式和轻量特性,同时充分利用了 Wayland 协议的优势。
核心功能增强
图标支持全面升级
0.8.4 版本在窗口切换器(window-switcher)和客户端列表组合菜单(client-list-combined-menu)中新增了对应用程序图标的支持。这一改进通过以下方式实现:
- 窗口切换器现在默认显示应用程序图标和桌面条目名称
- 开发者可以通过
<field content="icon"/>配置项显式启用图标显示 - 当应用程序未设置 app_id 时,SSD 标题栏会显示回退图标
字体权重全面支持
新版本扩展了对 Pango 字体权重的支持,现在用户可以在主题配置中通过 <theme><font><weight> 设置以下所有选项:
- 细体:thin, ultralight, light
- 常规:normal, book, medium
- 粗体:semibold, bold, ultrabold
- 特粗:heavy, ultraheavy
用户体验优化
窗口管理改进
- 初始最小化窗口处理:修复了像 VSCode 这类初始最小化窗口的焦点和堆叠顺序问题
- 鼠标跟随焦点优化:当配置
<focus><followMouse>为 yes 时,焦点仅在光标进入窗口内容区域时更新,不再包括标题栏区域 - 窗口吸附范围扩大:默认
<snapping><range>值增加到 10,使窗口在多显示器边缘吸附更加容易
视觉元素调整
- 工作区切换器边框:新增
osd.workspace-switcher.boxes.border.width主题选项 - 窗口切换器图标尺寸:新增
osd.window-switcher.item.icon.size主题选项 - 居中显示改进:在窗口切换器中考虑
item.padding.y设置来居中工作区名称
技术实现优化
XWayland 兼容性
- 正确通知 XWayland 窗口堆叠顺序,解决了鼠标滚动事件和始终置顶窗口的问题
- 根据输出设置缩放和变换放大镜,现在放大镜仅在一个输出上显示以简化处理
配置系统增强
- 支持完全覆盖
<windowSwitcher><fields>和<theme><titlebar><layout>配置项 - 修复了
<touch>配置覆盖问题,确保--merge-config正常工作 - 允许空内容
<desktops><prefix>节点,为用户提供覆盖默认"Workspace"文本的方式
行为变更与稳定性
- 窗口切换期间限制操作:仅允许 Previous/NextWindow 操作,防止 SendToDesktop 等操作导致未定义行为
- 窗口堆叠顺序加固:在窗口切换期间确保稳定的窗口堆叠顺序
- 光标更新控制:窗口切换期间不再更新光标位置
这些改进使 LabWC 在保持轻量级特性的同时,提供了更加稳定和一致的用户体验,特别是在多窗口管理和视觉呈现方面有了显著提升。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0214
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0138
uni-appA cross-platform framework using Vue.jsJavaScript08
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03
热门内容推荐
最新内容推荐
项目优选
收起
deepin linux kernel
C
32
16
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
469
465
暂无描述
Dockerfile
778
5.08 K
Ascend Extension for PyTorch
Python
757
968
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
876
2.03 K
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
697
1.4 K
昇腾LLM分布式训练框架
Python
185
231
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
2.25 K
676
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.1 K
1.14 K
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
271