diff --git a/src/views/LibraryView.vue b/src/views/LibraryView.vue
index 7acd1be..f1f3e09 100644
--- a/src/views/LibraryView.vue
+++ b/src/views/LibraryView.vue
@@ -330,10 +330,10 @@
{{ vlmSummaryLabel(ctxMenuFile?.file_uuid) }}
-
+
{{ sceneVlmIcon(ctxMenuFile?.file_uuid) }}
- {{ sceneVlmLabel(ctxMenuFile?.file_uuid) }}
+ {{ sceneVlmLabel(ctxMenuFile?.file_uuid) }}
@@ -1307,6 +1307,11 @@ function sceneVlmStats(fileUuid: string | undefined) {
return getFileStats(fileUuid)?.scene_vlm || null
}
+function hasSceneVlm(fileUuid: string | undefined): boolean {
+ const s = sceneVlmStats(fileUuid)
+ return s !== null && s.total_scenes > 0
+}
+
function sceneVlmClass(fileUuid: string | undefined): string {
const s = sceneVlmStats(fileUuid)
if (!s || s.total_scenes === 0) return ''
@@ -1323,7 +1328,8 @@ function sceneVlmIcon(fileUuid: string | undefined): string {
function sceneVlmLabel(fileUuid: string | undefined): string {
const s = sceneVlmStats(fileUuid)
- if (!s || s.total_scenes === 0) return ''
+ if (!s) return '—'
+ if (s.total_scenes === 0) return '—'
return `(${s.total_scenes})`
}
@@ -2297,6 +2303,8 @@ function resetFilters() {
.ms-proc-line { display: flex; align-items: center; }
.ms-face-th-input { margin-left: auto; width: 90px; padding: 4px 8px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; color: var(--text-primary); background: var(--bg-card); }
.ms-proc-count { margin-left: 4px; font-size: 11px; color: var(--text-secondary); }
+.ms-proc-clickable { cursor: pointer; text-decoration: underline; }
+.ms-proc-clickable:hover { color: var(--primary-color); }
.ms-fm-progress { position: relative; height: 20px; background: var(--border-light); border-radius: 4px; margin-top: 4px; overflow: hidden; }
.ms-fm-progress-bar { height: 100%; background: linear-gradient(90deg, var(--primary-color), #4285f4); border-radius: 4px; transition: width 0.3s; }
.ms-fm-progress-bar.indeterminate { width: 100%; background: linear-gradient(90deg, transparent, var(--primary-color), #4285f4, transparent); background-size: 200% 100%; animation: shimmer 1.5s infinite; }