     @editorElement.classList.add("#{@mode}-mode")
     @editorElement.classList.add(@submode) if @submode?
 
-    @updateNarrowedState()
     @vimState.statusBarManager.update(@mode, @submode)
     @vimState.updateCursorsVisibility()
     @emitter.emit('did-activate-mode', {@mode, @submode})

  # -------------------------
  hasMultiLineSelection: ->
    if @isMode('visual', 'blockwise')
      not @vimState.getLastBlockwiseSelection().isSingleRow?()
    else
      not swrap(@editor.getLastSelection()).isSingleRow()

  updateNarrowedState: ->
    isNarrowed = @isMode('visual') and @hasMultiLineSelection()
    @editorElement.classList.toggle('is-narrowed', isNarrowed)

  isNarrowed: ->
    @editorElement.classList.contains('is-narrowed')

      when 'blockwise'
        @vimState.selectBlockwise() unless swrap(@editor.getLastSelection()).isLinewise()

    @updateNarrowedState()

    new Disposable =>
      @normalizeSelections(preservePreviousSelection: true)
      selection.clear(autoscroll: false) for selection in @editor.getSelections()
      @updateNarrowedState(false)

  preservePreviousSelection: (selection) ->
    properties = if selection.isBlockwise?()
