We have a long sync operation in our program that shows a progress bar and gives the user an option to cancel. When they click they cancel button, they get a confirm dialog saying "Are you sure you want to cancel the sync?". Currently, while that dialog is on the screen, the sync keeps on running - it doesn't actually stop the sync until they click "Confirm".
What's the best approach for this situation? On the one hand it looks a bit strange for the sync to run, on the other, it wastes time to actually pause it.
- Pause the sync while the dialog is on the screen
- Keep the sync running but freeze the progress bar so it "looks paused"
- Keep the sync running and let the progress bar run