     event.preventDefault()
 
   onStylesheetsChanged: (stylesheet) ->
-    # Only update when the scrollbar is changed
-    return unless @containsScrollbarSelector(stylesheet)
-
-    # Believe it or not, proper handling of changes to scrollbar styles requires
-    # three DOM updates.
-
-    # Scrollbar style changes won't apply to scrollbars that are already
-    # visible, so first we need to hide scrollbars so we can redisplay them and
-    # force Chromium to apply updates.
-    @refreshingScrollbars = true
-    @requestUpdate()
-
-    # Next, we display only the scrollbar corner so we can measure the new
-    # scrollbar dimensions. The ::measuringScrollbars property will be set back
-    # to false after the scrollbars are measured.
-    @measuringScrollbars = true
-    @requestUpdate()
-
-    # Finally, we restore the scrollbars based on the newly-measured dimensions
-    # if the editor's content and dimensions require them to be visible.
-    @requestUpdate()
+    @refreshScrollbars() if @containsScrollbarSelector(stylesheet)
 
   containsScrollbarSelector: (stylesheet) ->
     for rule in stylesheet.cssRules
       if rule.selectorText?.indexOf('scrollbar') > -1
         return true
     false
+
+  refreshScrollbars: ->
+    # Believe it or not, proper handling of changes to scrollbar styles requires
+    # three DOM updates.
+
+    # Scrollbar style changes won't apply to scrollbars that are already
+    # visible, so first we need to hide scrollbars so we can redisplay them and
+    # force Chromium to apply updates.
+    @refreshingScrollbars = true
+    @requestUpdate()
+
+    # Next, we display only the scrollbar corner so we can measure the new
+    # scrollbar dimensions. The ::measuringScrollbars property will be set back
+    # to false after the scrollbars are measured.
+    @measuringScrollbars = true
+    @requestUpdate()
+
+    # Finally, we restore the scrollbars based on the newly-measured dimensions
+    # if the editor's content and dimensions require them to be visible.
+    @requestUpdate()
 
   clearPreservedRowRange: ->
     @preservedRowRange = null

    @listenForCommands()
    @measureScrollbars()
    @subscribe atom.themes, 'stylesheet-added stylsheet-removed', @onStylesheetsChanged
    @props.editor.setVisible(true)
    @requestUpdate()


React = require 'react'
{div, span} = require 'reactionary'
{debounce} = require 'underscore-plus'
scrollbarStyle = require 'scrollbar-style'

GutterComponent = require './gutter-component'
EditorScrollViewComponent = require './editor-scroll-view-component'
