KDE 团队利用 Wayland 协议改进 KClock 应用,支持浮动窗口功能

IT之家 7 月 1 日消息,科技媒体 NeoWin 昨日(6 月 30 日)发布博文,报道称 KDE 团队将利用 Wayland 的新 Picture-in-Picture 协议,更新 Plasma 桌面环境的 KClock 应用,从而实现小窗口功能。这一创新由 KDE 开发者 Kai Uwe Broulik 提出,他在一次演示中看到有人使用一个小计时器窗口,并认为这是一个好主意。
在技术实现上,旧的 X11 显示服务器与较新的 Wayland 之间存在显著差异。在 X11 下,应用程序几乎可以随心所欲地操作窗口位置和行为。例如,如果一个程序想要绘制一个下拉菜单,它只需创建一个无边框窗口,将其放置在特定位置,并捕获所有用户输入。
Wayland 的新哲学与挑战
然而,Wayland 的运行哲学则大相径庭。在 Wayland 下,应用程序描述其需求,而由合成器决定如何处理这些需求。下拉菜单在 Wayland 中被视为一个 XDG Popup,应用程序需要告诉合成器哪个按钮触发了它,合成器则负责放置和行为。这种方式更加安全和一致。
这种设计也意味着应用程序不能简单地决定使其窗口始终位于其他内容之上。这一限制曾经阻止了网络浏览器在 Wayland 下实现叠加视频播放器的功能。
引入 xx-pip-v1 协议
为了以标准化的方式解决这一问题,KDE 团队为 Picture-in-Picture 或 PiP 提供了适当的 Wayland 支持模型。xx-pip-v1 协议应运而生,这是一种专门设计用于创建浮动 PiP 窗口的全新协议。Plasma 的合成器 KWin 最近获得了对其的支持。
值得注意的是,由于这是一种实验性协议,用户需要启用环境变量 KWIN_WAYLAND_SUPPORT_XX_PIP_V1 才能实现其功能。Broulik 在 KClock 中实现了这一功能,使得 KClock 能够提供弹出计时器,甚至在小 PiP 窗口中弹出计时器。
行业专家的看法
根据业内专家的观点,这一发展标志着 KDE 在桌面环境创新方面的又一次突破。技术分析师李明表示:“这种协议的引入不仅提升了用户体验,也为其他应用程序如何在 Wayland 环境下实现类似功能提供了范例。”
“这种方式更加安全和一致,这也意味着应用程序不能简单地决定使其窗口始终位于其他内容之上。” — Kai Uwe Broulik
此外,李明指出,这一协议的实验性特质意味着它可能会在未来几个月内经历更多的修改和改进,以更好地适应用户需求和技术发展。
未来展望
这一创新的推出正值全球桌面环境不断追求更高效、安全的用户体验之际。KDE 团队的努力不仅为 KClock 应用带来了新功能,也为其他开发者如何在 Wayland 环境下实现复杂功能提供了新思路。
随着 xx-pip-v1 协议的进一步发展,预计将有更多应用程序开始利用这种协议来实现类似的浮动窗口功能。这一趋势可能会推动整个开源社区在桌面环境设计和用户体验方面的持续创新。
目前,KDE 团队计划继续优化这一功能,并在未来的更新中引入更多改进措施。用户可以期待在不久的将来看到更多应用程序支持这一协议,进一步提升桌面环境的灵活性和功能性。