diff options
Diffstat (limited to 'javascript/extraNetworks.js')
-rw-r--r-- | javascript/extraNetworks.js | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/javascript/extraNetworks.js b/javascript/extraNetworks.js index 4ef1a96f..9a3a2392 100644 --- a/javascript/extraNetworks.js +++ b/javascript/extraNetworks.js @@ -48,7 +48,7 @@ function setupExtraNetworksForTab(tabname) { return; // `return` is equivalent of `continue` but for forEach loops. } - var applyFilter = function() { + var applyFilter = function(force) { var searchTerm = search.value.toLowerCase(); gradioApp().querySelectorAll('#' + tabname + '_extra_tabs div.card').forEach(function(elem) { var searchOnly = elem.querySelector('.search_only'); @@ -67,17 +67,17 @@ function setupExtraNetworksForTab(tabname) { } }); - applySort(); + applySort(force); }; - var applySort = function() { + var applySort = function(force) { var cards = gradioApp().querySelectorAll('#' + tabname + '_extra_tabs div.card'); var reverse = sort_dir.dataset.sortdir == "Descending"; var sortKey = sort_mode.dataset.sortmode.toLowerCase().replace("sort", "").replaceAll(" ", "_").replace(/_+$/, "").trim() || "name"; sortKey = "sort" + sortKey.charAt(0).toUpperCase() + sortKey.slice(1); var sortKeyStore = sortKey + "-" + (reverse ? "Descending" : "Ascending") + "-" + cards.length; - if (sortKeyStore == sort_mode.dataset.sortkey) { + if (sortKeyStore == sort_mode.dataset.sortkey && !force) { return; } sort_mode.dataset.sortkey = sortKeyStore; @@ -167,11 +167,17 @@ function extraNetworksTabSelected(tabname, id, showPrompt, showNegativePrompt, t } function applyExtraNetworkFilter(tabname_full) { - setTimeout(extraNetworksApplyFilter[tabname_full], 1); + var doFilter = function() { + extraNetworksApplyFilter[tabname_full](true); + }; + setTimeout(doFilter, 1); } function applyExtraNetworkSort(tabname_full) { - setTimeout(extraNetworksApplySort[tabname_full], 1); + var doSort = function() { + extraNetworksApplySort[tabname_full](true); + }; + setTimeout(doSort, 1); } var extraNetworksApplyFilter = {}; @@ -450,7 +456,7 @@ function extraNetworksControlRefreshOnClick(event, tabname, extra_networks_tabna * @param tabname The name of the active tab in the sd webui. Ex: txt2img, img2img, etc. * @param extra_networks_tabname The id of the active extraNetworks tab. Ex: lora, checkpoints, etc. */ - var btn_refresh_internal = gradioApp().getElementById(tabname + "_extra_refresh_internal"); + var btn_refresh_internal = gradioApp().getElementById(tabname + "_" + extra_networks_tabname + "_extra_refresh_internal"); btn_refresh_internal.dispatchEvent(new Event("click")); } |