Mary Hipp
8cd78f7f34
feat(ui): copy layer to clipboard
2024-09-18 10:35:00 +10:00
psychedelicious
bc683f955d
tidy(ui): update image usage names to match canvas v2
...
- "isControlAdapterImage" -> "isControlLayerImage"
- "isIPAdapterImage" -> "isReferenceImage"
2024-09-18 10:19:35 +10:00
Mary Hipp
32344b5170
update image usage check for canvas v2 layers and upscaling
2024-09-18 10:19:35 +10:00
psychedelicious
9884159812
fix(ui): dnd drop label errors w invalid DOM nesting
...
Make em all strings to prevent nesting `<p>` elements. Slightly changes appearance - font size is a bit smaller.
2024-09-18 09:55:50 +10:00
psychedelicious
c4541f5d3c
fix(ui): clear drawing buffer when resetting selected layer with shift+x
2024-09-18 09:55:50 +10:00
psychedelicious
3d1a04ccbf
feat(ui): default steps to 30
2024-09-17 15:44:20 +10:00
Mary Hipp
b05aafc999
lint:tsc
2024-09-17 15:44:20 +10:00
Mary Hipp
a03bf5b585
fix(ui): use 1024x1024 for optimal FLUX dimensions
2024-09-17 15:44:20 +10:00
Mary Hipp
d43b3ba5c6
fix(ui): add informational popover to guidance param
2024-09-17 15:44:20 +10:00
Mary Hipp
b7bc6ea426
fix(ui): disable FLUX models in upscale tab and show main model dropdown as invalid if its already selected
2024-09-17 15:44:20 +10:00
Mary Hipp
929c07a2bc
enhancement(ui): add graph util to abstract distinction of SD i2l and FLUX i2l nodes
2024-09-17 15:44:20 +10:00
Mary Hipp
a046883075
lints
2024-09-17 15:44:20 +10:00
Mary Hipp
9947ef2c95
feat(ui): disable layers that are not yet supported for FLUX: control layer, IP adapters, regional control
2024-09-17 15:44:20 +10:00
Mary Hipp
20b75c9887
fix(ui): making sure all graphs are using the correct FLUX nodes
2024-09-17 15:44:20 +10:00
Mary Hipp
4b916d217b
all the lints
2024-09-17 15:44:20 +10:00
Mary Hipp
a300b6ebdd
feat(ui): graph building for FLUX in linear UI
2024-09-17 15:44:20 +10:00
Mary Hipp
00de20d102
fix(nodes): add flux generation types to choices
2024-09-17 15:44:20 +10:00
Mary Hipp
573c7d2088
feat(ui): FLUX linear - add VAE as required model field rather than allowing default
2024-09-17 15:44:20 +10:00
Mary Hipp
ffbf4aba1f
feat(ui): new fields and param layout for FLUX settings: guidance, t5 encoder, CLIP embed
2024-09-17 15:44:20 +10:00
Mary Hipp
783441a89d
fix(ui): restore Settings Modal functionality to use children to render
2024-09-16 20:09:43 -04:00
psychedelicious
568cae919a
feat(ui): change upscaling icon
2024-09-16 23:58:03 +03:00
Mary Hipp
4bd7b25179
swap control layer and raster layer
2024-09-16 13:39:10 -04:00
Mary Hipp
e019df032e
change upscaling icon
2024-09-16 13:39:10 -04:00
Mary Hipp
5360740613
fix(ui): map order of layer types to the menu options
2024-09-16 13:39:10 -04:00
psychedelicious
1545289a8f
fix(ui): remove accidentally added staging button
2024-09-16 15:27:55 +03:00
psychedelicious
7fe1135ba0
feat(ui): add ref image drop targets to canvas
2024-09-16 15:10:17 +03:00
psychedelicious
41efd813e6
feat(ui): tweak drop overlay styles
2024-09-16 15:10:17 +03:00
psychedelicious
3a42285a3f
feat(ui): gallery image hover button to open in viewer
2024-09-16 15:10:17 +03:00
psychedelicious
04232876e8
feat(ui): tweak perserve mask translation
2024-09-16 15:10:17 +03:00
psychedelicious
97155bcadc
fix(ui): gallery not filling up
...
Floating point precision issue.
2024-09-16 15:10:17 +03:00
psychedelicious
0e0076d819
tidy(ui): rename canvas state "regions" -> "regionalGuidance"
2024-09-16 15:10:17 +03:00
psychedelicious
7725baf6c8
feat(ui): revised regional guidance
2024-09-16 15:10:17 +03:00
psychedelicious
4cf9933487
feat(ui): tighten up ip adapter settings layout
2024-09-16 15:10:17 +03:00
psychedelicious
26e590ed0c
feat(ui): updated add entity buttons/menu
2024-09-16 15:10:17 +03:00
psychedelicious
35012dbee8
fix(ui): pull bbox into ref image translations
2024-09-16 15:10:17 +03:00
psychedelicious
e8c218672f
tidy(ui): clean up addLayerHooks
2024-09-16 15:10:17 +03:00
psychedelicious
e967197fd9
feat(ui): close viewer button is an icon
...
Reduces the awkwardness of having two identical buttons visible at once.
2024-09-16 15:10:17 +03:00
psychedelicious
f76c998791
feat(ui): more translation updates
...
- Migrate some translations to `controlLayers` namespace
- Remove the `controlnet` namespace entirely
- Remove other unused translations
2024-09-16 15:10:17 +03:00
psychedelicious
c2fb821574
feat(ui): update translations for reference image
2024-09-16 15:10:17 +03:00
psychedelicious
0ebe070be6
feat(ui): updated canvas context menu
2024-09-16 15:10:17 +03:00
psychedelicious
26e23a43dc
tidy(ui): create/move store utils to separate file
2024-09-16 15:10:17 +03:00
psychedelicious
52a19ceac3
feat(ui): ip adapter -> reference image (internal state)
...
We are renaming "IP Adapter" to "Reference Image".
- Update all internal state
- Update all components
2024-09-16 15:10:17 +03:00
psychedelicious
2d20e9612c
feat(ui): add sections to add layer menu
2024-09-16 15:10:17 +03:00
psychedelicious
79683479fc
fix(ui): right click opens image in new tab
2024-09-16 15:10:17 +03:00
psychedelicious
d50abd80a6
fix(ui): image quality degradation while saving images
...
The HTML Canvas context has an `imageSmoothingEnabled` property which defaults to `true`. This causes the browser canvas API to, well, apply image smoothing - everything gets antialiased when drawn.
This is, of course, problematic when our goal is to be pixel-perfect. When the same image is drawn multiple times, we get progressive image degradation.
In `CanvasEntityObjectRenderer.cloneObjectGroup()`, where we use Konva's `Node.cache()` method to create a canvas from the entity's objects. Here, we were not setting `imageSmoothingEnabled` to false. This method is used very often by the compositor and we end up feeding back antialiased versions of the image data back into the canvas or generation backend.
Disabling smoothing here appears to fix the issue. I've also disabled image smoothing everywhere else we interact with a canvas rendering context.
2024-09-15 10:18:43 +10:00
psychedelicious
ddfa32d101
feat(ui): middle-mouse click on image opens in new tab
...
Closes #6809
2024-09-15 10:18:43 +10:00
psychedelicious
be9c65b8a2
feat(ui): log $stageAttrs in CanvasStageModule.repr()
2024-09-15 10:18:43 +10:00
psychedelicious
cd2f9b1884
fix(ui): do not floor stage coords, add util to sync stage attrs
2024-09-15 10:18:43 +10:00
psychedelicious
25964bed18
fix(ui): checkerboard background slightly larger than canvas
...
The checkerboard background was rendered as a separate DOM element that stretched to fill the canvas container.
While the canvas width and height are always integers, this background element could have non-integer dimensions, depending on panel sizes.As a result, it could be slightly larger than the canvas, introducing a fine border around the canvas.
This is purely a visual issue, but it's very noticeable when you use the bbox overlay. It also can be noticed with masks that extend beyond the edge of the visible canvas.
- Refactor the checkerboard background to be rendered by the canvas instead of as a DOM element, resolving the issue.
- Add a helper method to get the scaled rect of the stage, updating a few places where we need such a rect.
- Rename `CanvasStageModule.getScaledPixels` method to `unscale`, clarifying its purpose.
2024-09-15 10:18:43 +10:00
psychedelicious
19201768b0
feat(ui): use phosphor icons
...
There were some scattered places where we used other icon packs. Changed all to use phosphor icons for consistency.
2024-09-15 10:18:43 +10:00