Usually, you can just force a resync instead. Refresh button is needed for the situations when your application doesn't know its state is wrong, but the user does - which does happen whenever your app is displaying the state of a shared resource it doesn't own, like files on disk.