diff --git a/UserInterface/Dialogs/ExecutionDialog.xaml.cs b/UserInterface/Dialogs/ExecutionDialog.xaml.cs index 4d8f4cc..979accf 100644 --- a/UserInterface/Dialogs/ExecutionDialog.xaml.cs +++ b/UserInterface/Dialogs/ExecutionDialog.xaml.cs @@ -101,7 +101,10 @@ private void Process_OutputDataReceived(object sender, DataReceivedEventArgs e) // TODO: Add regex to find "packages x/x" and "...done" to compute the progress } - private void AppendText(string text) => Output.Text += text + Environment.NewLine; + private void AppendText(string text) { + Output.Text += text + Environment.NewLine; + Output.ScrollToEnd(); + } private void WaitforExit() { diff --git a/UserInterface/Port.cs b/UserInterface/Port.cs index b8024ec..14670dd 100644 --- a/UserInterface/Port.cs +++ b/UserInterface/Port.cs @@ -41,8 +41,17 @@ public static List> ParseParagraph(string filepath) else { var lsplit = line.Split(new string[] { ": " }, 2, StringSplitOptions.RemoveEmptyEntries); - paragraph.Add(lsplit[0], lsplit.Length < 2 ? string.Empty : lsplit[1]); - lastkey = lsplit[0]; + var key = lsplit[0]; + var label = lsplit.Length < 2 ? string.Empty : lsplit[1]; + string otherLabel=""; + if (paragraph.TryGetValue(key, out otherLabel)) + { + label = otherLabel + "\n" + label; + paragraph[key] = label; + } + else + paragraph.Add(key,label); + lastkey = key; } } if(paragraph.Count >0) result.Add(paragraph);