mirror of
https://github.com/atom/atom.git
synced 2026-04-28 03:01:47 -04:00
Use headPixelPosition in overlay decoration rendering
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user