The way it was would actually cause a bug in some cases, I believe -- with an event firing twice.

I will look at this again, though.