Projektordner im ⚙︎-Dialog änderbar: Registry-Eintrag neu zuordnen, autoMemoryDirectory + Edit-Permission ziehen auf den neuen Root um; gesperrt bei laufender Session

This commit is contained in:
marcus.hinz
2026-07-05 15:37:49 +02:00
parent 2075f9aa71
commit 0ebdaf0460
3 changed files with 94 additions and 0 deletions
+17
View File
@@ -182,6 +182,22 @@ async function openSettings(p: Project) {
}
}
// Projektordner neu zuordnen (Root, in dem die Session startet); verschoben
// wird nichts — der gewählte Ordner ist der neue Ort des Projekts.
async function changeProjectDir() {
const s = settings.value!;
const dir = await open({ directory: true, multiple: false });
if (typeof dir !== "string") return;
try {
await invoke("set_project_dir", { project: s.name, dir });
await refresh();
const p = projects.value.find((x) => x.name === s.name);
if (p) s.path = p.path;
} catch (e) {
error.value = String(e);
}
}
// Arbeitsordner schreiben direkt in die Projekt-settings.json
// (additionalDirectories + Edit-Permission) — kein Speichern-Schritt.
async function addWorkDir() {
@@ -624,6 +640,7 @@ onUnmounted(() => window.clearInterval(timer));
<span class="workdirs">
<span class="icon-row">
<span class="icon-path">{{ settings.path }}</span>
<button @click="changeProjectDir">{{ $t("projects.changeDir") }}</button>
</span>
<span v-for="wd in settings.workDirs" :key="wd" class="icon-row">
<span class="icon-path">{{ wd }}</span>
+2
View File
@@ -54,6 +54,7 @@ const de = {
addFolder: "Projekt importieren …",
addFolderTitle: "Bestehenden Ordner als Projekt aufnehmen",
addWorkDir: "Ordner hinzufügen …",
changeDir: "Ändern …",
wizardTitle: "Neues Projekt",
name: "Name",
projectDir: "Projektordner",
@@ -177,6 +178,7 @@ const en: typeof de = {
addFolder: "Import project …",
addFolderTitle: "Add an existing folder as a project",
addWorkDir: "Add folder …",
changeDir: "Change …",
wizardTitle: "New project",
name: "Name",
projectDir: "Project folder",