Index: trunk/Mars/mbase/MStatusDisplay.cc
===================================================================
--- trunk/Mars/mbase/MStatusDisplay.cc	(revision 19345)
+++ trunk/Mars/mbase/MStatusDisplay.cc	(revision 19358)
@@ -774,4 +774,6 @@
     AddStatusBar();
 
+    BindKey(this, gVirtualX->KeysymToKeycode(' '), 0);
+
     //
     // set the smallest and biggest size of the Main frame
@@ -3550,4 +3552,14 @@
 }
 
+Bool_t MStatusDisplay::HandleKey(Event_t *event)
+{
+    if (event->fType==kGKeyPress &&
+        event->fCode==gVirtualX->KeysymToKeycode(' ') &&
+        fStatus==(Status_t)kLoopPause)
+        fStatus = (Status_t)kLoopStep;
+
+    return kTRUE;
+}
+
 Bool_t MStatusDisplay::HandleEvent(Event_t *event)
 {
Index: trunk/Mars/mbase/MStatusDisplay.h
===================================================================
--- trunk/Mars/mbase/MStatusDisplay.h	(revision 19345)
+++ trunk/Mars/mbase/MStatusDisplay.h	(revision 19358)
@@ -308,4 +308,5 @@
      void EventInfo(Int_t event, Int_t px, Int_t py, TObject *selected);
      Bool_t HandleEvent(Event_t *event);
+     Bool_t HandleKey(Event_t *event);
 
      // Public helper functions
