do we ever call this method with dispatchEvents false? if not i think we should not have that parameter. we can refactor later if we actually need it.