- (if name
- (error "Type number not registered: ~A (~A)" type-number name)
- (error "Invalid type number: ~A" type-number))))
- type))
+ (cond
+ ((and name (type-number-from-glib-name name nil))
+ ;; This is a hack because GdkEvent seems to be registered
+ ;; multiple times
+ (type-from-number (type-number-from-glib-name name)))
+ ((and error name)
+ (error "Type number not registered: ~A (~A)" type-number name))
+ ((and error)
+ (error "Invalid type number: ~A" type-number)))))))