Doesn't it make sense to only handle this if active state is changing?