diff --git a/internal_packages/search-bar/lib/main.cjsx b/internal_packages/search-bar/lib/main.cjsx
index 608f45cd4..8ece1b4b5 100644
--- a/internal_packages/search-bar/lib/main.cjsx
+++ b/internal_packages/search-bar/lib/main.cjsx
@@ -1,7 +1,7 @@
path = require 'path'
require 'coffee-react/register'
React = require 'react'
-{Actions} = require 'inbox-exports'
+{ComponentRegistry} = require 'inbox-exports'
SearchBar = require './search-bar'
SearchSettingsBar = require './search-settings-bar'
@@ -9,25 +9,11 @@ module.exports =
configDefaults:
showOnRightSide: false
- # The top-level React component itself
- item: null
-
activate: (@state) ->
- @state.attached ?= true
- @_createView() if @state.attached
+ ComponentRegistry.register
+ view: SearchBar
+ name: 'SearchBar'
+ role: 'Global:Toolbar'
deactivate: ->
- React.unmountComponentAtNode(@container)
- @container.remove()
-
- serialize: ->
- ""
-
- _createView: ->
- unless @item?
- @item = document.createElement("div")
- @item.setAttribute("id", "search-bar")
- @item.setAttribute("class", "search-bar")
- atom.workspace.addColumnItem(@item, 'thread-list-column')
- React.render( , @item)
- @item
+ ComponentRegistry.unregister 'SearchBar'
diff --git a/internal_packages/search-bar/lib/search-bar.cjsx b/internal_packages/search-bar/lib/search-bar.cjsx
index 824e6af27..f80cbc6f7 100644
--- a/internal_packages/search-bar/lib/search-bar.cjsx
+++ b/internal_packages/search-bar/lib/search-bar.cjsx
@@ -44,14 +44,16 @@ SearchBar = React.createClass
else
item.label
-