Only dispatch on real state change