make sure button updates to correct state