diff --git a/js/id/svg/labels.js b/js/id/svg/labels.js index 5c817a712..883147d3e 100644 --- a/js/id/svg/labels.js +++ b/js/id/svg/labels.js @@ -225,11 +225,14 @@ iD.svg.Labels = function(projection) { var rtree = new RTree(), rectangles = {}, - mousePosition; + mousePosition, cacheDimensions; return function drawLabels(surface, graph, entities, filter, dimensions, fullRedraw) { - mousePosition = iD.util.fastMouse(surface.node().parentNode); + if (!mousePosition || dimensions.join(',') !== cacheDimensions) { + mousePosition = iD.util.fastMouse(surface.node().parentNode); + cacheDimensions = dimensions.join(','); + } d3.select(surface.node().parentNode) .on('mousemove.hidelabels', hideOnMouseover);