     for plugin, index in plugins
       plugin.version = @state.latest[plugin.packageName]
       updating[index] = false
+    @checkUpdate(@solveUpdate, false)
     @setState
       updating: updating
       updatingAll: false
   handleUpdateAll: (callback) ->
-    updating = @state.updating
-    toUpdate = []
-    for plugin, index in plugins
-      if semver.lt(plugin.version, @state.latest[plugin.packageName]) && @state.removeStatus[index] == 0
-        updating[index] = true
-        toUpdate.push plugin.packageName
-    npm.load {prefix: "#{PLUGIN_PATH}", registry: mirror[@state.mirror].server}, (err) ->
-      npm.commands.update toUpdate, (er, data) ->
-        callback()
-    @setState
-      updating: updating
-      updatingAll: true
+    if !@props.disabled
+      updating = @state.updating
+      toUpdate = []
+      for plugin, index in plugins
+        if semver.lt(plugin.version, @state.latest[plugin.packageName]) && @state.removeStatus[index] == 0
+          updating[index] = true
+          toUpdate.push plugin.packageName
+      npm.load {prefix: "#{PLUGIN_PATH}", registry: mirror[@state.mirror].server}, (err) ->
+        npm.commands.update toUpdate, (er, data) ->
+          callback()
+      @setState
+        updating: updating
+        updatingAll: true
   handleRemoveComplete: (index) ->
     removeStatus = @state.removeStatus
     removeStatus[index] = 2

    updatingAll: false
    installing: false
    mirror: config.get "packageManager.mirror", 0
  onSelectServer: (state) ->
    config.set "packageManager.mirror", state
    server = mirror[state].server

              content = "#{content} #{child}"
      content = "#{content} #{__ "have newer version. Please update your plugins."}"
      notify content,
        type: 'plugin update'
        title: title
        icon: path.join(ROOT, 'assets', 'img', 'material', '7_big.png')
    @setState
      latest: latest
      checking: false
      isUpdateAvailable: isUpdateAvailable
  checkUpdate: (callback, isfirst) ->
    npm.load {prefix: "#{PLUGIN_PATH}", registry: mirror[@state.mirror].server}, (err) ->
      npm.config.set 'depth', 1
