From f92d2f7f277281ead2985f79d7e271deeaa2bd50 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Tue, 22 Oct 2024 10:28:37 +0200 Subject: [PATCH] Correzione display XML files --- MP.Prog/Components/DiffView.razor | 4 ++-- MP.Prog/Components/DiffView.razor.cs | 27 +++++++++++++++++++-------- 2 files changed, 21 insertions(+), 10 deletions(-) diff --git a/MP.Prog/Components/DiffView.razor b/MP.Prog/Components/DiffView.razor index af2aab1c..f1c3b368 100644 --- a/MP.Prog/Components/DiffView.razor +++ b/MP.Prog/Components/DiffView.razor @@ -31,12 +31,12 @@
-

@((MarkupString)StrFix(oldResult))

+

@StrFix(oldResult)

-

@((MarkupString)StrFix(newResult))

+

@StrFix(newResult)

diff --git a/MP.Prog/Components/DiffView.razor.cs b/MP.Prog/Components/DiffView.razor.cs index 7b9ce7b8..73e490dc 100644 --- a/MP.Prog/Components/DiffView.razor.cs +++ b/MP.Prog/Components/DiffView.razor.cs @@ -4,6 +4,7 @@ using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; +using System.Web; namespace MP.Prog.Components { @@ -77,21 +78,26 @@ namespace MP.Prog.Components StringBuilder sbOld = new StringBuilder(); foreach (var item in diff) { + // se fosse testo vuoto --> metto spazio! + if (string.IsNullOrEmpty(item.text)) + { + item.text = " "; + } switch (item.operation) { case Operation.DELETE: - sbOld.Append($"{item.text}"); + sbOld.Append($"{HttpUtility.HtmlEncode(item.text)}"); numChanges++; break; case Operation.INSERT: - sbNew.Append($"{item.text}"); + sbNew.Append($"{HttpUtility.HtmlEncode(item.text)}"); numChanges++; break; case Operation.EQUAL: - sbNew.Append($"{item.text}"); - sbOld.Append($"{item.text}"); + sbNew.Append($"{HttpUtility.HtmlEncode(item.text)}"); + sbOld.Append($"{HttpUtility.HtmlEncode(item.text)}"); break; default: @@ -99,8 +105,8 @@ namespace MP.Prog.Components } } - newResult = sbNew.ToString().Trim(); - oldResult = sbOld.ToString().Trim(); + newResult = sbNew.ToString(); + oldResult = sbOld.ToString(); var pUpd = Task.Run(async () => { await diffDone.InvokeAsync(numChanges); @@ -118,9 +124,14 @@ namespace MP.Prog.Components #region Private Methods - private string StrFix(string origVal) + private MarkupString StrFix(string origVal) { - return origVal.Replace(" ", " ").Replace(Environment.NewLine, sepDest).Replace("\n", sepDest).Replace("\r", sepDest); + string fixVal = origVal.Trim() + .Replace(" ", "  ") + .Replace(Environment.NewLine, sepDest); + //.Replace("\r", sepDest) + //.Replace("\n", sepDest); + return new MarkupString(fixVal); } #endregion Private Methods