1.1.5: settings/media folder details + empty-click deselects everything

- Settings → Media tab now shows per-folder image/audio counts, skipped
  subfolders, skipped files, and a rescan button. listClipart hard-skips
  subdirectories and unsupported file extensions, returning a skip
  report the panel renders.
- Empty-click anywhere — chrome, bare stage, empty timeline tracks —
  clears the full selection (layers, clip instances, keyframes) via a
  shared useDeselectAll helper. shouldChromeClickDeselect() splits
  exclusions into interactive elements, overlays, editing panels and
  timeline selection elements so empty timeline space deselects too.
This commit is contained in:
th committed 2026-04-25 09:42:36 +02:00
1 parent 3005d9310d
commit b0813a1d50
12 files changed
+669 -43

No files matched your search

+17
View File
@@ -0,0 +1,17 @@
import { useKfSelection } from '@/composables/useKfSelection'
import { useSceneStore } from '@/stores/scene'
/** Clear every selection-like piece of UI state in one shot — layers,
* clip instances, and timeline keyframes. Called from every "empty
* click" surface (chrome, empty stage, empty timeline) so the gesture
* carries the same meaning everywhere instead of each surface only
* clearing its own slice. */
export function useDeselectAll() {
const store = useSceneStore()
const { selectedKfs } = useKfSelection()
return function deselectAll() {
store.selectLayer(null)
store.selectClipInstance(null)
selectedKfs.value = []
}
}