projects
/
dygraphs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Rebase (Straw broom) Plugin
[dygraphs.git]
/
tests
/
interaction.js
diff --git
a/tests/interaction.js
b/tests/interaction.js
index
f4925da
..
4b85211
100644
(file)
--- a/
tests/interaction.js
+++ b/
tests/interaction.js
@@
-1,6
+1,7
@@
-
+// 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) {
function downV3(event, g, context) {
- resetGraphScroll();
context.initializeMouseDown(event, g, context);
if (event.altKey || event.shiftKey) {
Dygraph.startZoom(event, g, context);
context.initializeMouseDown(event, g, context);
if (event.altKey || event.shiftKey) {
Dygraph.startZoom(event, g, context);
@@
-10,7
+11,6
@@
function downV3(event, g, context) {
}
function moveV3(event, g, context) {
}
function moveV3(event, g, context) {
- resetGraphScroll();
if (context.isPanning) {
Dygraph.movePan(event, g, context);
} else if (context.isZooming) {
if (context.isPanning) {
Dygraph.movePan(event, g, context);
} else if (context.isZooming) {
@@
-62,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%
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];
var percentages = offsetToPercentage(g, event.offsetX, event.offsetY);
var xPct = percentages[0];
var yPct = percentages[1];
@@
-73,20
+79,15
@@
function dblClickV3(event, g, context) {
}
}
}
}
-var
scrollTimeMillis = 0
;
+var
lastClickedGraph = null
;
-function suspendGraphScroll() {
- scrollTimeMillis = new Date().getTime();
-}
-
-function resetGraphscroll() {
- scrollTimeMillis = 0;
+function clickV3(event, g, context) {
+ lastClickedGraph = g;
+ Dygraph.cancelEvent(event);
}
function scrollV3(event, g, context) {
}
function scrollV3(event, g, context) {
- var millis = new Date().getTime();
- if (millis - scrollTimeMillis < 250) {
- suspendGraphScroll();
+ if (lastClickedGraph != g) {
return;
}
var normal = event.detail ? event.detail * -1 : event.wheelDelta / 40;
return;
}
var normal = event.detail ? event.detail * -1 : event.wheelDelta / 40;
@@
-94,6
+95,11
@@
function scrollV3(event, g, context) {
// that verbatim, it would be a 7.5%.
var percentage = normal / 50;
// 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];
var percentages = offsetToPercentage(g, event.offsetX, event.offsetY);
var xPct = percentages[0];
var yPct = percentages[1];
@@
-143,8
+149,9
@@
function moveV4(event, g, context) {
var RANGE = 7;
if (v4Active) {
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:
var rows = g.numRows();
// Row layout:
@@
-189,7
+196,7
@@
function upV4(event, g, context) {
}
function dblClickV4(event, g, context) {
}
function dblClickV4(event, g, context) {
- restorePositioning(g
4
);
+ restorePositioning(g);
}
function drawV4(x, y) {
}
function drawV4(x, y) {