               if @alwaysOpenWith.getValue()
                 appsController.emit "UpdateDefaultApp", fileExtension, appName
 
-              appManager.openFile nodeView.getData(), appName
+              appManager.openFileWithApplication appName, nodeView.getData()
               modal.destroy()
           Cancel     :
             title    : "Cancel"

        @emit "file.opened", nodeData
        @setBlurState()

  openFile:(nodeView, contextMenuItem)->

    return unless nodeView
    file = nodeView.getData()
    app  = contextMenuItem?.getData().title or null
    @appManager.openFile file, app

  previewFile:(nodeView)->
    {vmName, path} = nodeView.getData()

  cmCodeShare:     (nodeView, contextMenuItem)-> @createCodeShare nodeView
  cmOpenTerminal:  (nodeView, contextMenuItem)-> @openTerminalFromHere nodeView
  cmShowOpenWithModal: (nodeView, contextMenuItem)-> @showOpenWithModal nodeView
  cmOpenFileWithApp: (nodeView, contextMenuItem)-> @openFileWithApp  nodeView, contextMenuItem

  cmOpenFileWithCodeMirror:(nodeView, contextMenuItem)-> @appManager.notify()

