use activate hook rather than the private enter