[Bug] fix trying to delete undefined layers

clip_mask_bug
Abdullah Alfaraj 2022-12-24 11:23:46 +03:00
parent e145c2ea37
commit 714eebb917
3 changed files with 46 additions and 28 deletions

View File

@ -212,7 +212,7 @@
<button class="button-style2" id="btnInitInpaint">Init inpaint
Mask</button>
<button class="button-style2" id="btnInitOutpaint">Init Outpaint
<button button class="button-style2" id="btnInitOutpaint">Init Outpaint
Mask</button>
</div>

View File

@ -368,7 +368,7 @@ document
.getElementById('btnInitOutpaint')
.addEventListener('click', async () => {
// clear the layers related to the last mask operation.
g_last_outpaint_layers = await psapi.cleanLayersOutpaint(g_last_outpaint_layers)
g_last_outpaint_layers = await psapi.cleanLayers(g_last_outpaint_layers)
// create new layers related to the current mask operation.
g_last_outpaint_layers = await outpaint.outpaintFasterExe(random_session_id)
console.log ("outpaint.outpaintFasterExe(random_session_id):, g_last_outpaint_layers: ",g_last_outpaint_layers)
@ -378,7 +378,7 @@ document
.getElementById('btnInitInpaint')
.addEventListener('click', async () => {
// delete the layers of the previous mask operation
g_last_inpaint_layers = await psapi.cleanLayersInpaint(g_last_inpaint_layers)
g_last_inpaint_layers = await psapi.cleanLayers(g_last_inpaint_layers)
// store the layer of the current mask operation
g_last_inpaint_layers = await outpaint.inpaintFasterExe(random_session_id)
@ -413,14 +413,14 @@ document.getElementById('btnCleanLayers').addEventListener('click', async () =>
if (g_last_outpaint_layers.length == 5){
console.log("g_last_outpaint_layers has 5 layers")
g_last_outpaint_layers = await psapi.cleanLayersOutpaint(g_last_outpaint_layers)
g_last_outpaint_layers = await psapi.cleanLayers(g_last_outpaint_layers)
}else{
console.log("g_last_outpaint_layers.length =! 5 layers")
g_last_outpaint_layers = []
}
if (g_last_inpaint_layers.length == 4){
g_last_inpaint_layers = await psapi.cleanLayersInpaint(g_last_inpaint_layers)
g_last_inpaint_layers = await psapi.cleanLayers(g_last_inpaint_layers)
}else{
g_last_inpaint_layers = []

View File

@ -634,31 +634,48 @@ async function cleanSnapAndFill(layers){
return []
}
async function cleanLayersOutpaint(layers){
//delete group mask layer
//delete mask layer
//delete group init image layer
//delete init image layer (snapshot layer)
//delete fill layer
async function cleanLayers(layers){
console.log("cleanLayers() -> layers:",layers)
for (layer of layers){
await executeAsModal(async ()=>{await layer.delete()})
try {
await executeAsModal(async ()=>{await layer.delete()})}
catch(e){
console.warn("warning attempting to a delete layer: ",e)
continue;
}
}
return []
return []
}
async function cleanLayersInpaint(layers){
//delete group mask layer
//delete white mask layer
//delete the black fill layer
//delete init image layer (snapshot layer)
for (layer of layers){
await executeAsModal(async ()=>{await layer.delete()})
}
// async function cleanLayersOutpaint(layers){
// //delete group mask layer
// //delete mask layer
// //delete group init image layer
// //delete init image layer (snapshot layer)
// //delete fill layer
// for (layer of layers){
// try {
// await executeAsModal(async ()=>{await layer.delete()})}
// catch(e){
// console.warn("warning attempting to a delete layer: ",e)
// }
// }
return []
}
// return []
// }
// async function cleanLayersInpaint(layers){
// //delete group mask layer
// //delete white mask layer
// //delete the black fill layer
// //delete init image layer (snapshot layer)
// for (layer of layers){
// await executeAsModal(async ()=>{await layer.delete()})
// }
// return []
// }
module.exports = {
createSolidLayer,
@ -684,7 +701,8 @@ module.exports = {
exportPng,
layerToFileName,
layerNameToFileName,
cleanLayersOutpaint,
cleanLayersInpaint,
cleanSnapAndFill
// cleanLayersOutpaint,
// cleanLayersInpaint,
cleanSnapAndFill,
cleanLayers
}