feat(ui): do not sample alpha in Canvas color picker

Closes #7897
This commit is contained in:
psychedelicious
2025-08-19 19:22:37 +10:00
parent bb153b55d3
commit b0cfdc94b5
3 changed files with 5 additions and 5 deletions

View File

@@ -231,7 +231,7 @@ export class CanvasStateApiModule extends CanvasModuleBase {
/**
* Sets the drawing color, pushing state to redux.
*/
setColor = (color: RgbaColor) => {
setColor = (color: Partial<RgbaColor>) => {
return this.store.dispatch(settingsColorChanged(color));
};

View File

@@ -406,8 +406,8 @@ export class CanvasColorPickerToolModule extends CanvasModuleBase {
};
onStagePointerUp = (_e: KonvaEventObject<PointerEvent>) => {
const color = this.$colorUnderCursor.get();
this.manager.stateApi.setColor({ ...color, a: color.a / 255 });
const { a: _, ...color } = this.$colorUnderCursor.get();
this.manager.stateApi.setColor(color);
};
onStagePointerMove = (_e: KonvaEventObject<PointerEvent>) => {

View File

@@ -134,8 +134,8 @@ const slice = createSlice({
settingsEraserWidthChanged: (state, action: PayloadAction<CanvasSettingsState['eraserWidth']>) => {
state.eraserWidth = Math.round(action.payload);
},
settingsColorChanged: (state, action: PayloadAction<CanvasSettingsState['color']>) => {
state.color = action.payload;
settingsColorChanged: (state, action: PayloadAction<Partial<CanvasSettingsState['color']>>) => {
state.color = { ...state.color, ...action.payload };
},
settingsInvertScrollForToolWidthChanged: (
state,