         onShow: ->
             searchInputView = new SearchInputView(@searchState, @searchResults)
             @search.show searchInputView
-            @listenTo searchInputView, 'open', => @updateClasses('search')
+            @listenTo searchInputView, 'open', =>
+                @updateClasses 'search'
+                @_updatePersonalisationButtonClass 'search'
             @browse.show new BrowseButtonView()
         _open: (actionType) ->
             @updateClasses actionType

                    view = null
                    @contents.reset()

            # Update personalisation icon visibility.
            if type in ['browse', 'search', 'details', 'event', 'position']
                $('#personalisation').addClass('hidden')
            else
                $('#personalisation').removeClass('hidden')

            if view?
                @contents.show view, animationType: @getAnimationType(type)

            unless type == 'details'
                # TODO: create unique titles for routes that require it
                app.vent.trigger 'site-title:change', null

        _updatePersonalisationButtonClass: (type) ->
            # Update personalisation icon visibility.
            # Notice: "hidden" class only affects narrow media.
            if type in ['browse', 'search', 'details', 'event', 'position']
                $('#personalisation').addClass 'hidden'
            else
                $('#personalisation').removeClass 'hidden'

    class NavigationHeaderView extends base.SMLayout
        # This view is responsible for rendering the navigation
