mirror of https://github.com/vladmandic/automatic
minor updates
parent
eda2aa6da2
commit
79af359b1b
|
|
@ -1,34 +1,36 @@
|
|||
[submodule "wiki"]
|
||||
path = wiki
|
||||
url = https://github.com/vladmandic/automatic.wiki
|
||||
[submodule "extensions-builtin/sd-extension-system-info"]
|
||||
path = extensions-builtin/sd-extension-system-info
|
||||
url = https://github.com/vladmandic/sd-extension-system-info
|
||||
[submodule "extensions-builtin/stable-diffusion-webui-images-browser"]
|
||||
path = extensions-builtin/stable-diffusion-webui-images-browser
|
||||
url = https://github.com/AlUlkesh/stable-diffusion-webui-images-browser
|
||||
ignore = dirty
|
||||
[submodule "modules/lora"]
|
||||
path = modules/lora
|
||||
url = https://github.com/kohya-ss/sd-scripts
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/sd-webui-controlnet"]
|
||||
path = extensions-builtin/sd-webui-controlnet
|
||||
url = https://github.com/Mikubill/sd-webui-controlnet
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/stable-diffusion-webui-rembg"]
|
||||
path = extensions-builtin/stable-diffusion-webui-rembg
|
||||
url = https://github.com/vladmandic/sd-extension-rembg
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/sd-webui-agent-scheduler"]
|
||||
path = extensions-builtin/sd-webui-agent-scheduler
|
||||
url = https://github.com/ArtVentureX/sd-webui-agent-scheduler
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/sd-extension-chainner"]
|
||||
path = extensions-builtin/sd-extension-chainner
|
||||
url = https://github.com/vladmandic/sd-extension-chainner
|
||||
ignore = dirty
|
||||
[submodule "modules/k-diffusion"]
|
||||
path = modules/k-diffusion
|
||||
url = https://github.com/crowsonkb/k-diffusion
|
||||
ignore = dirty
|
||||
[submodule "modules/lora"]
|
||||
path = modules/lora
|
||||
url = https://github.com/kohya-ss/sd-scripts
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/sd-extension-system-info"]
|
||||
path = extensions-builtin/sd-extension-system-info
|
||||
url = https://github.com/vladmandic/sd-extension-system-info
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/sd-extension-chainner"]
|
||||
path = extensions-builtin/sd-extension-chainner
|
||||
url = https://github.com/vladmandic/sd-extension-chainner
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/stable-diffusion-webui-rembg"]
|
||||
path = extensions-builtin/stable-diffusion-webui-rembg
|
||||
url = https://github.com/vladmandic/sd-extension-rembg
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/stable-diffusion-webui-images-browser"]
|
||||
path = extensions-builtin/stable-diffusion-webui-images-browser
|
||||
url = https://github.com/AlUlkesh/stable-diffusion-webui-images-browser
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/sd-webui-controlnet"]
|
||||
path = extensions-builtin/sd-webui-controlnet
|
||||
url = https://github.com/Mikubill/sd-webui-controlnet
|
||||
ignore = dirty
|
||||
[submodule "extensions-builtin/sd-webui-agent-scheduler"]
|
||||
path = extensions-builtin/sd-webui-agent-scheduler
|
||||
url = https://github.com/ArtVentureX/sd-webui-agent-scheduler
|
||||
ignore = dirty
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit d5cd87bd434f1d82403ef740e0ab727afaf9dc96
|
||||
Subproject commit b73dee3f3fa99b1e7c7ee8dc6dad0176cb74e24c
|
||||
|
|
@ -77,7 +77,7 @@ function markIfModified(setting_name, value) {
|
|||
tab_nav_indicator.classList.toggle('saved', saved.size > 0);
|
||||
if (changed_items.size > 0) tab_nav_indicator.title += `click to reset ${changed_items.size} unapplied changes in this tab\n`;
|
||||
if (saved.size > 0) tab_nav_indicator.title += `${saved.size} custom values\n${unsaved.size} default values}`;
|
||||
elem.scrollIntoView({ behavior: 'smooth', block: 'center' }); // TODO why is scroll happening on every change if all pages are visible?
|
||||
// elem.scrollIntoView({ behavior: 'smooth', block: 'center' }); // TODO why is scroll happening on every change if all pages are visible?
|
||||
}
|
||||
|
||||
onAfterUiUpdate(async () => {
|
||||
|
|
@ -105,9 +105,10 @@ onAfterUiUpdate(async () => {
|
|||
},
|
||||
});
|
||||
|
||||
const settings_search = gradioApp().querySelectorAll('#settings_search > label > textarea')[0];
|
||||
settings_search.oninput = (e) => {
|
||||
const settingsSearch = gradioApp().querySelectorAll('#settings_search > label > textarea')[0];
|
||||
settingsSearch.oninput = (e) => {
|
||||
setTimeout(() => {
|
||||
log('settingsSearch', e.target.value)
|
||||
showAllSettings();
|
||||
gradioApp().querySelectorAll('#tab_settings .tabitem').forEach((section) => {
|
||||
section.querySelectorAll('.dirtyable').forEach((setting) => {
|
||||
|
|
@ -131,23 +132,23 @@ onOptionsChanged(() => {
|
|||
function initSettings() {
|
||||
if (settingsInitialized) return;
|
||||
settingsInitialized = true;
|
||||
const tab_nav_element = gradioApp().querySelector('#settings > .tab-nav');
|
||||
const tab_nav_buttons = gradioApp().querySelectorAll('#settings > .tab-nav > button');
|
||||
const tab_elements = gradioApp().querySelectorAll('#settings > div:not(.tab-nav)');
|
||||
const tabNavElements = gradioApp().querySelector('#settings > .tab-nav');
|
||||
const tabNavButtons = gradioApp().querySelectorAll('#settings > .tab-nav > button');
|
||||
const tabElements = gradioApp().querySelectorAll('#settings > div:not(.tab-nav)');
|
||||
const observer = new MutationObserver((mutations) => {
|
||||
const show_all_pages_dummy = gradioApp().getElementById('settings_show_all_pages');
|
||||
if (show_all_pages_dummy.style.display === 'none') { return; }
|
||||
const mutation_on_style = (mut) => mut.type === 'attributes' && mut.attributeName === 'style';
|
||||
if (mutations.some(mutation_on_style)) showAllSettings();
|
||||
const showAllPages = gradioApp().getElementById('settings_show_all_pages');
|
||||
if (showAllPages.style.display === 'none') return;
|
||||
const mutation = (mut) => mut.type === 'attributes' && mut.attributeName === 'style'
|
||||
if (mutations.some(mutation)) showAllSettings();
|
||||
});
|
||||
const tab_content_wrapper = document.createElement('div');
|
||||
tab_content_wrapper.className = 'tab-content';
|
||||
tab_nav_element.parentElement.insertBefore(tab_content_wrapper, tab_nav_element.nextSibling);
|
||||
tab_elements.forEach((elem, index) => {
|
||||
const tab_name = elem.id.replace('settings_', '');
|
||||
const indicator = gradioApp().getElementById(`modification_indicator_${tab_name}`);
|
||||
tab_nav_element.insertBefore(indicator, tab_nav_buttons[index]);
|
||||
tab_content_wrapper.appendChild(elem);
|
||||
const tabContentWrapper = document.createElement('div');
|
||||
tabContentWrapper.className = 'tab-content';
|
||||
tabNavElements.parentElement.insertBefore(tabContentWrapper, tabNavElements.nextSibling);
|
||||
tabElements.forEach((elem, index) => {
|
||||
const tabName = elem.id.replace('settings_', '');
|
||||
const indicator = gradioApp().getElementById(`modification_indicator_${tabName}`);
|
||||
tabNavElements.insertBefore(indicator, tabNavButtons[index]);
|
||||
tabContentWrapper.appendChild(elem);
|
||||
observer.observe(elem, { attributes: true, attributeFilter: ['style'] });
|
||||
});
|
||||
log('initSettings');
|
||||
|
|
|
|||
|
|
@ -73,10 +73,10 @@ class DiffusionSampler:
|
|||
return
|
||||
for key, value in config.get('All', {}).items(): # apply global defaults
|
||||
self.config[key] = value
|
||||
shared.log.debug(f'Sampler: name={name} type=all config={self.config}')
|
||||
# shared.log.debug(f'Sampler: name={name} type=all config={self.config}')
|
||||
for key, value in config.get(name, {}).items(): # apply diffusers per-scheduler defaults
|
||||
self.config[key] = value
|
||||
shared.log.debug(f'Sampler: name={name} type=scheduler config={self.config}')
|
||||
# shared.log.debug(f'Sampler: name={name} type=scheduler config={self.config}')
|
||||
if hasattr(model.scheduler, 'scheduler_config'): # find model defaults
|
||||
orig_config = model.scheduler.scheduler_config
|
||||
else:
|
||||
|
|
@ -84,11 +84,11 @@ class DiffusionSampler:
|
|||
for key, value in orig_config.items(): # apply model defaults
|
||||
if key in self.config:
|
||||
self.config[key] = value
|
||||
shared.log.debug(f'Sampler: name={name} type=model config={self.config}')
|
||||
# shared.log.debug(f'Sampler: name={name} type=model config={self.config}')
|
||||
for key, value in kwargs.items(): # apply user args, if any
|
||||
if key in self.config:
|
||||
self.config[key] = value
|
||||
shared.log.debug(f'Sampler: name={name} type=user config={self.config}')
|
||||
# shared.log.debug(f'Sampler: name={name} type=user config={self.config}')
|
||||
# finally apply user preferences
|
||||
if shared.opts.schedulers_prediction_type != 'default':
|
||||
self.config['prediction_type'] = shared.opts.schedulers_prediction_type
|
||||
|
|
|
|||
Loading…
Reference in New Issue