Introduced widget#key event.
Reuse widget#key to attach widget's listeners.