     @emitReplayStopped()
     @emitStatusUpdate @lastEventBeforeReplay
     return
+
+  areSteppingCommandsEnabled: ->
+    return !@autoSteppingEnabled && !@currentStatusEvent.isBlockingStatus()
 
   saveDocument: ->
     textEditor = levelsWorkspaceManager.getActiveTextEditor()

    return

  step: ->
    if @isExecutableInDebuggingMode
      @emitStatusUpdate StatusUpdateEventFactory.createRunning @isReplay
      @socketChannel.sendMessage OutgoingMessageFactory.createStepMessage()
    return

  stepOver: ->
    if @isExecutableInDebuggingMode
      @emitStatusUpdate StatusUpdateEventFactory.createRunning @isReplay
      @socketChannel.sendMessage OutgoingMessageFactory.createStepOverMessage()
    return

    return

  runToNextBreakpoint: ->
    if @isExecutableInDebuggingMode  && @areSteppingCommandsEnabled()
      @emitStatusUpdate StatusUpdateEventFactory.createRunning @isReplay
      @socketChannel.sendMessage OutgoingMessageFactory.createRunToNextBreakpointMessage()
    return

  runToEndOfMethod: ->
    if @isExecutableInDebuggingMode  && @areSteppingCommandsEnabled()
      @emitStatusUpdate StatusUpdateEventFactory.createRunning @isReplay
      @socketChannel.sendMessage OutgoingMessageFactory.createRunToEndOfMethodMessage()
    return
