From 36f5262f407f3070becef34d28c884433c1ab354 Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Thu, 16 Mar 2017 21:48:07 -0600 Subject: [PATCH] Honor the isLineNumberGutterVisible option --- spec/text-editor-component-spec.js | 6 ++++++ src/text-editor-component.js | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/spec/text-editor-component-spec.js b/spec/text-editor-component-spec.js index 230cfd399..a842c2161 100644 --- a/spec/text-editor-component-spec.js +++ b/spec/text-editor-component-spec.js @@ -257,6 +257,11 @@ describe('TextEditorComponent', () => { expect(element.offsetHeight).toBeGreaterThan(initialHeight) }) + it('supports the isLineNumberGutterVisible parameter', () => { + const {component, element, editor} = buildComponent({lineNumberGutterVisible: false}) + expect(element.querySelector('.line-number')).toBe(null) + }) + describe('mini editors', () => { it('adds the mini attribute', () => { const {element, editor} = buildComponent({mini: true}) @@ -1351,6 +1356,7 @@ function buildComponent (params = {}) { if (params.mini != null) editorParams.mini = params.mini if (params.autoHeight != null) editorParams.autoHeight = params.autoHeight if (params.autoWidth != null) editorParams.autoWidth = params.autoWidth + if (params.lineNumberGutterVisible != null) editorParams.lineNumberGutterVisible = params.lineNumberGutterVisible const editor = new TextEditor(editorParams) const component = new TextEditorComponent({ model: editor, diff --git a/src/text-editor-component.js b/src/text-editor-component.js index 547c28861..8ea01dce7 100644 --- a/src/text-editor-component.js +++ b/src/text-editor-component.js @@ -240,11 +240,14 @@ class TextEditorComponent { } renderLineNumberGutter () { + const model = this.getModel() + + if (!model.isLineNumberGutterVisible()) return null + if (this.currentFrameLineNumberGutterProps) { return $(LineNumberGutterComponent, this.currentFrameLineNumberGutterProps) } - const model = this.getModel() const maxLineNumberDigits = Math.max(2, model.getLineCount().toString().length) if (this.measurements) {