     displayName : 'ProjectSearch-ProjectSearchDisplay'
 
     propTypes :
-        project_id   : rtypes.string
-        current_path : rtypes.string
-
-    shouldComponentUpdate : (nextProps, nextState) ->
-        return nextProps.current_path != @props.current_path or nextProps.project_id != @props.project_id or @state != nextState
-
-    getInitialState : ->
+        project_id         : rtypes.string
+        current_path       : rtypes.string
+        user_input         : rtypes.string
+        search_results     : rtypes.array
+        search_error       : rtypes.string
+        too_many_results   : rtypes.bool
+        command            : rtypes.string
+        most_recent_search : rtypes.string
+        most_recent_path   : rtypes.string
+        actions            : rtypes.object
+
+    getDefaultProps : ->
         user_input         : ''
-        search_results     : undefined
-        search_error       : undefined
         too_many_results   : false
-        command            : undefined
-        most_recent_search : undefined
-        most_recent_path   : undefined
 
     componentWillMount : ->
         if not @checkbox_state?

        most_recent_path : rtypes.string
        project_id       : rtypes.string
        search_error     : rtypes.string

    shouldComponentUpdate : (nextProps) ->
        a = @props
        b = nextProps
        return a.results != b.results                or
            a.too_many_results != b.too_many_results or
            a.project_id != b.project_id             or
            a.search_error != b.search_error         or
            a.most_recent_path != b.most_recent_path

    too_many_results : ->
        if @props.too_many_results

            return <Alert bsStyle='warning'>There were no results for your search</Alert>
        for i, result of @props.results
                <ProjectSearchResultLine
                    key              = {i}
                    filename         = {result.filename}
                    description      = {result.description}
                    most_recent_path = {@props.most_recent_path}
                    actions          = {@props.actions} />

    render : ->
        results_well_styles =
