aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS_TheReturn/TerminalTextWriter.cs
diff options
context:
space:
mode:
Diffstat (limited to 'ShiftOS_TheReturn/TerminalTextWriter.cs')
-rw-r--r--ShiftOS_TheReturn/TerminalTextWriter.cs44
1 files changed, 38 insertions, 6 deletions
diff --git a/ShiftOS_TheReturn/TerminalTextWriter.cs b/ShiftOS_TheReturn/TerminalTextWriter.cs
index 78959d5..bc242a9 100644
--- a/ShiftOS_TheReturn/TerminalTextWriter.cs
+++ b/ShiftOS_TheReturn/TerminalTextWriter.cs
@@ -65,20 +65,41 @@ namespace ShiftOS.Engine
public override void Write(char value)
{
- Desktop.InvokeOnWorkerThread(new Action(() =>
+ if (TerminalBackend.IsForwardingConsoleWrites)
{
- UnderlyingControl.Write(value.ToString());
- select();
- }));
+ ServerManager.SendMessage("write", $@"{{
+ guid: ""{TerminalBackend.ForwardGUID}"",
+ text: ""{value}""
+}}");
+ }
+ else
+ {
+ Desktop.InvokeOnWorkerThread(new Action(() =>
+ {
+ UnderlyingControl.Write(value.ToString());
+ select();
+ }));
+ }
}
public override void WriteLine(string value)
{
- Desktop.InvokeOnWorkerThread(new Action(() =>
+ if (TerminalBackend.IsForwardingConsoleWrites)
+ {
+ ServerManager.SendMessage("write", $@"{{
+ guid: ""{TerminalBackend.ForwardGUID}"",
+ text: ""{value + Environment.NewLine}""
+}}");
+ }
+ else
+ {
+
+ Desktop.InvokeOnWorkerThread(new Action(() =>
{
UnderlyingControl.WriteLine(value);
select();
}));
+ }
}
public void SetLastText()
@@ -87,11 +108,22 @@ namespace ShiftOS.Engine
public override void Write(string value)
{
- Desktop.InvokeOnWorkerThread(new Action(() =>
+ if (TerminalBackend.IsForwardingConsoleWrites)
+ {
+ ServerManager.SendMessage("write", $@"{{
+ guid: ""{TerminalBackend.ForwardGUID}"",
+ text: ""{value}""
+}}");
+ }
+ else
+ {
+
+ Desktop.InvokeOnWorkerThread(new Action(() =>
{
UnderlyingControl.Write(value.ToString());
select();
}));
+ }
}