diff --git a/spec/text-editor-presenter-spec.coffee b/spec/text-editor-presenter-spec.coffee index d47c20df8..dc3aee8f7 100644 --- a/spec/text-editor-presenter-spec.coffee +++ b/spec/text-editor-presenter-spec.coffee @@ -133,7 +133,7 @@ describe "TextEditorPresenter", -> presenter = buildPresenter(contentFrameWidth: 50, baseCharacterWidth: 10) expect(presenter.state.horizontalScrollbar.scrollWidth).toBe 10 * maxLineLength + 1 - expectStateUpdate presenter, -> presenter.setScopedCharWidth(['source.js', 'support.function.js'], 'p', 20) + expectStateUpdate presenter, -> presenter.setScopedCharacterWidth(['source.js', 'support.function.js'], 'p', 20) expect(presenter.state.horizontalScrollbar.scrollWidth).toBe (10 * (maxLineLength - 2)) + (20 * 2) + 1 # 2 of the characters are 20px wide now instead of 10px wide it "updates when ::softWrapped changes on the editor", -> @@ -360,7 +360,7 @@ describe "TextEditorPresenter", -> presenter = buildPresenter(contentFrameWidth: 50, baseCharacterWidth: 10) expect(presenter.state.content.scrollWidth).toBe 10 * maxLineLength + 1 - expectStateUpdate presenter, -> presenter.setScopedCharWidth(['source.js', 'support.function.js'], 'p', 20) + expectStateUpdate presenter, -> presenter.setScopedCharacterWidth(['source.js', 'support.function.js'], 'p', 20) expect(presenter.state.content.scrollWidth).toBe (10 * (maxLineLength - 2)) + (20 * 2) + 1 # 2 of the characters are 20px wide now instead of 10px wide it "updates when ::softWrapped changes on the editor", -> @@ -958,10 +958,10 @@ describe "TextEditorPresenter", -> editor.setCursorBufferPosition([1, 4]) presenter = buildPresenter(explicitHeight: 20) - expectStateUpdate presenter, -> presenter.setScopedCharWidth(['source.js', 'storage.modifier.js'], 'v', 20) + expectStateUpdate presenter, -> presenter.setScopedCharacterWidth(['source.js', 'storage.modifier.js'], 'v', 20) expect(stateForCursor(presenter, 0)).toEqual {top: 1 * 10, left: (3 * 10) + 20, width: 10, height: 10} - expectStateUpdate presenter, -> presenter.setScopedCharWidth(['source.js', 'storage.modifier.js'], 'r', 20) + expectStateUpdate presenter, -> presenter.setScopedCharacterWidth(['source.js', 'storage.modifier.js'], 'r', 20) expect(stateForCursor(presenter, 0)).toEqual {top: 1 * 10, left: (3 * 10) + 20, width: 20, height: 10} it "updates when cursors are added, moved, hidden, shown, or destroyed", -> @@ -1251,7 +1251,7 @@ describe "TextEditorPresenter", -> expectValues stateForSelection(presenter, 0), { regions: [{top: 2 * 10, left: 4 * 10, width: 2 * 10, height: 10}] } - expectStateUpdate presenter, -> presenter.setScopedCharWidth(['source.js', 'keyword.control.js'], 'i', 20) + expectStateUpdate presenter, -> presenter.setScopedCharacterWidth(['source.js', 'keyword.control.js'], 'i', 20) expectValues stateForSelection(presenter, 0), { regions: [{top: 2 * 10, left: 4 * 10, width: 20 + 10, height: 10}] } diff --git a/src/lines-component.coffee b/src/lines-component.coffee index 5a186d424..42c6bd4d4 100644 --- a/src/lines-component.coffee +++ b/src/lines-component.coffee @@ -313,7 +313,7 @@ LinesComponent = React.createClass rangeForMeasurement.setEnd(textNode, i + charLength) charWidth = rangeForMeasurement.getBoundingClientRect().width editor.setScopedCharWidth(scopes, char, charWidth) - @props.presenter.setScopedCharWidth(scopes, char, charWidth) + @props.presenter.setScopedCharacterWidth(scopes, char, charWidth) charIndex += charLength @@ -322,4 +322,4 @@ LinesComponent = React.createClass clearScopedCharWidths: -> @measuredLines.clear() @props.editor.clearScopedCharWidths() - @props.presenter.clearScopedCharWidths() + @props.presenter.clearScopedCharacterWidths() diff --git a/src/text-editor-presenter.coffee b/src/text-editor-presenter.coffee index 48d1596d6..1051be094 100644 --- a/src/text-editor-presenter.coffee +++ b/src/text-editor-presenter.coffee @@ -18,7 +18,7 @@ class TextEditorPresenter @disposables = new CompositeDisposable @emitter = new Emitter - @charWidthsByScope = {} + @characterWidthsByScope = {} @transferMeasurementsToModel() @observeModel() @observeConfig() @@ -556,16 +556,16 @@ class TextEditorPresenter @model.setDefaultCharWidth(baseCharacterWidth) @characterWidthsChanged() - getScopedCharWidth: (scopeNames, char) -> - @getScopedCharWidths(scopeNames)[char] + getScopedCharacterWidth: (scopeNames, char) -> + @getScopedCharacterWidths(scopeNames)[char] - getScopedCharWidths: (scopeNames) -> - scope = @charWidthsByScope + getScopedCharacterWidths: (scopeNames) -> + scope = @characterWidthsByScope for scopeName in scopeNames scope[scopeName] ?= {} scope = scope[scopeName] - scope.charWidths ?= {} - scope.charWidths + scope.characterWidths ?= {} + scope.characterWidths batchCharacterMeasurement: (fn) -> oldChangeCount = @scopedCharacterWidthsChangeCount @@ -574,8 +574,8 @@ class TextEditorPresenter @batchingCharacterMeasurement = false @characterWidthsChanged() if oldChangeCount isnt @scopedCharacterWidthsChangeCount - setScopedCharWidth: (scopeNames, char, width) -> - @getScopedCharWidths(scopeNames)[char] = width + setScopedCharacterWidth: (scopeNames, char, width) -> + @getScopedCharacterWidths(scopeNames)[char] = width @scopedCharacterWidthsChangeCount++ @characterWidthsChanged() unless @batchingCharacterMeasurement @@ -587,8 +587,8 @@ class TextEditorPresenter @updateCursorsState() @updateOverlaysState() - clearScopedCharWidths: -> - @charWidthsByScope = {} + clearScopedCharacterWidths: -> + @characterWidthsByScope = {} pixelPositionForScreenPosition: (screenPosition, clip=true) -> screenPosition = Point.fromObject(screenPosition) @@ -602,7 +602,7 @@ class TextEditorPresenter left = 0 column = 0 for token in @model.tokenizedLineForScreenRow(targetRow).tokens - charWidths = @getScopedCharWidths(token.scopes) + characterWidths = @getScopedCharacterWidths(token.scopes) valueIndex = 0 while valueIndex < token.value.length @@ -617,7 +617,7 @@ class TextEditorPresenter return {top, left} if column is targetColumn - left += charWidths[char] ? baseCharacterWidth unless char is '\0' + left += characterWidths[char] ? baseCharacterWidth unless char is '\0' column += charLength {top, left}