mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-04-30 03:01:54 +00:00
[Bug] Fix undo of colorization via selection toolbox (#3267)
This commit is contained in:
@@ -246,5 +246,24 @@ test.describe('Selection Toolbox', () => {
|
|||||||
)
|
)
|
||||||
await expect(colorPickerButton).toHaveCSS('color', BLUE_COLOR)
|
await expect(colorPickerButton).toHaveCSS('color', BLUE_COLOR)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
test('colorization via color picker can be undone', async ({
|
||||||
|
comfyPage
|
||||||
|
}) => {
|
||||||
|
// Select a node and color it
|
||||||
|
await comfyPage.selectNodes(['KSampler'])
|
||||||
|
await comfyPage.page.locator('.selection-toolbox .pi-circle-fill').click()
|
||||||
|
await comfyPage.page
|
||||||
|
.locator('.color-picker-container i[data-testid="blue"]')
|
||||||
|
.click()
|
||||||
|
|
||||||
|
// Undo the colorization
|
||||||
|
await comfyPage.page.keyboard.press('Control+Z')
|
||||||
|
await comfyPage.nextFrame()
|
||||||
|
|
||||||
|
// Node should be uncolored again
|
||||||
|
const selectedNode = (await comfyPage.getNodeRefsByTitle('KSampler'))[0]
|
||||||
|
expect(await selectedNode.getProperty('color')).toBeUndefined()
|
||||||
|
})
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ import { computed, ref, watch } from 'vue'
|
|||||||
import { useI18n } from 'vue-i18n'
|
import { useI18n } from 'vue-i18n'
|
||||||
|
|
||||||
import { useCanvasStore } from '@/stores/graphStore'
|
import { useCanvasStore } from '@/stores/graphStore'
|
||||||
|
import { useWorkflowStore } from '@/stores/workflowStore'
|
||||||
import { useColorPaletteStore } from '@/stores/workspace/colorPaletteStore'
|
import { useColorPaletteStore } from '@/stores/workspace/colorPaletteStore'
|
||||||
import { adjustColor } from '@/utils/colorUtil'
|
import { adjustColor } from '@/utils/colorUtil'
|
||||||
import { getItemsColorOption } from '@/utils/litegraphUtil'
|
import { getItemsColorOption } from '@/utils/litegraphUtil'
|
||||||
@@ -54,6 +55,7 @@ import { getItemsColorOption } from '@/utils/litegraphUtil'
|
|||||||
const { t } = useI18n()
|
const { t } = useI18n()
|
||||||
const canvasStore = useCanvasStore()
|
const canvasStore = useCanvasStore()
|
||||||
const colorPaletteStore = useColorPaletteStore()
|
const colorPaletteStore = useColorPaletteStore()
|
||||||
|
const workflowStore = useWorkflowStore()
|
||||||
const isLightTheme = computed(
|
const isLightTheme = computed(
|
||||||
() => colorPaletteStore.completedActivePalette.light_theme
|
() => colorPaletteStore.completedActivePalette.light_theme
|
||||||
)
|
)
|
||||||
@@ -108,6 +110,7 @@ const applyColor = (colorOption: ColorOption | null) => {
|
|||||||
canvasStore.canvas?.setDirty(true, true)
|
canvasStore.canvas?.setDirty(true, true)
|
||||||
currentColorOption.value = canvasColorOption
|
currentColorOption.value = canvasColorOption
|
||||||
showColorPicker.value = false
|
showColorPicker.value = false
|
||||||
|
workflowStore.activeWorkflow?.changeTracker.checkState()
|
||||||
}
|
}
|
||||||
|
|
||||||
const currentColorOption = ref<CanvasColorOption | null>(null)
|
const currentColorOption = ref<CanvasColorOption | null>(null)
|
||||||
|
|||||||
Reference in New Issue
Block a user