Travis talks about how he's doing widgets in VisualWorks these days, focusing on the keyboard aspect:
As I've wandered far and wide through other widget frameworks, I've learned that a) "MVC" is very popular and b) for every different framework there is a new and unique interpretation of "controller." One of the "different" ways I've been building widgets is without controllers. There are two aspects to deal with in this "controllerless" new world. One is how we deal with mouse interaction, the other keyboard interaction.
Follow the link for Travis' full explanation.