forked from joejulian/gio
io/pointer: [API] make cursor name into a byte
Add most of the common cursors defined by different systems. Normalize cursor names to match CSS. This is API change: some cursor names have changed, and the underlying type is no longer a string. Signed-off-by: Egon Elbre <egonelbre@gmail.com>
This commit is contained in:
+3
-35
@@ -1095,41 +1095,9 @@ func (w *window) SetCursor(name pointer.CursorName) {
|
||||
C.wl_pointer_set_cursor(ptr, w.serial, nil, 0, 0)
|
||||
return
|
||||
}
|
||||
switch name {
|
||||
default:
|
||||
fallthrough
|
||||
case pointer.CursorDefault:
|
||||
name = "left_ptr"
|
||||
case pointer.CursorText:
|
||||
name = "xterm"
|
||||
case pointer.CursorPointer:
|
||||
name = "hand1"
|
||||
case pointer.CursorCrossHair:
|
||||
name = "crosshair"
|
||||
case pointer.CursorRowResize:
|
||||
name = "top_side"
|
||||
case pointer.CursorColResize:
|
||||
name = "left_side"
|
||||
case pointer.CursorGrab:
|
||||
name = "hand1"
|
||||
case pointer.CursorTopLeftResize:
|
||||
name = "top_left_corner"
|
||||
case pointer.CursorTopRightResize:
|
||||
name = "top_right_corner"
|
||||
case pointer.CursorBottomLeftResize:
|
||||
name = "bottom_left_corner"
|
||||
case pointer.CursorBottomRightResize:
|
||||
name = "bottom_right_corner"
|
||||
case pointer.CursorLeftResize:
|
||||
name = "right_side"
|
||||
case pointer.CursorRightResize:
|
||||
name = "left_side"
|
||||
case pointer.CursorTopResize:
|
||||
name = "top_side"
|
||||
case pointer.CursorBottomResize:
|
||||
name = "bottom_side"
|
||||
}
|
||||
cname := C.CString(string(name))
|
||||
|
||||
xcursor := xCursor[name]
|
||||
cname := C.CString(xcursor)
|
||||
defer C.free(unsafe.Pointer(cname))
|
||||
c := C.wl_cursor_theme_get_cursor(w.cursor.theme, cname)
|
||||
if c == nil {
|
||||
|
||||
Reference in New Issue
Block a user