mirror of
https://github.com/eliasstepanik/strudel-docker.git
synced 2026-01-26 13:08:28 +00:00
improve mouse tracking
This commit is contained in:
parent
d7bc309eeb
commit
c6ecd31ea1
@ -36,7 +36,7 @@ export class SliderWidget extends WidgetType {
|
|||||||
slider.from = this.from;
|
slider.from = this.from;
|
||||||
slider.originalFrom = this.originalFrom;
|
slider.originalFrom = this.originalFrom;
|
||||||
slider.to = this.to;
|
slider.to = this.to;
|
||||||
slider.className = 'w-16 translate-y-1.5 mx-2';
|
slider.className = 'w-16 translate-y-1';
|
||||||
this.slider = slider;
|
this.slider = slider;
|
||||||
return wrap;
|
return wrap;
|
||||||
}
|
}
|
||||||
@ -97,7 +97,7 @@ export const sliderPlugin = ViewPlugin.fromClass(
|
|||||||
|
|
||||||
eventHandlers: {
|
eventHandlers: {
|
||||||
mousedown: (e, view) => {
|
mousedown: (e, view) => {
|
||||||
let target = e.target; /* as HTMLElement */
|
let target = e.target;
|
||||||
if (target.nodeName == 'INPUT' && target.parentElement.classList.contains('cm-slider')) {
|
if (target.nodeName == 'INPUT' && target.parentElement.classList.contains('cm-slider')) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
@ -121,7 +121,8 @@ export const sliderPlugin = ViewPlugin.fromClass(
|
|||||||
// moves slider on mouse event
|
// moves slider on mouse event
|
||||||
function updateSliderValue(view, e) {
|
function updateSliderValue(view, e) {
|
||||||
const mouseX = e.clientX;
|
const mouseX = e.clientX;
|
||||||
let progress = (mouseX - draggedSlider._offsetLeft) / draggedSlider._clientWidth;
|
let mx = 10;
|
||||||
|
let progress = (mouseX - draggedSlider._offsetLeft - mx) / (draggedSlider._clientWidth - mx * 2);
|
||||||
progress = Math.max(Math.min(1, progress), 0);
|
progress = Math.max(Math.min(1, progress), 0);
|
||||||
let min = Number(draggedSlider.min);
|
let min = Number(draggedSlider.min);
|
||||||
let max = Number(draggedSlider.max);
|
let max = Number(draggedSlider.max);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user