diff --git a/src/main/angular/src/app/shared/slider/slider.component.html b/src/main/angular/src/app/shared/slider/slider.component.html
index 66c9c22..ccb426e 100644
--- a/src/main/angular/src/app/shared/slider/slider.component.html
+++ b/src/main/angular/src/app/shared/slider/slider.component.html
@@ -1,4 +1,4 @@
diff --git a/src/main/angular/src/app/shared/slider/slider.component.less b/src/main/angular/src/app/shared/slider/slider.component.less
index 91006d3..b27d2db 100644
--- a/src/main/angular/src/app/shared/slider/slider.component.less
+++ b/src/main/angular/src/app/shared/slider/slider.component.less
@@ -15,4 +15,9 @@
border: @border solid black;
}
+ .ghost {
+ opacity: 30%;
+ }
+
}
+
diff --git a/src/main/angular/src/app/shared/slider/slider.component.ts b/src/main/angular/src/app/shared/slider/slider.component.ts
index 24233af..5728fed 100644
--- a/src/main/angular/src/app/shared/slider/slider.component.ts
+++ b/src/main/angular/src/app/shared/slider/slider.component.ts
@@ -14,7 +14,7 @@ export class SliderComponent {
@Input()
percent!: number;
- protected percent2: number | null = null;
+ protected percentMouse: number | null = null;
@Input()
color0!: string;
@@ -45,17 +45,20 @@ export class SliderComponent {
protected end($event: MouseEvent) {
this.apply($event, true);
- this.percent2 = null;
+ this.percentMouse = null;
}
private apply($event: MouseEvent, force: boolean) {
- this.percent2 = Math.max(0, Math.min(100, Math.round(100 * ($event.clientX - this.slider.nativeElement.offsetWidth / 2) / this.outer.nativeElement.offsetWidth)));
+ const sliderHalf = this.slider.nativeElement.offsetWidth / 2;
+ const offsetWidth = this.outer.nativeElement.offsetWidth;
+ const currentX = $event.clientX;
+ this.percentMouse = Math.max(0, Math.min(100, Math.round(100 * (currentX - sliderHalf) / offsetWidth)));
const now = new Date().getTime();
if (!force && this.last !== null && now - this.last < RATE_LIMIT_MS) {
return;
}
this.last = now;
- this.onChange.emit(this.percent2);
+ this.onChange.emit(this.percentMouse);
}
gradient(): string {