Switched back to triggerHandler() instead of trigger() to avoid unexpected collection removal

I would like to bring this change into the 2.2.x branch.