Skip to content

Commit 0ab4b9f

Browse files
committed
Add back the scrolling support
1 parent 4f18105 commit 0ab4b9f

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

js/src/mpl_widget.js

+16-5
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@ var MPLCanvasView = widgets.DOMWidgetView.extend({
133133

134134
canvas_div.addEventListener('keydown', this.key_event('key_press'));
135135
canvas_div.addEventListener('keyup', this.key_event('key_release'));
136+
136137
// this is important to make the div 'focusable'
137138
canvas_div.setAttribute('tabindex', 0);
138139
this.figure.appendChild(canvas_div);
@@ -166,6 +167,8 @@ var MPLCanvasView = widgets.DOMWidgetView.extend({
166167
rubberband_canvas.addEventListener('mouseenter', this.mouse_event('figure_enter'));
167168
rubberband_canvas.addEventListener('mouseleave', this.mouse_event('figure_leave'));
168169

170+
rubberband_canvas.addEventListener('wheel', this.mouse_event('scroll'));
171+
169172
canvas_div.appendChild(canvas);
170173
canvas_div.appendChild(rubberband_canvas);
171174

@@ -366,8 +369,16 @@ var MPLCanvasView = widgets.DOMWidgetView.extend({
366369
return function(event) {
367370
var canvas_pos = utils.get_mouse_position(event);
368371

369-
if (name === 'button_press')
370-
{
372+
if (name === 'scroll') {
373+
event['data'] = 'scroll'
374+
if (event.deltaY < 0) {
375+
event.step = 1;
376+
} else {
377+
event.step = -1;
378+
}
379+
}
380+
381+
if (name === 'button_press') {
371382
that.canvas.focus();
372383
that.canvas_div.focus();
373384
}
@@ -395,15 +406,15 @@ var MPLCanvasView = widgets.DOMWidgetView.extend({
395406
event.preventDefault();
396407

397408
// Prevent repeat events
398-
if (name == 'key_press')
399-
{
409+
if (name == 'key_press') {
400410
if (event.which === that._key)
401411
return;
402412
else
403413
that._key = event.which;
404414
}
405-
if (name == 'key_release')
415+
if (name == 'key_release') {
406416
that._key = null;
417+
}
407418

408419
var value = '';
409420
if (event.ctrlKey && event.which != 17)

0 commit comments

Comments
 (0)