code: func (c *Checkbox) InputHandler() func(event *tcell.EventKey, setFocus func(p Primitive)) {
  	return c.WrapInputHandler(func(event *tcell.EventKey, setFocus func(p Primitive)) {
  		// Process key event.
  		switch key := event.Key(); key {
  		case tcell.KeyRune, tcell.KeyEnter: // Check.
  			if key == tcell.KeyRune && event.Rune() != ' ' {
  				break
  			}
  			c.checked = !c.checked
  			if c.changed != nil {
  				c.changed(c.checked)
  			}
  		case tcell.KeyTab, tcell.KeyBacktab, tcell.KeyEscape: // We're done.
  			if c.done != nil {
  				c.done(key)
  			}
  			if c.finished != nil {
  				c.finished(key)
  			}
  		}
  	})
  }
docs: // InputHandler returns the handler for this primitive.