private async Task <BackupMetadata> SaveLastSavedChangesAsync(ITextEditor textEditor) { TextFile snapshot = textEditor.LastSavedSnapshot; StorageFile backupFile; try { backupFile = await SessionUtility.CreateNewBackupFileAsync(textEditor.Id.ToString("N") + "-LastSaved"); await FileSystemUtility.WriteToFile(LineEndingUtility.ApplyLineEnding(snapshot.Content, snapshot.LineEnding), snapshot.Encoding, backupFile); } catch (Exception ex) { LoggingService.LogError($"Failed to save backup file: {ex.Message}"); return(null); } return(new BackupMetadata { BackupFilePath = backupFile.Path, Encoding = snapshot.Encoding, LineEnding = snapshot.LineEnding, DateModified = snapshot.DateModifiedFileTime }); }
private async Task<BackupMetadata> SavePendingChangesAsync(TextEditor textEditor) { StorageFile backupFile; TextFile textFile; try { backupFile = await SessionUtility.CreateNewBackupFileAsync(textEditor.Id.ToString("N") + "-Pending"); textFile = await textEditor.SaveContentToFile(backupFile); } catch { return null; } return new BackupMetadata { BackupFilePath = backupFile.Path, Encoding = textFile.Encoding, LineEnding = textFile.LineEnding, DateModified = textFile.DateModifiedFileTime }; }
private async Task <BackupMetadata> SaveLastSavedChangesAsync(TextEditor textEditor) { TextFile originalSnapshot = textEditor.OriginalSnapshot; StorageFile backupFile; try { backupFile = await SessionUtility.CreateNewBackupFileAsync(textEditor.Id.ToString("N") + "-LastSaved"); await FileSystemUtility.WriteToFile(LineEndingUtility.ApplyLineEnding(originalSnapshot.Content, originalSnapshot.LineEnding), originalSnapshot.Encoding, backupFile); } catch { return(null); } return(new BackupMetadata { BackupFilePath = backupFile.Path, Encoding = originalSnapshot.Encoding, LineEnding = originalSnapshot.LineEnding, DateModified = originalSnapshot.DateModifiedFileTime }); }