Use min-width on rendered lines to replace js logic w/ CSS

This commit is contained in:
Nathan Sobo
2012-11-01 11:49:50 -06:00
parent 5f9e248aec
commit 42d0c53a60
2 changed files with 9 additions and 8 deletions

View File

@@ -704,19 +704,18 @@ class Editor extends View
prepareForScrolling: ->
@adjustHeightOfRenderedLines()
@adjustWidthOfRenderedLines()
@adjustMinWidthOfRenderedLines()
adjustHeightOfRenderedLines: ->
heightOfRenderedLines = @lineHeight * @screenLineCount()
@verticalScrollbarContent.height(heightOfRenderedLines)
@renderedLines.css('padding-bottom', heightOfRenderedLines)
adjustWidthOfRenderedLines: ->
width = @charWidth * @maxScreenLineLength()
if width > @scrollView.width()
@renderedLines.width(width)
else
@renderedLines.css('width', '')
adjustMinWidthOfRenderedLines: ->
minWidth = @charWidth * @maxScreenLineLength()
unless @renderedLines.cachedMinWidth == minWidth
@renderedLines.css('min-width', minWidth)
@renderedLines.cachedMinWidth = minWidth
handleScrollHeightChange: ->
scrollHeight = @lineHeight * @screenLineCount()
@@ -784,7 +783,7 @@ class Editor extends View
if @attached
@handleScrollHeightChange() unless newScreenRange.coversSameRows(oldScreenRange)
@adjustWidthOfRenderedLines()
@adjustMinWidthOfRenderedLines()
return if oldScreenRange.start.row > @lastRenderedScreenRow

View File

@@ -78,6 +78,8 @@
display: table;
height: 100%;
width: 100%;
overflow: hidden;
padding-right: 2em;
}
.editor .line span {