Merge branch 'fold-simplification' of github.com:github/atom into fold-simplification

This commit is contained in:
Corey Johnson
2012-05-21 15:01:23 -07:00
2 changed files with 22 additions and 33 deletions

View File

@@ -584,18 +584,10 @@ describe "Editor", ->
describe "when there are folds", ->
it "skips line numbers", ->
editor.createFold([[3, 10], [5, 1]])
editor.createFold(3, 5)
expect(editor.gutter.find('.line-number:eq(3)').text()).toBe '4'
expect(editor.gutter.find('.line-number:eq(4)').text()).toBe '7'
describe "when there is a fold on the last screen line of a wrapped line", ->
it "renders line numbers correctly when the fold is destroyed (regression)", ->
setEditorHeightInLines(editor, 20)
editor.setMaxLineLength(50)
fold = editor.createFold([[3, 52], [3, 56]])
fold.destroy()
expect(editor.gutter.find('.line-number:last').text()).toBe '13'
describe "when the scrollView is scrolled to the right", ->
it "adds a drop shadow to the gutter", ->
editor.attachToDom()
@@ -905,46 +897,50 @@ describe "Editor", ->
beforeEach ->
setEditorWidthInChars(editor, 50)
editor.setSoftWrap(true)
editor.createFold(new Range([3, 3], [3, 7]))
editor.createFold(2, 3)
describe "when it is a single click", ->
it "re-positions the cursor from the clicked screen position to the corresponding buffer position", ->
expect(editor.getCursorScreenPosition()).toEqual(row: 0, column: 0)
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [4, 7])
expect(editor.getCursorBufferPosition()).toEqual(row: 3, column: 58)
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [9, 0])
expect(editor.getCursorBufferPosition()).toEqual(row: 8, column: 11)
describe "when it is a double click", ->
it "selects the word under the cursor", ->
expect(editor.getCursorScreenPosition()).toEqual(row: 0, column: 0)
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [4, 3], originalEvent: {detail: 1})
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [9, 0], originalEvent: {detail: 1})
editor.visibleLines.trigger 'mouseup'
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [4, 3], originalEvent: {detail: 2})
expect(editor.getSelectedText()).toBe "right"
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [9, 0], originalEvent: {detail: 2})
expect(editor.getSelectedText()).toBe "sort"
describe "when it is clicked more then twice (triple, quadruple, etc...)", ->
it "selects the line under the cursor", ->
expect(editor.getCursorScreenPosition()).toEqual(row: 0, column: 0)
# Triple click
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [4, 3], originalEvent: {detail: 1})
point = [9, 3]
editor.visibleLines.trigger mousedownEvent(editor: editor, point: point, originalEvent: {detail: 1})
editor.visibleLines.trigger 'mouseup'
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [4, 3], originalEvent: {detail: 2})
editor.visibleLines.trigger mousedownEvent(editor: editor, point: point, originalEvent: {detail: 2})
editor.visibleLines.trigger 'mouseup'
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [4, 3], originalEvent: {detail: 3})
editor.visibleLines.trigger mousedownEvent(editor: editor, point: point, originalEvent: {detail: 3})
editor.visibleLines.trigger 'mouseup'
expect(editor.getSelectedText()).toBe " var pivot = items.shift(), current, left = [], right = [];"
expect(editor.getSelectedText()).toBe " return sort(left).concat(pivot).concat(sort(right));"
editor.logLines()
# Quad click
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [8, 3], originalEvent: {detail: 1})
point = [12, 3]
editor.visibleLines.trigger mousedownEvent(editor: editor, point: point, originalEvent: {detail: 1})
editor.visibleLines.trigger 'mouseup'
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [8, 3], originalEvent: {detail: 2})
editor.visibleLines.trigger mousedownEvent(editor: editor, point: point, originalEvent: {detail: 2})
editor.visibleLines.trigger 'mouseup'
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [8, 3], originalEvent: {detail: 3})
editor.visibleLines.trigger mousedownEvent(editor: editor, point: point, originalEvent: {detail: 3})
editor.visibleLines.trigger 'mouseup'
editor.visibleLines.trigger mousedownEvent(editor: editor, point: [8, 3], originalEvent: {detail: 4})
editor.visibleLines.trigger mousedownEvent(editor: editor, point: point, originalEvent: {detail: 4})
editor.visibleLines.trigger 'mouseup'
expect(editor.getSelectedText()).toBe " current < pivot ? left.push(current) : right.push(current);"
expect(editor.getSelectedText()).toBe " return sort(Array.apply(this, arguments));"
describe "when soft-wrap is disabled", ->
describe "when it is a single click", ->
@@ -1184,13 +1180,6 @@ describe "Editor", ->
editor.insertText("\n")
expect(editor.buffer.lineForRow(2)).toEqual(" ")
describe "when a newline is inserted following a fold placeholder", ->
it "indents cursor based on the indentation of previous buffer line", ->
editor.createFold([[1, 10], [1, 30]])
editor.setCursorBufferPosition([1, 30])
editor.insertText("\n")
expect(editor.buffer.lineForRow(2)).toEqual(" ")
describe "when text beginning with a newline is inserted", ->
it "indents cursor based on the indentation of previous buffer line", ->
editor.setCursorBufferPosition([4, 29])

View File

@@ -70,8 +70,8 @@ color:#D2A8A1;
}
.fold {
background-color: #AC885B;
border-color: #F8F8F8;
background-color: #52412C;
color: #969696;
}
.support.function {