added bind-first so we get first shot at keypress