Of course, you are right !
Perhaps some event on variable set
or a before end event...
In an other way, maybe an activity event more specific to activities, because the eventListener is to generic i think ;\
It will help for access to the current activity ;) !
Regards