mirror of
https://github.com/kovidgoyal/kitty
synced 2026-07-21 07:55:10 +02:00
Implement decoding of mouse events in Go
This commit is contained in:
@@ -73,12 +73,26 @@ func (self *Loop) handle_csi(raw []byte) error {
|
||||
if ke != nil {
|
||||
return self.handle_key_event(ke)
|
||||
}
|
||||
sz, err := self.ScreenSize()
|
||||
if err == nil {
|
||||
me := MouseEventFromCSI(csi, sz)
|
||||
if me != nil {
|
||||
return self.handle_mouse_event(me)
|
||||
}
|
||||
}
|
||||
if self.OnEscapeCode != nil {
|
||||
return self.OnEscapeCode(CSI, raw)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (self *Loop) handle_mouse_event(ev *MouseEvent) error {
|
||||
if self.OnMouseEvent != nil {
|
||||
return self.OnMouseEvent(ev)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (self *Loop) handle_key_event(ev *KeyEvent) error {
|
||||
if self.OnKeyEvent != nil {
|
||||
err := self.OnKeyEvent(ev)
|
||||
|
||||
Reference in New Issue
Block a user