From 2f555f881b4f1f086f333bc09d3e1ce0f6af4e22 Mon Sep 17 00:00:00 2001 From: Evert Prants Date: Sun, 3 Apr 2022 17:50:04 +0300 Subject: [PATCH] color picker --- src/client/canvas.ts | 2 ++ src/client/picker.ts | 26 ++++++++++++++++++++++++++ src/client/scss/index.scss | 12 ++++++++++++ 3 files changed, 40 insertions(+) diff --git a/src/client/canvas.ts b/src/client/canvas.ts index 8bcb12f..0675f1e 100644 --- a/src/client/canvas.ts +++ b/src/client/canvas.ts @@ -359,6 +359,7 @@ export class ViewCanvas { this._getPlacerFn(x, y).then((placer) => { if (placer && this._placerRequestTime === order) { this._showPlacerTag(placer); + this.picker.setPickColor(placer.color); } }); } @@ -386,6 +387,7 @@ export class ViewCanvas { private _resetPlacerTag(): void { this._placerRequestTime = 0; + this.picker.setPickColor(null); if (this._placerTag) { this._cursor.removeChild(this._placerTag); this._placerTag = null; diff --git a/src/client/picker.ts b/src/client/picker.ts index 3aa6e8b..987afaa 100644 --- a/src/client/picker.ts +++ b/src/client/picker.ts @@ -5,6 +5,7 @@ import { $ } from './utils/dom'; export class Picker { private _fn?: (color: number) => void; private _color: number = 0x000000; + private _pickerColor: number | null = null; private _colorHistory: number[] = []; private _wrapper = $('
'); @@ -16,6 +17,7 @@ export class Picker { private _placebtn = $('