Wayland 多鼠标光标:多人协作新玩法

Multiple Mouse Cursors in Wayland

Wayland 多鼠标光标:多人协作新玩法

我花了三周时间深入探索在 Linux 和 Wayland 环境下实现多鼠标光标的可能性。结果令人惊喜:Wayland 核心协议已深度集成多座位支持,Weston 和 sway 等合成器也能实现多人同时操作同一桌面。无论是结对编程还是多人游戏,这种模式都能让协作变得自然流畅。不过,目前部分图形库和应用的支持仍不完善,我开源了相关工具并标记了待解决的开源项目,期待更多人加入探索。

这种多人计算风格让应用内的协作变得非常自然,无需复杂的同步算法。
  1. ofalkaed

    我一直不太喜欢分体式键盘,但如果每个键盘同时也是一个拥有独立光标的鼠标,我可能会改变看法。培养这种操作技能听起来很有趣。有时候,如果 Thinkpad 的指点杆和触控板能各自拥有独立的光标,我就能把其中一个光标留在某个位置,这也很有用。或者,也许可以像 pushd/popd 那样实现光标堆栈,寄存器机制可能更合适;与其搞虚拟桌面,不如给我一个巨大的桌面,让我能在不同的光标位置之间跳转,切换到光标 3 时,它会保存当前光标的位置并跳转过去。

  2. ben-schaaf

    在长长的注意事项清单上再加一条:这也破坏了 GUI 工具包和应用程序关于“同一时间只有一个窗口处于焦点”的假设:比如 `gtk_application_get_active_window`、`QApplication::activeWindow` 等等。

  3. gorgoiler

    我希望 libinput 能提供指针惯性选项,这样当你停止移动时,指针会滑行一段距离然后逐渐停下,而不是硬生生地停住。我现在只能用触控板,而 Steamdeck 上的这个功能真的很棒,我特别希望我的 Thinkpad 也能有。

    这么一想,Steamdeck 是运行 Wayland 的吗?他们是怎么实现的?

  4. kelnos

    我正在开发一个合成器,从一开始我就在考虑多席位(multi-seat)支持,但我知道有很多地方都假设只有一个席位,所以这类功能对我来说行不通。实际上,支持这个功能的工作量比你想象的要大得多……

  5. solarkraft

    这很酷。我觉得我不应该是唯一一个小时候曾和朋友一起给电脑接上额外鼠标,结果发现还是只有一个光标而感到失望的人。

    像 Teams 这样的屏幕共享解决方案处理多光标的方式,就是让主光标到处乱跳,这虽然能用,但也就那样吧。

    在同一个环境中拥有多个光标,理论上能带来非常有趣的协作体验。想象一下,在一个巨大的表面上,每个人都有自己的工作区(一堆窗口),但你可以无缝地在它们之间切换……

同日更多故事

2026-07-29