From ef09fbbfb2dabf24ce3a907a5237b7b691b44607 Mon Sep 17 00:00:00 2001 From: Ben Ogle Date: Tue, 17 Jun 2014 11:24:27 -0700 Subject: [PATCH] Remove softWrap decoration option --- spec/editor-component-spec.coffee | 25 +++++++++++++++++++++++++ src/gutter-component.coffee | 4 ++-- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/spec/editor-component-spec.coffee b/spec/editor-component-spec.coffee index 0ab75bffc..a687c4610 100644 --- a/spec/editor-component-spec.coffee +++ b/spec/editor-component-spec.coffee @@ -540,6 +540,31 @@ describe "EditorComponent", -> expect(lineNumberHasClass(3, 'someclass')).toBe false expect(lineNumberHasClass(4, 'someclass')).toBe false + describe "when soft wrapping is enabled", -> + beforeEach -> + editor.setText "a line that wraps, ok" + editor.setSoftWrap(true) + node.style.width = 16 * charWidth + 'px' + component.measureScrollView() + + it "applies decoration only to the first row when marker range does not wrap", -> + marker = editor.displayBuffer.markBufferRange([[0, 0], [0, 0]]) + editor.addDecorationForMarker(marker, type: 'gutter', class: 'someclass') + + waitsFor -> not component.decorationChangedImmediate? + runs -> + expect(lineNumberHasClass(0, 'someclass')).toBe true + expect(lineNumberHasClass(1, 'someclass')).toBe false + + it "applies decoration to both rows when marker wraps", -> + marker = editor.displayBuffer.markBufferRange([[0, 0], [0, Infinity]]) + editor.addDecorationForMarker(marker, type: 'gutter', class: 'someclass') + + waitsFor -> not component.decorationChangedImmediate? + runs -> + expect(lineNumberHasClass(0, 'someclass')).toBe true + expect(lineNumberHasClass(1, 'someclass')).toBe true + describe "cursor rendering", -> it "renders the currently visible cursors, translated relative to the scroll position", -> cursor1 = editor.getCursor() diff --git a/src/gutter-component.coffee b/src/gutter-component.coffee index 9c0c514ed..2af7974ba 100644 --- a/src/gutter-component.coffee +++ b/src/gutter-component.coffee @@ -139,7 +139,7 @@ GutterComponent = React.createClass if decorations? for decoration in decorations if Decoration.isType(decoration, 'gutter') - classes += decoration.class + ' ' if not softWrapped or softWrapped and decoration.softWrap + classes += decoration.class + ' ' classes += "foldable " if bufferRow >= 0 and editor.isFoldableAtBufferRow(bufferRow) classes += "line-number line-number-#{bufferRow}" @@ -172,7 +172,7 @@ GutterComponent = React.createClass if decorations? for decoration in decorations - if Decoration.isType(decoration, 'gutter') and not contains(previousDecorations, decoration) and (not softWrapped or softWrapped and decoration.softWrap) + if Decoration.isType(decoration, 'gutter') and not contains(previousDecorations, decoration) node.classList.add(decoration.class) unless @screenRowsByLineNumberId[lineNumberId] is screenRow