diff --git a/src/extensions/core/maskeditor.ts b/src/extensions/core/maskeditor.ts index 406fdcd7d4..517c8c6ab8 100644 --- a/src/extensions/core/maskeditor.ts +++ b/src/extensions/core/maskeditor.ts @@ -37,7 +37,7 @@ function isOpened(): boolean { return useDialogStore().isDialogOpen('global-mask-editor') } -const changeBrushSize = async (sizeChanger: (oldSize: number) => number) => { +async function changeBrushSize(sizeChanger: (oldSize: number) => number) { if (!isOpened()) return const store = useMaskEditorStore() @@ -46,6 +46,17 @@ const changeBrushSize = async (sizeChanger: (oldSize: number) => number) => { store.setBrushSize(newBrushSize) } +async function changeBrushHardness( + hardnessChanger: (oldHardness: number) => number +) { + if (!isOpened()) return + + const store = useMaskEditorStore() + const oldBrushHardness = store.brushSettings.hardness + const newBrushHardness = hardnessChanger(oldBrushHardness) + store.setBrushHardness(newBrushHardness) +} + app.registerExtension({ name: 'Comfy.MaskEditor', settings: [ @@ -99,6 +110,20 @@ app.registerExtension({ label: 'Decrease Brush Size in MaskEditor', function: () => changeBrushSize((old) => _.clamp(old - 2, 1, 250)) }, + + { + id: 'Comfy.MaskEditor.BrushHardness.Increase', + icon: 'pi pi-plus-circle', + label: 'Increase Brush Hardness in MaskEditor', + function: () => changeBrushHardness((old) => _.clamp(old + 0.1, 0, 1)) + }, + + { + id: 'Comfy.MaskEditor.BrushHardness.Decrease', + icon: 'pi pi-minus-circle', + label: 'Decrease Brush Hardness in MaskEditor', + function: () => changeBrushHardness((old) => _.clamp(old - 0.1, 0, 1)) + }, { id: 'Comfy.MaskEditor.ColorPicker', icon: 'pi pi-palette',