           </TabContentsUnion>
         </div>
         <div className="no-scroll">
-          <Nav bsStyle="tabs" activeKey={@state.pluginKey} onSelect={@handleSelectPlugin}>
-            <NavDropdown id='plugin-dropdown' key={-1} eventKey={-1} pullRight open={@state.dropdownOpen} onToggle={@handleToggleDropdown}
-                         title={plugin?.displayName || <span><FontAwesome name='sitemap' />{__ ' Plugins'}</span>}>
+          <Nav bsStyle="tabs" onSelect={@handleSelectDropdown}>
+            <NavDropdown id='plugin-dropdown' pullRight
+              title={plugin?.displayName || defaultPluginTitle}>
             {
               @state.plugins.map (plugin, index) =>
                 <MenuItem key={plugin.name} eventKey={plugin.name} onSelect={plugin.handleClick}>

        key: key
        pluginKey: key
  handleCtrlOrCmdTabKeyDown: ->
    @handleSelect 0
  handleCtrlOrCmdNumberKeyDown: (num) ->
    @refs.pluginTabUnion.setNewKey @state.plugins[num-3]?.name
    if num <= 2 + @state.tabbedPlugins.length
      @handleSelect num - 1
  handleShiftTabKeyDown: ->
    @refs.pluginTabUnion.setTabOffset -1
    next = if @state.key? then (@state.key + @state.tabbedPlugins.length) % (1 + @state.tabbedPlugins.length) else @state.tabbedPlugins.length
    @handleSelect next
  handleTabKeyDown: ->
    @refs.pluginTabUnion.setTabOffset 1
    next = if @state.key? then (@state.key + 1) % (1 + @state.tabbedPlugins.length) else 1
    @handleSelect next
  handleKeyDown: ->
    return if @listener?
    @listener = true

  render: ->
    activePluginName = @state.activePluginName || @state.plugins[0]?.name
    plugin = @state.plugins.find (p) => p.name == activePluginName
    defaultPluginTitle = <span><FontAwesome name='sitemap' />{__ ' Plugins'}</span>
    defaultPluginContents = 
      <MenuItem key={1002} disabled>
        {window.i18n.setting.__ "Install plugins in settings"}
      </MenuItem>
    if !@state.doubleTabbed
      <div>
        <Nav bsStyle="tabs" activeKey={@state.key} id="top-nav">
