X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=tests%2Finteraction.js;h=6ce65a8553e9e5999c5c13295852b502acd613f0;hb=c4c10db644336a08b581e2efdb3ad75b950c905c;hp=279cb8f61e732635a94734e3bdabfaede274b410;hpb=9d10bca392d2da90786acb16e318c0017063b36a;p=dygraphs.git diff --git a/tests/interaction.js b/tests/interaction.js index 279cb8f..6ce65a8 100644 --- a/tests/interaction.js +++ b/tests/interaction.js @@ -1,4 +1,6 @@ - +// Code for a variety of interaction models. Used in interaction.html, but split out from +// that file so they can be tested in isolation. +// function downV3(event, g, context) { context.initializeMouseDown(event, g, context); if (event.altKey || event.shiftKey) { @@ -60,6 +62,12 @@ function offsetToPercentage(g, offsetX, offsetY) { function dblClickV3(event, g, context) { // Reducing by 20% makes it 80% the original size, which means // to restore to original size it must grow by 25% + + if (!(event.offsetX && event.offsetY)){ + event.offsetX = event.layerX - event.target.offsetLeft; + event.offsetY = event.layerY - event.target.offsetTop; + } + var percentages = offsetToPercentage(g, event.offsetX, event.offsetY); var xPct = percentages[0]; var yPct = percentages[1]; @@ -75,7 +83,8 @@ var lastClickedGraph = null; function clickV3(event, g, context) { lastClickedGraph = g; - Dygraph.cancelEvent(event); + event.preventDefault(); + event.stopPropagation(); } function scrollV3(event, g, context) { @@ -87,12 +96,18 @@ function scrollV3(event, g, context) { // that verbatim, it would be a 7.5%. var percentage = normal / 50; + if (!(event.offsetX && event.offsetY)){ + event.offsetX = event.layerX - event.target.offsetLeft; + event.offsetY = event.layerY - event.target.offsetTop; + } + var percentages = offsetToPercentage(g, event.offsetX, event.offsetY); var xPct = percentages[0]; var yPct = percentages[1]; zoom(g, percentage, xPct, yPct); - Dygraph.cancelEvent(event); + event.preventDefault(); + event.stopPropagation(); } // Adjusts [x, y] toward each other by zoomInPercentage% @@ -136,8 +151,9 @@ function moveV4(event, g, context) { var RANGE = 7; if (v4Active) { - var canvasx = Dygraph.pageX(event) - Dygraph.findPosX(g.graphDiv); - var canvasy = Dygraph.pageY(event) - Dygraph.findPosY(g.graphDiv); + var graphPos = Dygraph.findPos(g.graphDiv); + var canvasx = Dygraph.pageX(event) - graphPos.x; + var canvasy = Dygraph.pageY(event) - graphPos.y; var rows = g.numRows(); // Row layout: @@ -182,7 +198,7 @@ function upV4(event, g, context) { } function dblClickV4(event, g, context) { - restorePositioning(g4); + restorePositioning(g); } function drawV4(x, y) {