fix(modal,tags): five UX follow-ups
1. Hide 'archive' kind from /tags default view. Archive tags only appear when the user explicitly requests them via ?kind=archive. _get_tags_with_previews gains a default_excluded_kinds tuple that applies when no explicit kind filter is set. 2. Hide the 'Add' submit button on desktop (>=768px). Enter in the tag input (and in the fandom picker when no row is highlighted) already submits; the button is only needed for mobile virtual keyboards where Enter-to-submit is unreliable. 3. Fandom picker keyboard parity: ArrowUp/Down navigate rows, Enter picks a highlighted row or (if no row is highlighted) submits the whole add-tag form. Escape clears the highlight. Mirrors the main tagInput's keyboard block. 4. Tag editor merge bug: the edit modal populated nameInput.value with data.tag.display_name — for a character with a fandom, that value is 'Name (Fandom)'. Saving without stripping the suffix routed to a rename that never collided with the canonical bare name, so the merge offer never fired. Now uses data.tag.name (the bare form). The (Fandom) display is still shown in the fandom input which is rendered separately. 5. Fandom picker styling: match the main tag-form input — same padding, border, background, focus state. Drop the separate 'Fandom' label; the placeholder 'Fandom (optional)' now carries the label role. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
+27
-12
@@ -3046,24 +3046,39 @@ body.select-mode .gallery-infinite-container {
|
||||
opacity: 1;
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
.fandom-picker-label {
|
||||
display: block;
|
||||
font-size: 0.85rem;
|
||||
color: var(--muted, #888);
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
.fandom-picker-input-row {
|
||||
display: flex;
|
||||
gap: 0.25rem;
|
||||
gap: 0.5rem;
|
||||
align-items: center;
|
||||
}
|
||||
/* Match the main .tag-form input styling so the picker feels like the
|
||||
same control as the add-tag field above it. */
|
||||
.fandom-picker-input {
|
||||
flex: 1;
|
||||
padding: 0.4rem 0.6rem;
|
||||
background: var(--input-bg, #111);
|
||||
border: 1px solid var(--input-border, #333);
|
||||
border-radius: 0.25rem;
|
||||
color: var(--fg, #eee);
|
||||
padding: 0.5rem 0.75rem;
|
||||
border: 1px solid rgba(255, 255, 255, 0.2);
|
||||
border-radius: 6px;
|
||||
background: rgba(255, 255, 255, 0.08);
|
||||
color: var(--text);
|
||||
font-size: 16px;
|
||||
}
|
||||
.fandom-picker-input::placeholder {
|
||||
color: var(--text-muted);
|
||||
}
|
||||
.fandom-picker-input:focus {
|
||||
outline: none;
|
||||
border-color: var(--btn-primary);
|
||||
background: rgba(255, 255, 255, 0.12);
|
||||
}
|
||||
|
||||
/* Desktop: the form's submit button is redundant — Enter on the tag input
|
||||
(and Enter in the fandom picker when no row is highlighted) already
|
||||
submits. Keep the button visible on mobile where virtual keyboards make
|
||||
Enter-to-submit less reliable. */
|
||||
@media (min-width: 768px) {
|
||||
.tag-form > button[type="submit"] {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* Ambiguous-candidate picker (Task 24) */
|
||||
|
||||
Reference in New Issue
Block a user