about summary refs log tree commit diff stats
path: root/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'widgets')
-rw-r--r--widgets/terminal.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/widgets/terminal.go b/widgets/terminal.go
index 63c105f..92736d5 100644
--- a/widgets/terminal.go
+++ b/widgets/terminal.go
@@ -104,6 +104,7 @@ type Terminal struct {
 	vterm       *vterm.VTerm
 
 	OnClose func(err error)
+	OnEvent func(event tcell.Event) bool
 	OnStart func()
 	OnTitle func(title string)
 }
@@ -354,6 +355,11 @@ func convertMods(mods tcell.ModMask) vterm.Modifier {
 }
 
 func (term *Terminal) Event(event tcell.Event) bool {
+	if term.OnEvent != nil {
+		if term.OnEvent(event) {
+			return true
+		}
+	}
 	if term.closed {
 		return false
 	}