光标形状管理器

此全局对象提供了一种可选的光标图像设置替代方法。这种新方法使用枚举光标,而不是像 wl_pointer.set_cursor 那样使用 wl_surface。

警告!此文件中描述的协议目前处于测试阶段。向后兼容的更改可能会与相应的接口版本提升一起添加。向后不兼容的更改只能通过创建扩展的新主版本来完成。

destroy()
销毁管理器

销毁光标形状管理器。

管理指针设备的光标形状

获取 wl_pointer 对象的 wp_cursor_shape_device_v1。

当指针功能从 wl_seat 中移除时,wp_cursor_shape_device_v1 对象将变得无效(inert)。

管理平板工具设备的光标形状

获取 zwp_tablet_tool_v2 对象的 wp_cursor_shape_device_v1。

当 zwp_tablet_tool_v2 被移除时,wp_cursor_shape_device_v1 对象将变得无效(inert)。


设备的光标形状

此接口允许客户端设置光标形状。

destroy()
销毁光标形状设备

销毁光标形状设备。

设备光标形状保持不变。

参数
类型
描述
serialuint
serial number of the enter event
shapeuint<wp_cursor_shape_device_v1.shape>
将设备光标设置为该形状

将设备光标设置为指定的形状。合成器(compositor)将根据指定的形状更改光标图像。

仅当输入设备焦点位于请求客户端的 surface 之一时,光标才会真正发生变化。如果有的话,之前的光标图像(surface 或形状)将被替换。

"shape" 参数必须是有效的枚举条目,否则会引发 invalid_shape 协议错误。

这类似于 wl_pointer.set_cursor 和 zwp_tablet_tool_v2.set_cursor 请求,但是此请求接受的是一个形状,而不是表面(surface)形式的内容。客户端可以混合使用 set_cursor 和 set_shape 请求。

serial 参数必须与发送到客户端的最新 wl_pointer.enter 或 zwp_tablet_tool_v2.proximity_in 序列号匹配。否则,该请求将被忽略。

参数
描述
default1
默认光标
context_menu2
光标下的对象有可用的上下文菜单
help3
光标下的对象有可用的帮助
pointer4
指示链接或其他交互元素的指针
progress5
进度指示器
wait6
程序正忙,用户应等待
cell7
可以选择一个单元格或一组单元格
crosshair8
简单的十字准星
text9
文本可以被选择
vertical_text10
垂直文本可以被选择
alias11
拖放:将要创建某物的别名/快捷方式
copy12
拖放:将要复制某物
move13
拖放:将要移动某物
no_drop14
拖放:拖动的项目不能在当前光标位置放下
not_allowed15
拖放:请求的动作将不会被执行
grab16
拖放:可以抓取某物
grabbing17
拖放:某物正在被抓取
e_resize18
调整大小:将要移动东边框
n_resize19
调整大小:将要移动北边框
ne_resize20
调整大小:将要移动东北角
nw_resize21
调整大小:将要移动西北角
s_resize22
调整大小:将要移动南边框
se_resize23
调整大小:将要移动东南角
sw_resize24
调整大小:将要移动西南角
w_resize25
调整大小:将要移动西边框
ew_resize26
调整大小:将要移动东西边框
ns_resize27
调整大小:将要移动南北边框
nesw_resize28
调整大小:将要移动东北和西南角
nwse_resize29
调整大小:将要移动西北和东南角
col_resize30
调整大小:项目/列可以水平调整大小
row_resize31
调整大小:项目/行可以垂直调整大小
all_scroll32
某物可以在任何方向滚动
zoom_in33
可以放大某物
zoom_out34
可以缩小某物
dnd_ask起始版本 235
拖放:用户将选择要执行哪个动作(非 CSS 值)
all_resize起始版本 236
调整大小:某物可以在任何方向上移动或调整大小(非 CSS 值)
光标形状

此枚举描述了光标形状。

名称取自 CSS W3C 规范: https://w3c.github.io/csswg-drafts/css-ui/#cursor 并做了一些补充。

请注意,某些光标形状组是相关的: 第一组是拖放(drag-and-drop)光标,用于指示 dnd 操作期间选择的动作。第二组是调整大小的光标,用于指示窗口边框上的调整大小和移动可能性。建议这些组中的形状使用视觉上兼容的图像和隐喻。

error { invalid_shape } 
参数
描述
invalid_shape1
指定的形状值无效

合成器支持

Cage
Cage
0.2.0
COSMIC
COSMIC
1.0.0~beta.8
GameScope
GameScope
3.15.14
Hyprland
Hyprland
0.52.1
Jay
1.12.0
KWin
KWin
6.6
Labwc
Labwc
0.9.2
Louvre
Louvre
2.14.1
Mir
Mir
2.26
Muffin
Muffin
6.6.0
Mutter
Mutter
49.2
niri
niri
25.11
phoc
phoc
0.52
river
river
0.3.13
Sway
Sway
1.11
Treeland
Treeland
0.8.0
Wayfire
Wayfire
0.9.0
Weston
Weston
14.0.2
wp_cursor_shape_manager_v1
x
2
x
1
2
2
1
x
x
x
2
2
1
1
1
1
x
x

Copyright 2018 The Chromium Authors Copyright 2023 Simon Ser

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice (including the next paragraph) shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Footer

© 2026 Wayland Explorer

本网站与 Wayland 官方项目无任何关联。网站所有内容均根据 Wayland 协议 XML 文件自动生成。

本网站使用的 Visual Studio Code - Codicons 遵循 CC BY 4.0 许可。