Skip to content

Commit 5a85062

Browse files
Rich-HarrisRich Harris
andauthored
preserve state when renaming file (sveltejs#344)
* preserve state when renaming file * actually on second thoughts --------- Co-authored-by: Rich Harris <[email protected]>
1 parent d2a5d25 commit 5a85062

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/routes/tutorial/[slug]/filetree/Filetree.svelte

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import Folder from './Folder.svelte';
55
import * as context from './context.js';
66
import Modal from '$lib/components/Modal.svelte';
7-
import { files, solution, reset_files, create_directories } from '../state.js';
7+
import { files, solution, reset_files, create_directories, selected_name } from '../state.js';
88
import { afterNavigate } from '$app/navigation';
99
1010
/** @type {import('$lib/types').Exercise} */
@@ -93,10 +93,16 @@
9393
}
9494
}
9595
96+
const was_selected = $selected_name === to_rename.name;
97+
9698
to_rename.basename = /** @type {string} */ (new_full_name.split('/').pop());
9799
to_rename.name = new_full_name;
98100
99101
reset_files([...$files, ...create_directories(new_full_name, $files)]);
102+
103+
if (was_selected) {
104+
dispatch('select', { name: new_full_name });
105+
}
100106
},
101107
102108
remove: async (file) => {

0 commit comments

Comments
 (0)