     # all of the natively-added canvases, as well
     # as the wrapper element, whenever a resize
     # occurs.
-    resize: ->
+    resizeTextMode: ->
+      @resizeAceElement()
+      @aceEditor.resize true
+
+    resizeBlockMode: ->
+      @resizeTextMode()
+      @resizeGutter()
+
       @meltElement.style.left = "#{@paletteElement.offsetWidth}px"
       @meltElement.style.height = "#{@wrapperElement.offsetHeight}px"
       @meltElement.style.width ="#{@wrapperElement.offsetWidth - @paletteWrapper.offsetWidth}px"

      @tree = new model.Segment()
      @tree.start.insert @cursor

      @resize()

      # Now that we've populated everything, immediately re@draw.
      @redrawMain(); @redrawPalette()

      # This stage of ICE editor construction, which is repeated
      # whenever the editor is resized, should adjust the sizes
      # of all the ICE editor componenents to fit the wrapper.
      window.addEventListener 'resize', => @resizeBlockMode()

      # ## Tracker Events
      # We allow binding to the tracker element.
