Blinry发布了关于在Linux/Wayland桌面环境中实现多鼠标指针的深度技术调查与解决方案1。研究表明,Wayland核心协议已深度集成多座椅支持,每个输入事件都通过wl_pointer或wl_keyboard连接到相应的wl_seat1。
在桌面合成器中,sway和River对多座椅功能支持最为完善,均包括per-seat窗口焦点功能1。GUI库方面,SDL自v3.3.4(2025年发布)开始支持多座椅功能1,而GTK4事件虽提供get_seat方法可识别座椅来源,但不支持动态座椅添加检测1。应用程序的多座椅支持差异较大,Firefox仅在应用启动时已存在的座椅上响应事件,Chromium则不支持多座椅输入1。此外,wayvnc自v0.8.0(2024年发布)支持为每个连接创建新座椅的--transient-seat功能1。
作者发布了多个工具和补丁库来改进Wayland生态中的多座椅支持,同时提供了配置多个输入设备和远程协作的实践指南1。
A comprehensive investigation into implementing multiple mouse pointers in Linux and Wayland desktop environments has revealed the current state of multi-seat support across the ecosystem 1. The Wayland core protocol includes deep integration of multi-seat functionality, with each input event connected to a wl_pointer or wl_keyboard, which in turn connects to a wl_seat 1.
Desktop compositors show varying levels of support for this feature. Sway and River offer the most comprehensive multi-seat implementations, including per-seat window focus capabilities 1. Meanwhile, SDL has begun supporting multi-seat functionality as of version 3.3.4 released in 2025 1, and wayvnc added a --transient-seat feature in version 0.8.0 (released in 2024) that allows creating new seats for each connection 1.
Application-level support remains inconsistent across the board. GTK4 provides a get_seat method within events to identify the seat source, though it lacks support for detecting dynamically added seats 1. Firefox only responds to events on seats that already exist when the application starts, while Chromium does not support multi-seat input at all 1. The research includes multiple tools and patch libraries aimed at improving multi-seat functionality, along with practical guidance for configuring multiple input devices and enabling remote collaboration 1.
评论
还没有评论,欢迎留下第一条。