Fixed some long-standing issues with event propagation