Use headPixelPosition in overlay decoration rendering

This commit is contained in:
Ben Ogle
2014-11-12 14:43:52 -08:00
parent 2e7e90a8aa
commit b369a1085c
2 changed files with 4 additions and 10 deletions

View File

@@ -7,13 +7,9 @@ class OverlayManager
{editor, overlayDecorations, lineHeightInPixels} = props
existingDecorations = null
for markerId, {isMarkerReversed, startPixelPosition, endPixelPosition, decorations} of overlayDecorations
for markerId, {isMarkerReversed, headPixelPosition, decorations} of overlayDecorations
for decoration in decorations
pixelPosition = if isMarkerReversed
startPixelPosition
else
endPixelPosition
@renderOverlay(editor, decoration, pixelPosition, lineHeightInPixels)
@renderOverlay(editor, decoration, headPixelPosition, lineHeightInPixels)
existingDecorations ?= {}
existingDecorations[decoration.id] = true

View File

@@ -360,16 +360,14 @@ TextEditorComponent = React.createClass
filteredDecorations = {}
for markerId, decorations of decorationsByMarkerId
marker = editor.getMarker(markerId)
screenRange = marker.getScreenRange()
headBufferPosition = marker.getHeadBufferPosition()
if marker.isValid()
for decoration in decorations
if decoration.isType('overlay')
decorationParams = decoration.getProperties()
filteredDecorations[markerId] ?=
id: markerId
isMarkerReversed: marker.isReversed()
startPixelPosition: editor.pixelPositionForScreenPosition(screenRange.start)
endPixelPosition: editor.pixelPositionForScreenPosition(screenRange.end)
headPixelPosition: editor.pixelPositionForScreenPosition(headBufferPosition)
decorations: []
filteredDecorations[markerId].decorations.push decorationParams
filteredDecorations