Keep Use as input from filling the seed box, and offer the source seed as an Apply label instead.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+43
-6
@@ -918,7 +918,16 @@
|
||||
</template>
|
||||
</div>
|
||||
<label class="block max-w-xs text-sm">
|
||||
<span class="mb-1 block text-zinc-400">Seed</span>
|
||||
<span class="mb-1 flex items-center justify-between gap-2 text-zinc-400">
|
||||
Seed
|
||||
<button
|
||||
v-if="inputSeed"
|
||||
type="button"
|
||||
class="min-w-0 truncate text-[11px] font-medium text-amber-300 hover:text-amber-100"
|
||||
:title="'Fill the seed box with ' + inputSeed"
|
||||
@click.prevent="applyInputSeed"
|
||||
>Apply {{ inputSeed }}</button>
|
||||
</span>
|
||||
<input v-model="seedInput" class="w-full rounded-xl border border-white/10 bg-zinc-950 px-3 py-2 text-sm" placeholder="random">
|
||||
</label>
|
||||
<label v-if="v2Engine !== 'krea'" class="flex cursor-pointer items-center gap-2 text-xs text-zinc-400">
|
||||
@@ -1011,7 +1020,16 @@
|
||||
>
|
||||
</label>
|
||||
<label class="col-span-2 block text-sm">
|
||||
<span class="mb-1 block text-zinc-400">Seed</span>
|
||||
<span class="mb-1 flex items-center justify-between gap-2 text-zinc-400">
|
||||
Seed
|
||||
<button
|
||||
v-if="inputSeed"
|
||||
type="button"
|
||||
class="min-w-0 truncate text-[11px] font-medium text-amber-300 hover:text-amber-100"
|
||||
:title="'Fill the seed box with ' + inputSeed"
|
||||
@click.prevent="applyInputSeed"
|
||||
>Apply {{ inputSeed }}</button>
|
||||
</span>
|
||||
<input v-model="seedInput" class="w-full rounded-xl border border-white/10 bg-zinc-950 px-3 py-2 text-sm" placeholder="random">
|
||||
</label>
|
||||
</div>
|
||||
@@ -1037,7 +1055,16 @@
|
||||
</div>
|
||||
</div>
|
||||
<label class="block text-sm">
|
||||
<span class="mb-1 block text-zinc-400">Seed</span>
|
||||
<span class="mb-1 flex items-center justify-between gap-2 text-zinc-400">
|
||||
Seed
|
||||
<button
|
||||
v-if="inputSeed"
|
||||
type="button"
|
||||
class="min-w-0 truncate text-[11px] font-medium text-amber-300 hover:text-amber-100"
|
||||
:title="'Fill the seed box with ' + inputSeed"
|
||||
@click.prevent="applyInputSeed"
|
||||
>Apply {{ inputSeed }}</button>
|
||||
</span>
|
||||
<input v-model="seedInput" class="w-full rounded-xl border border-white/10 bg-zinc-950 px-3 py-2" placeholder="random">
|
||||
</label>
|
||||
<div>
|
||||
@@ -2529,6 +2556,17 @@ const samplerName = ref('res_multistep')
|
||||
const scheduler = ref('simple')
|
||||
const duration = ref(5)
|
||||
const seedInput = ref('random')
|
||||
const inputSeed = ref('')
|
||||
|
||||
function rememberInputSeed(raw: unknown) {
|
||||
const value = Number(raw)
|
||||
inputSeed.value = Number.isFinite(value) ? String(Math.round(value)) : ''
|
||||
}
|
||||
|
||||
function applyInputSeed() {
|
||||
if (!inputSeed.value) return
|
||||
seedInput.value = inputSeed.value
|
||||
}
|
||||
const withSound = ref(true)
|
||||
const hideThumbnail = ref(false)
|
||||
const hideInputPreview = ref(false)
|
||||
@@ -5646,7 +5684,7 @@ async function rerun(item: LibraryClip, collection = false) {
|
||||
clipName.value = restoreAll
|
||||
? (familyBaseName(collectionTitle({ head: target, parts })) || target.name || '')
|
||||
: (target.name || '')
|
||||
seedInput.value = String(target.seed)
|
||||
rememberInputSeed(target.seed)
|
||||
restoreAdvanced(target)
|
||||
duration.value = clipGenerateDuration(target)
|
||||
hideThumbnail.value = showPrivacyToggles.value && target.hideThumbnail
|
||||
@@ -5988,6 +6026,7 @@ function applyStillSettings(still: LibraryStill) {
|
||||
const settings = still.settings
|
||||
folderId.value = still.folderId
|
||||
browseFolderId.value = still.folderId
|
||||
rememberInputSeed(settings?.seed)
|
||||
applyPromptRestore(still.prompt || '', still)
|
||||
if (dest === 'imagev2') {
|
||||
studioMode.value = 'editv2'
|
||||
@@ -6013,7 +6052,6 @@ function applyStillSettings(still: LibraryStill) {
|
||||
v2Height.value = size.height
|
||||
}
|
||||
if (mode === 'compose' && settings.task) v2Task.value = settings.task
|
||||
if (settings.seed != null) seedInput.value = String(Math.round(settings.seed))
|
||||
imageV2LoraStack.value = mergeLegacyImageV2Loras(
|
||||
settings.loraStack?.length || settings.loraName ? readLoraStack(settings) : imageV2LoraStack.value,
|
||||
{
|
||||
@@ -6040,7 +6078,6 @@ function applyStillSettings(still: LibraryStill) {
|
||||
if (settings.loraStack?.length || settings.loraName) {
|
||||
imageLoraStack.value = filterLoraStackForStudio(readLoraStack(settings), ltxEnabled.value)
|
||||
}
|
||||
if (settings.seed != null) seedInput.value = String(Math.round(settings.seed))
|
||||
aspect.value = parseImageAspect(settings.aspect)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user