From 4eda2ef555fa498b5bf97ef86e21d5302ad1603d Mon Sep 17 00:00:00 2001
From: psychedelicious <4822129+psychedelicious@users.noreply.github.com>
Date: Mon, 19 Aug 2024 22:51:40 +1000
Subject: [PATCH] feat(ui): layer opacity via caching
---
.../components/AddLayerButton.tsx | 13 +-
.../components/CanvasEntityList.tsx | 4 +-
.../ControlLayer/ControlLayerEntityList.tsx | 14 +-
.../components/ControlLayersPanelContent.tsx | 11 +-
.../components/IPAdapter/IPAdapterList.tsx | 14 +-
.../components/InpaintMask/InpaintMask.tsx | 10 +-
.../RasterLayer/RasterLayerEntityList.tsx | 14 +-
.../RegionalGuidanceEntityList.tsx | 14 +-
.../common/CanvasEntityGroupList.tsx | 45 +++++
.../common/CanvasEntityGroupTitle.tsx | 17 --
.../components/common/CanvasEntityOpacity.tsx | 180 ++++++++++++++++++
.../controlLayers/konva/CanvasEntity.ts | 27 ---
.../controlLayers/konva/CanvasLayerAdapter.ts | 16 +-
.../controlLayers/konva/CanvasManager.ts | 16 +-
.../controlLayers/konva/CanvasMaskAdapter.ts | 19 +-
.../konva/CanvasObjectRenderer.ts | 68 +++++--
.../konva/patterns/getPatternSVG.ts | 8 +-
.../controlLayers/store/canvasV2Slice.ts | 61 ++++++
.../src/features/controlLayers/store/types.ts | 26 +--
.../ParametersPanelTextToImage.tsx | 7 +-
20 files changed, 432 insertions(+), 152 deletions(-)
create mode 100644 invokeai/frontend/web/src/features/controlLayers/components/common/CanvasEntityGroupList.tsx
delete mode 100644 invokeai/frontend/web/src/features/controlLayers/components/common/CanvasEntityGroupTitle.tsx
create mode 100644 invokeai/frontend/web/src/features/controlLayers/components/common/CanvasEntityOpacity.tsx
delete mode 100644 invokeai/frontend/web/src/features/controlLayers/konva/CanvasEntity.ts
diff --git a/invokeai/frontend/web/src/features/controlLayers/components/AddLayerButton.tsx b/invokeai/frontend/web/src/features/controlLayers/components/AddLayerButton.tsx
index b33f5304fa..335a6d126d 100644
--- a/invokeai/frontend/web/src/features/controlLayers/components/AddLayerButton.tsx
+++ b/invokeai/frontend/web/src/features/controlLayers/components/AddLayerButton.tsx
@@ -1,4 +1,4 @@
-import { Button, Menu, MenuButton, MenuItem, MenuList } from '@invoke-ai/ui-library';
+import { IconButton, Menu, MenuButton, MenuItem, MenuList } from '@invoke-ai/ui-library';
import { useAppDispatch } from 'app/store/storeHooks';
import { useDefaultControlAdapter, useDefaultIPAdapter } from 'features/controlLayers/hooks/useLayerControlAdapter';
import { controlLayerAdded, ipaAdded, rasterLayerAdded, rgAdded } from 'features/controlLayers/store/canvasV2Slice';
@@ -27,13 +27,12 @@ export const AddLayerButton = memo(() => {
return (