- Dygraph.addEvent(this.leftZoomHandle_, 'dragstart', onZoomStart);
- Dygraph.addEvent(this.rightZoomHandle_, 'dragstart', onZoomStart);
- Dygraph.addEvent(this.fgcanvas_, 'mousedown', onPanStart);
- Dygraph.addEvent(this.fgcanvas_, 'mousemove', onCanvasMouseMove);
+ this.dygraph_.attrs_.interactionModel =
+ Dygraph.Interaction.dragIsPanInteractionModel;
+ this.dygraph_.attrs_.panEdgeFraction = 0.0001;
+
+ var dragStartEvent = window.opera ? 'mousedown' : 'dragstart';
+ this.dygraph_.addEvent(this.leftZoomHandle_, dragStartEvent, onZoomStart);
+ this.dygraph_.addEvent(this.rightZoomHandle_, dragStartEvent, onZoomStart);
+
+ if (this.isUsingExcanvas_) {
+ this.dygraph_.addEvent(this.iePanOverlay_, 'mousedown', onPanStart);
+ } else {
+ this.dygraph_.addEvent(this.fgcanvas_, 'mousedown', onPanStart);
+ this.dygraph_.addEvent(this.fgcanvas_, 'mousemove', onCanvasMouseMove);
+ }
+
+ // Touch events
+ if (this.hasTouchInterface_) {
+ addTouchEvents(this.leftZoomHandle_, onZoomHandleTouchEvent);
+ addTouchEvents(this.rightZoomHandle_, onZoomHandleTouchEvent);
+ addTouchEvents(this.fgcanvas_, onCanvasTouchEvent);
+ }