Reduce scope of listener, merge with draw func

Partially working now. Draw allows the element to appear briefly, then
it disappears.

The listener's scope is reduced based on a stylistic decision to make
this extension first Facebook-specific before moving out to other
platforms. Generalizing and monitoring all input events kills
performance, especially on huge web apps.