Improved confirm 'Save' dialog with callback