Fix key event fallthrough

Author Mitja Felicijan <mitja.felicijan@gmail.com> 2026-01-22 09:34:20 +0100
Committer Mitja Felicijan <mitja.felicijan@gmail.com> 2026-01-22 09:34:23 +0100
Commit b3d11e9787ac11c41949dea044b57afdbcc5836a (patch)
-rw-r--r-- kevent.go 25
1 files changed, 25 insertions, 0 deletions
diff --git a/kevent.go b/kevent.go
...
121
		e.triggerHover()
121
		e.triggerHover()
122
	}
122
	}
123
  
123
  
  
124
	// Prevent key event fallthrough.
  
125
	if ev.Key != 0 {
  
126
		return
  
127
	}
  
128
  
124
	switch ev.Ch {
129
	switch ev.Ch {
125
	case 'i':
130
	case 'i':
126
		e.saveState()
131
		e.saveState()
...
640
		e.moveCursor(0, 1)
645
		e.moveCursor(0, 1)
641
	}
646
	}
642
  
647
  
  
648
	// Prevent key event fallthrough.
  
649
	if ev.Key != 0 {
  
650
		return
  
651
	}
  
652
  
643
	switch ev.Ch {
653
	switch ev.Ch {
644
	case Config.LeaderKey:
654
	case Config.LeaderKey:
645
		e.pendingKey = Config.LeaderKey
655
		e.pendingKey = Config.LeaderKey
...
738
		e.moveCursor(0, -1)
748
		e.moveCursor(0, -1)
739
	case termbox.KeyArrowDown:
749
	case termbox.KeyArrowDown:
740
		e.moveCursor(0, 1)
750
		e.moveCursor(0, 1)
  
751
	}
  
752
  
  
753
	// Prevent key event fallthrough.
  
754
	if ev.Key != 0 {
  
755
		return
741
	}
756
	}
742
  
757
  
743
	switch ev.Ch {
758
	switch ev.Ch {
...
839
		e.moveCursor(0, 1)
854
		e.moveCursor(0, 1)
840
	}
855
	}
841
  
856
  
  
857
	// Prevent key event fallthrough.
  
858
	if ev.Key != 0 {
  
859
		return
  
860
	}
  
861
  
842
	switch ev.Ch {
862
	switch ev.Ch {
843
	case Config.LeaderKey:
863
	case Config.LeaderKey:
844
		e.pendingKey = Config.LeaderKey
864
		e.pendingKey = Config.LeaderKey
...
944
		e.mode = ModeNormal
964
		e.mode = ModeNormal
945
		e.pendingConfirm = nil
965
		e.pendingConfirm = nil
946
		e.message = "Cancelled"
966
		e.message = "Cancelled"
  
967
		return
  
968
	}
  
969
  
  
970
	// Prevent key event fallthrough.
  
971
	if ev.Key != 0 {
947
		return
972
		return
948
	}
973
	}
949
  
974
  
...