From 2c6e80a6010638fdaddf9b2d19f6995b2e89f394 Mon Sep 17 00:00:00 2001 From: itjope Date: Thu, 11 Oct 2018 12:50:51 +0200 Subject: [PATCH 1/2] Handle zoom slider position with floating point numbers --- src/ol/control/ZoomSlider.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ol/control/ZoomSlider.js b/src/ol/control/ZoomSlider.js index 9fb9d5982e..0132cf1893 100644 --- a/src/ol/control/ZoomSlider.js +++ b/src/ol/control/ZoomSlider.js @@ -260,8 +260,8 @@ class ZoomSlider extends Control { handleDraggerDrag_(event) { if (this.dragging_) { const element = /** @type {HTMLElement} */ (this.element.firstElementChild); - const deltaX = event.clientX - this.previousX_ + parseInt(element.style.left, 10); - const deltaY = event.clientY - this.previousY_ + parseInt(element.style.top, 10); + const deltaX = event.clientX - this.previousX_ + parseFloat(element.style.left, 10); + const deltaY = event.clientY - this.previousY_ + parseFloat(element.style.top, 10); const relativePosition = this.getRelativePosition_(deltaX, deltaY); this.currentResolution_ = this.getResolutionForPosition_(relativePosition); this.getMap().getView().setResolution(this.currentResolution_); From 945f686f8ab8176ea22ba7b7b175da9987749108 Mon Sep 17 00:00:00 2001 From: Andreas Hocevar Date: Thu, 11 Oct 2018 14:00:15 +0200 Subject: [PATCH 2/2] Remove 2nd argument of parseFloat --- src/ol/control/ZoomSlider.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ol/control/ZoomSlider.js b/src/ol/control/ZoomSlider.js index 0132cf1893..869eb8ffc9 100644 --- a/src/ol/control/ZoomSlider.js +++ b/src/ol/control/ZoomSlider.js @@ -260,8 +260,8 @@ class ZoomSlider extends Control { handleDraggerDrag_(event) { if (this.dragging_) { const element = /** @type {HTMLElement} */ (this.element.firstElementChild); - const deltaX = event.clientX - this.previousX_ + parseFloat(element.style.left, 10); - const deltaY = event.clientY - this.previousY_ + parseFloat(element.style.top, 10); + const deltaX = event.clientX - this.previousX_ + parseFloat(element.style.left); + const deltaY = event.clientY - this.previousY_ + parseFloat(element.style.top); const relativePosition = this.getRelativePosition_(deltaX, deltaY); this.currentResolution_ = this.getResolutionForPosition_(relativePosition); this.getMap().getView().setResolution(this.currentResolution_);