add event propagation control