Skip to content

Commit acb6ae2

Browse files
committed
Keep selection during reordering
1 parent cbfb93f commit acb6ae2

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

core/document/src/document.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -309,9 +309,14 @@ impl Document {
309309
Operation::PasteLayer { path, layer, insert_index } => {
310310
let folder = self.folder_mut(path)?;
311311
//FIXME: This clone of layer should be avoided somehow
312-
folder.add_layer(layer.clone(), *insert_index).ok_or(DocumentError::IndexOutOfBounds)?;
312+
let id = folder.add_layer(layer.clone(), *insert_index).ok_or(DocumentError::IndexOutOfBounds)?;
313+
let path = [path.clone(), vec![id]].concat();
313314

314-
Some(vec![DocumentResponse::DocumentChanged, DocumentResponse::FolderChanged { path: path.clone() }])
315+
Some(vec![
316+
DocumentResponse::DocumentChanged,
317+
DocumentResponse::SelectLayer { path: path.clone() },
318+
DocumentResponse::FolderChanged { path },
319+
])
315320
}
316321
Operation::DuplicateLayer { path } => {
317322
let layer = self.layer(&path)?.clone();

0 commit comments

Comments
 (0)