yeah, visibilitychange can probably happen slightly too late