func (w *Window) keyHandler(ev termbox.Event) (bool, Windower, Widgeter) {
	if w.focus < 0 || w.focus > len(w.widgets) {
		return false, w.mgr, nil // not used
	}
	return w.widgets[w.focus].KeyHandler(ev), w.mgr, w.widgets[w.focus]
}
func (w *Window) keyHandler(ev termbox.Event) (bool, Windower, Widgeter) {
	if w.focus < 0 || w.focus > len(w.widgets) {
		return false, w.mgr, nil 
	}
	return w.widgets[w.focus].KeyHandler(ev), w.mgr, w.widgets[w.focus]
}
func ( w * Window ) keyHandler ( ev termbox . Event ) ( bool , Windower , Widgeter ) { if w . focus < 0 || w . focus > len ( w . widgets ) { return false , w . mgr , nil // not used } return w . widgets [ w . focus ] . KeyHandler ( ev ) , w . mgr , w . widgets [ w . focus ] }
// keyHandler routes event to proper widget.  This is called from queue context
// so be careful to not use blocking calls.
keyHandler routes event to proper widget . This is called from queue context so be careful to not use blocking calls .