From 48ed3d78aa66d53658e4bc4baf731f71cad8eb59 Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Tue, 31 Dec 2024 11:41:25 -0500 Subject: [PATCH] ui networks initial sort Signed-off-by: Vladimir Mandic --- CHANGELOG.md | 4 ++++ javascript/extraNetworks.js | 17 +++++++++++------ wiki | 2 +- 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 46f993b1d..2730719a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -33,6 +33,9 @@ NYE refresh release with quite a few optimizatios and bug fixes... - **OpenVINO**: - disable re-compile on resolution change - fix shape mismatch on resolution change +- **LoRA**: + - LoRA load/apply/unapply methods have been changed in 12/2024 Xmass release and further tuned in this release + - for details on available methods, see - **Fixes**: - flux pipeline switches: txt/img/inpaint - flux custom unet loader for bnb @@ -51,6 +54,7 @@ NYE refresh release with quite a few optimizatios and bug fixes... - corrections with batch processing - hires with refiner prompt and batch processing - processing with nested calls + - ui networks initial sort ## Update for 2024-12-24 diff --git a/javascript/extraNetworks.js b/javascript/extraNetworks.js index c42ba5761..3f27cbba2 100644 --- a/javascript/extraNetworks.js +++ b/javascript/extraNetworks.js @@ -1,5 +1,6 @@ const activePromptTextarea = {}; let sortVal = -1; +let totalCards = -1; // helpers @@ -226,8 +227,8 @@ function sortExtraNetworks(fixed = 'no') { if (fixed !== 'fixed') sortVal = (sortVal + 1) % sortDesc.length; for (const pg of pages) { const cards = Array.from(pg.querySelectorAll('.card') || []); - num = cards.length; - if (num === 0) return 'sort: no cards'; + if (cards.length === 0) return 'sort: no cards'; + num += cards.length; cards.sort((a, b) => { // eslint-disable-line no-loop-func switch (sortVal) { case 0: return 0; @@ -243,12 +244,12 @@ function sortExtraNetworks(fixed = 'no') { for (const card of cards) pg.appendChild(card); } const desc = sortDesc[sortVal]; - log('sortExtraNetworks', { name: pagename, val: sortVal, order: desc, fixed: fixed === 'fixed', items: num }); + log('sortNetworks', { name: pagename, val: sortVal, order: desc, fixed: fixed === 'fixed', items: num }); return desc; } function refreshENInput(tabname) { - log('refreshExtraNetworks', tabname, gradioApp().querySelector(`#${tabname}_extra_networks textarea`)?.value); + log('refreshNetworks', tabname, gradioApp().querySelector(`#${tabname}_extra_networks textarea`)?.value); gradioApp().querySelector(`#${tabname}_extra_networks textarea`)?.dispatchEvent(new Event('input')); } @@ -467,11 +468,15 @@ function setupExtraNetworksForTab(tabname) { el.parentElement.style.width = '-webkit-fill-available'; } } + const cards = Array.from(gradioApp().querySelectorAll('.extra-network-cards > .card')); + if (cards.length > 0 && cards.length !== totalCards) { + totalCards = cards.length; + sortExtraNetworks('fixed'); + } if (lastView !== entries[0].intersectionRatio > 0) { lastView = entries[0].intersectionRatio > 0; if (lastView) { refreshENpage(); - // sortExtraNetworks('fixed'); if (window.opts.extra_networks_card_cover === 'cover') { en.style.position = 'absolute'; en.style.height = 'unset'; @@ -536,5 +541,5 @@ async function setupExtraNetworks() { registerPrompt('img2img', 'img2img_neg_prompt'); registerPrompt('control', 'control_prompt'); registerPrompt('control', 'control_neg_prompt'); - log('initExtraNetworks'); + log('initNetworks'); } diff --git a/wiki b/wiki index 7d159b39f..9eaaec772 160000 --- a/wiki +++ b/wiki @@ -1 +1 @@ -Subproject commit 7d159b39f70b1e6cc5673b39180b50e6688450f3 +Subproject commit 9eaaec7728c4b23a6efe78fa643cd5655ce8801f