Position overlays absolutely

We did so by introducing an `absolute` (optional) parameter in
`pixelPositionForScreenPosition`.
This commit is contained in:
Antonio Scandurra
2015-05-11 10:01:02 +02:00
parent 8aaac870dc
commit a6dab4860c

View File

@@ -375,7 +375,7 @@ class TextEditorPresenter
else
screenPosition = decoration.getMarker().getHeadScreenPosition()
pixelPosition = @pixelPositionForScreenPosition(screenPosition)
pixelPosition = @pixelPositionForScreenPosition(screenPosition, true, absolute: true)
{scrollTop, scrollLeft} = @state.content
@@ -963,7 +963,7 @@ class TextEditorPresenter
hasPixelPositionRequirements: ->
@lineHeight? and @baseCharacterWidth?
pixelPositionForScreenPosition: (screenPosition, clip=true) ->
pixelPositionForScreenPosition: (screenPosition, clip=true, {absolute}={}) ->
screenPosition = Point.fromObject(screenPosition)
screenPosition = @model.clipScreenPosition(screenPosition) if clip
@@ -993,7 +993,8 @@ class TextEditorPresenter
left += characterWidths[char] ? baseCharacterWidth unless char is '\0'
column += charLength
{top: top - @scrollTop, left}
top -= @scrollTop unless absolute
{top, left}
hasPixelRectRequirements: ->
@hasPixelPositionRequirements() and @scrollWidth?