Explorateur : vignettes, sélection et déplacement multiples
- vue vignettes/liste, miniatures générées à la sauvegarde et à la demande - multi-sélection (cases, Ctrl/Maj+clic, Ctrl+A, Échap, Suppr) - glisser-déposer de la sélection, dialogue « Déplacer vers… » tactile Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZ78TqR7fgtRx3rvpNUbAL
This commit is contained in:
1 parent
66eb1c08de
commit
d04350df7a
6 files changed
+548
-3
No files matched your search
@@ -16,6 +16,7 @@ import type {
|
||||
import type { OrderedExcalidrawElement } from "@excalidraw/excalidraw/element/types";
|
||||
import { api, ApiError, basename, stripExt } from "./api";
|
||||
import { Explorer } from "./Explorer";
|
||||
import { storeThumb } from "./thumbs";
|
||||
|
||||
type Theme = "light" | "dark";
|
||||
type SaveState = "saved" | "dirty" | "saving" | "error";
|
||||
@@ -91,6 +92,8 @@ export default function App() {
|
||||
try {
|
||||
etagRef.current = await api.write(path, body, force ? "" : etagRef.current);
|
||||
savedVersion.current = version;
|
||||
// Miniature pour l'explorateur ; un échec n'affecte pas la sauvegarde.
|
||||
await storeThumb(path, elements, appState, files).catch((e) => console.warn("miniature", e));
|
||||
// D'autres modifications ont pu arriver pendant l'envoi.
|
||||
const now = sceneVersion(ex.getSceneElements(), ex.getAppState(), ex.getFiles());
|
||||
setSaveState(now === version ? "saved" : "dirty");
|
||||
|
||||
Reference in new issue
Block a user