Skip to content

Commit 2ba5ddb

Browse files
committed
Expose pixel coordinates of hover event data and fire hover events even if near trace
1 parent a981ca5 commit 2ba5ddb

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

src/components/fx/hover.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,9 @@ exports.loneHover = function loneHover(hoverItems, opts) {
167167
y1: y1 + gTop
168168
};
169169

170+
eventData.xPixel = (_x0 + _x1) / 2;
171+
eventData.yPixel = (_y0 + _y1) / 2;
172+
170173
if (opts.inOut_bbox) {
171174
opts.inOut_bbox.push(eventData.bbox);
172175
}
@@ -894,6 +897,9 @@ function _hover(gd, evt, subplot, noHoverEvent, eventTarget) {
894897
y0: y0 + gTop,
895898
y1: y1 + gTop
896899
};
900+
901+
eventData.xPixel = (_x0 + _x1) / 2;
902+
eventData.yPixel = (_y0 + _y1) / 2;
897903
}
898904

899905
pt.eventData = [eventData];
@@ -931,9 +937,10 @@ function _hover(gd, evt, subplot, noHoverEvent, eventTarget) {
931937
}
932938

933939
// don't emit events if called manually
934-
if (!eventTarget || noHoverEvent || !hoverChanged(gd, evt, oldhoverdata)) return;
940+
var _hoverChanged = hoverChanged(gd, evt, oldhoverdata);
941+
if (!eventTarget || noHoverEvent || (!_hoverChanged && !fullLayout.hoveranywhere)) return;
935942

936-
if (oldhoverdata) {
943+
if (oldhoverdata && _hoverChanged) {
937944
gd.emit('plotly_unhover', {
938945
event: evt,
939946
points: oldhoverdata

0 commit comments

Comments
 (0)