Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Karlaš <david.karlas@xamarin.com>2015-01-28 02:55:21 +0300
committerDavid Karlaš <david.karlas@xamarin.com>2015-01-28 02:55:21 +0300
commit32e0b96455fa7b4adf361058ebdd32c1fd6e6e27 (patch)
treea345e00844dfc4f6d85ec7698e373f2c3903a4a9 /main/src/addins/MonoDevelop.Debugger
parentc8b2b1ceeb856e07aa3cc946bfc6b4549171eaab (diff)
[Debugger] Immediate console is readonly if debugee is not paused
User can type text(commands) only when debugee is paused(breakpoint, paused, stepping, exception...)
Diffstat (limited to 'main/src/addins/MonoDevelop.Debugger')
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebuggerConsoleView.cs10
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ImmediatePad.cs22
2 files changed, 32 insertions, 0 deletions
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebuggerConsoleView.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebuggerConsoleView.cs
index 6038296e67..31e929b165 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebuggerConsoleView.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebuggerConsoleView.cs
@@ -54,6 +54,16 @@ namespace MonoDevelop.Debugger
CompletionWindowManager.WindowClosed += OnCompletionWindowClosed;
}
+ public bool Editable {
+ get {
+ return TextView.Editable;
+ }
+ set {
+ TextView.CursorVisible = value;
+ TextView.Editable = value;
+ }
+ }
+
static bool IsCompletionChar (char c)
{
return (char.IsLetterOrDigit (c) || char.IsPunctuation (c) || char.IsSymbol (c) || char.IsWhiteSpace (c));
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ImmediatePad.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ImmediatePad.cs
index 8a617b6b1c..0902c437eb 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ImmediatePad.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ImmediatePad.cs
@@ -48,6 +48,10 @@ namespace MonoDevelop.Debugger
view.ConsoleInput += OnViewConsoleInput;
view.ShadowType = Gtk.ShadowType.None;
view.ShowAll ();
+ view.Editable = DebuggingService.IsPaused;
+ DebuggingService.PausedEvent += DebuggerPaused;
+ DebuggingService.ResumedEvent += DebuggerResumed;
+ DebuggingService.StoppedEvent += DebuggerStopped;
}
void OnViewConsoleInput (object sender, ConsoleInputEventArgs e)
@@ -262,6 +266,24 @@ namespace MonoDevelop.Debugger
public void Dispose ()
{
+ DebuggingService.PausedEvent -= DebuggerPaused;
+ DebuggingService.ResumedEvent -= DebuggerResumed;
+ DebuggingService.StoppedEvent -= DebuggerStopped;
+ }
+
+ void DebuggerResumed (object sender, EventArgs e)
+ {
+ view.Editable = false;
+ }
+
+ void DebuggerPaused (object sender, EventArgs e)
+ {
+ view.Editable = true;
+ }
+
+ void DebuggerStopped (object sender, EventArgs e)
+ {
+ view.Editable = false;
}
}
}