mirror of
https://github.com/atom/atom.git
synced 2026-01-23 13:58:08 -05:00
Delegate get/setFirstVisibleScreenColumn from the model to the component
This commit is contained in:
committed by
Antonio Scandurra
parent
4f52637518
commit
eb7cdf2a34
@@ -2511,6 +2511,19 @@ describe('TextEditorComponent', () => {
|
||||
editor.setFirstVisibleScreenRow(11)
|
||||
expect(component.getFirstVisibleRow()).toBe(9)
|
||||
})
|
||||
|
||||
it('delegates setFirstVisibleScreenColumn and getFirstVisibleScreenColumn to the component', async () => {
|
||||
const {component, element, editor} = buildComponent({rowsPerTile: 3, autoHeight: false})
|
||||
element.style.width = 30 * component.getBaseCharacterWidth() + 'px'
|
||||
await component.getNextUpdatePromise()
|
||||
|
||||
expect(editor.getFirstVisibleScreenColumn()).toBe(0)
|
||||
component.setScrollLeft(5.5 * component.getBaseCharacterWidth())
|
||||
expect(editor.getFirstVisibleScreenColumn()).toBe(5)
|
||||
|
||||
editor.setFirstVisibleScreenColumn(12)
|
||||
expect(component.getScrollLeft()).toBe(Math.round(12 * component.getBaseCharacterWidth()))
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
@@ -2325,6 +2325,14 @@ class TextEditorComponent {
|
||||
)
|
||||
}
|
||||
|
||||
getFirstVisibleColumn () {
|
||||
return Math.floor(this.getScrollLeft() / this.getBaseCharacterWidth())
|
||||
}
|
||||
|
||||
setFirstVisibleColumn (column) {
|
||||
this.setScrollLeft(column * this.getBaseCharacterWidth())
|
||||
}
|
||||
|
||||
getVisibleTileCount () {
|
||||
return Math.floor((this.getLastVisibleRow() - this.getFirstVisibleRow()) / this.getRowsPerTile()) + 2
|
||||
}
|
||||
|
||||
@@ -3681,8 +3681,11 @@ class TextEditor extends Model
|
||||
getVisibleRowRange: ->
|
||||
[@getFirstVisibleScreenRow(), @getLastVisibleScreenRow()]
|
||||
|
||||
setFirstVisibleScreenColumn: (@firstVisibleScreenColumn) ->
|
||||
getFirstVisibleScreenColumn: -> @firstVisibleScreenColumn
|
||||
setFirstVisibleScreenColumn: (column) ->
|
||||
@getElement().component.setFirstVisibleColumn(column)
|
||||
|
||||
getFirstVisibleScreenColumn: ->
|
||||
@getElement().component.getFirstVisibleColumn()
|
||||
|
||||
getScrollTop: ->
|
||||
Grim.deprecate("This is now a view method. Call TextEditorElement::getScrollTop instead.")
|
||||
|
||||
Reference in New Issue
Block a user