It is a normal textbox with some extra boilerplate code. Having this in a separate widget allows the notification to be defined from rc.lua without a ton of beautiful options and connect_signal.
This widget allows to use the actions without all the boilerplate code associated with managing a list.