Change: improve controller process

call method at once then fires all events