 
     cursors = cursorsToShow = @editor.getCursors()
     if submode is 'blockwise'
-      cursorsToShow = @vimState.blockwiseSelections.map (bs) -> bs.getHead().cursor
+      cursorsToShow = @vimState.getBlockwiseSelections.map (bs) -> bs.getHead().cursor
+    @subscriptions.add(@updateCursorStyle({submode, cursors, cursorsToShow})...)
 
+  updateCursorStyle: ({submode, cursors, cursorsToShow}) ->
     for cursor in cursors
       if cursor in cursorsToShow
         cursor.setVisible(true) unless cursor.isVisible()

    # But corresponding cursorsComponent(HTML element) is added in sync.
    # So to modify style of cursorsComponent, we have to make sure corresponding cursorsComponent
    # is available by component in sync to model.
    @editorElement.component.updateSync()

    for cursor in cursorsToShow
      @subscriptions.add setStyleOffset(cursor, {submode, @editorElement})

module.exports = CursorStyleManager

      @refresh()

  destroy: ->
    @subscriptions?.dispose()
    @lineHeightObserver.dispose()
    {@subscriptions, @lineHeightObserver} = {}

  refresh: ->
    return if isSpecMode
    {submode} = @vimState
    @subscriptions?.dispose()
    @subscriptions = new CompositeDisposable
