Merge remote-tracking branch 'origin/master' into making-things-easy

This commit is contained in:
Corey Johnson
2012-09-21 16:37:29 -07:00
43 changed files with 478 additions and 346 deletions

View File

@@ -168,7 +168,10 @@ class Buffer
startPoint = null
endPoint = null
if end == @getLastRow()
startPoint = [start - 1, @lineLengthForRow(start - 1)]
if start > 0
startPoint = [start - 1, @lineLengthForRow(start - 1)]
else
startPoint = [start, 0]
endPoint = [end, @lineLengthForRow(end)]
else
startPoint = [start, 0]

View File

@@ -7,3 +7,4 @@ window.keymap.bindKeys '*'
up: 'move-up'
pagedown: 'page-down'
pageup: 'page-up'
'meta-S' : 'save-all'

View File

@@ -22,9 +22,10 @@ class RootView extends View
@div id: 'vertical', outlet: 'vertical', =>
@div id: 'panes', outlet: 'panes'
@deserialize: ({ projectPath, panesViewState, extensionStates }) ->
@deserialize: ({ projectPath, panesViewState, extensionStates, fontSize }) ->
rootView = new RootView(projectPath, extensionStates: extensionStates, suppressOpen: true)
rootView.setRootPane(rootView.deserializeView(panesViewState)) if panesViewState
rootView.setFontSize(fontSize) if fontSize > 0
rootView
extensions: null
@@ -47,6 +48,7 @@ class RootView extends View
projectPath: @project?.getPath()
panesViewState: @panes.children().view()?.serialize()
extensionStates: @serializeExtensions()
fontSize: @getFontSize()
handleEvents: ->
@on 'toggle-dev-tools', => atom.toggleDevTools()
@@ -64,6 +66,7 @@ class RootView extends View
@on 'increase-font-size', => @setFontSize(@getFontSize() + 1)
@on 'decrease-font-size', => @setFontSize(@getFontSize() - 1)
@on 'focus-next-pane', => @focusNextPane()
@on 'save-all', => @saveAll()
afterAttach: (onDom) ->
@focus() if onDom
@@ -217,3 +220,5 @@ class RootView extends View
catch error
console.error "Failed to load `#{atom.configFilePath}`", error.stack, error
saveAll: ->
editor.save() for editor in @getEditors()

View File

@@ -183,12 +183,17 @@ class Selection
deleteLine: ->
if @isEmpty()
@editSession.buffer.deleteRow(@cursor.getBufferPosition().row)
start = @cursor.getScreenRow()
range = @editSession.bufferRowsForScreenRows(start, start + 1)
if range[1]
@editSession.buffer.deleteRows(range[0], range[1] - 1)
else
@editSession.buffer.deleteRow(range[0])
else
bufferRange = @getBufferRange()
start = bufferRange.start.row
end = bufferRange.end.row
if end isnt @editSession.buffer.getLastRow() and bufferRange.end.column is 0
range = @getBufferRange()
start = range.start.row
end = range.end.row
if end isnt @editSession.buffer.getLastRow() and range.end.column is 0
end--
@editSession.buffer.deleteRows(start, end)