Skip to content

Commit

Permalink
Add preventDefault for wheel handler, fixes #1632
Browse files Browse the repository at this point in the history
  • Loading branch information
ivmartel committed Mar 18, 2024
1 parent c4b4f6a commit b969c92
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 1 deletion.
4 changes: 3 additions & 1 deletion src/gui/viewLayer.js
Original file line number Diff line number Diff line change
Expand Up @@ -773,8 +773,10 @@ export class ViewLayer {
// interaction events
const names = InteractionEventNames;
for (let i = 0; i < names.length; ++i) {
const eventName = names[i];
const passive = eventName !== 'wheel';
this.#containerDiv.addEventListener(
names[i], this.#fireEvent, {passive: true});
names[i], this.#fireEvent, {passive: passive});
}
}

Expand Down
3 changes: 3 additions & 0 deletions src/tools/scrollWheel.js
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@ export class ScrollWheel {
this.#wheelDeltaY = 0;
}

// prevent default page scroll
event.preventDefault();

const up = event.deltaY < 0 ? true : false;

const layerDetails = getLayerDetailsFromEvent(event);
Expand Down
3 changes: 3 additions & 0 deletions src/tools/zoomPan.js
Original file line number Diff line number Diff line change
Expand Up @@ -222,6 +222,9 @@ export class ZoomAndPan {
* @param {object} event The mouse wheel event.
*/
wheel = (event) => {
// prevent default page scroll
event.preventDefault();

const step = -event.deltaY / 500;

const layerDetails = getLayerDetailsFromEvent(event);
Expand Down

0 comments on commit b969c92

Please sign in to comment.