         drawing: DrawingTask
       tasks: @tasks
       firstTask: @firstTask || Object.keys(@tasks)[0]
-
+      autofocus: false
+    
     @listenTo @decisionTree.el, @decisionTree.LOAD_TASK, (e) =>
       @subjectViewer.setTool null, null
       @subjectViewer.setTaskIndex e.detail.index
       @updateDrawingTask() if e.detail.task.type is 'drawing'
+      
+      unless @decisionTree.autofocus
+        @decisionTree.autofocus = true
+        return
+    
+      if e.detail.index > 0
+        @decisionTree.backButton.focus()
+      else
+        @decisionTree.el.querySelector('input').focus()
 
     @listenTo @decisionTree.el, DrawingTask::SELECT_TOOL, (e) =>
       # Delay so the default is preserved instead of cleared with the LOAD_TASK event.

        Dialog::hide.call this
        setTimeout (=> @destroy()), 600

    prompt.show()
  
  updateDrawingTask: ->
    marks = []
    for {mark} in @subjectViewer.markingSurface.tools


    @listenTo @decisionTree.el, @decisionTree.COMPLETE, =>
      @finishSubject()
      document.querySelector('button[name=readymade-dont-talk]').focus()

    @decisionTreeContainer.append @decisionTree.el
    
