aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS_TheReturn/TerminalTextWriter.cs
diff options
context:
space:
mode:
authorMichael <[email protected]>2017-01-21 16:23:10 -0500
committerMichael <[email protected]>2017-01-21 16:23:10 -0500
commita531cefa00923cc89fe94750bb1b4af12a50df93 (patch)
tree7c56b04db83b6d21351fff375e4311a264f16c12 /ShiftOS_TheReturn/TerminalTextWriter.cs
parent5c9629c4c61d823dfc49693355072b38c09ffb7a (diff)
downloadshiftos_thereturn-a531cefa00923cc89fe94750bb1b4af12a50df93.tar.gz
shiftos_thereturn-a531cefa00923cc89fe94750bb1b4af12a50df93.tar.bz2
shiftos_thereturn-a531cefa00923cc89fe94750bb1b4af12a50df93.zip
Terminal remote control!
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();
}));
+ }
}