mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-22 13:08:12 +08:00
Implement multiple clipboards (#425)
* Imeplement multiple Clipboards * Cargo fmt * Fix unit tests * Fix console error caused by the Pen Tool (#432) * Fix error in pen tool * Cleanup * Split make operation and remove preview Co-authored-by: Keavon Chambers <keavon@keavon.com> * Fix line centering (#431) * cargo fmt Co-authored-by: 0HyperCube <78500760+0HyperCube@users.noreply.github.com>
This commit is contained in:
committed by
Keavon Chambers
co-authored by
Keavon Chambers
0HyperCube
parent
e09a606285
commit
1eb83d92c4
@@ -7,6 +7,7 @@ use super::transform_layer_handler::{TransformLayerMessage, TransformLayerMessag
|
||||
|
||||
use crate::consts::DEFAULT_DOCUMENT_NAME;
|
||||
use crate::consts::{ASYMPTOTIC_EFFECT, FILE_EXPORT_SUFFIX, FILE_SAVE_SUFFIX, SCALE_EFFECT, SCROLLBAR_SPACING};
|
||||
use crate::document::Clipboard;
|
||||
use crate::input::InputPreprocessor;
|
||||
use crate::message_prelude::*;
|
||||
use crate::EditorError;
|
||||
@@ -541,12 +542,13 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
|
||||
let mut new_folder_path = common_prefix.to_vec();
|
||||
new_folder_path.push(generate_uuid());
|
||||
|
||||
responses.push_back(DocumentsMessage::Copy.into());
|
||||
responses.push_back(DocumentsMessage::Copy(Clipboard::System).into());
|
||||
responses.push_back(DocumentMessage::DeleteSelectedLayers.into());
|
||||
responses.push_back(DocumentOperation::CreateFolder { path: new_folder_path.clone() }.into());
|
||||
responses.push_back(DocumentMessage::ToggleLayerExpansion(new_folder_path.clone()).into());
|
||||
responses.push_back(
|
||||
DocumentsMessage::PasteIntoFolder {
|
||||
clipboard: Clipboard::System,
|
||||
path: new_folder_path.clone(),
|
||||
insert_index: -1,
|
||||
}
|
||||
@@ -792,9 +794,16 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
|
||||
responses.push_back(ToolMessage::SelectedLayersChanged.into());
|
||||
}
|
||||
MoveSelectedLayersTo { path, insert_index } => {
|
||||
responses.push_back(DocumentsMessage::Copy.into());
|
||||
responses.push_back(DocumentsMessage::Copy(Clipboard::System).into());
|
||||
responses.push_back(DocumentMessage::DeleteSelectedLayers.into());
|
||||
responses.push_back(DocumentsMessage::PasteIntoFolder { path, insert_index }.into());
|
||||
responses.push_back(
|
||||
DocumentsMessage::PasteIntoFolder {
|
||||
clipboard: Clipboard::System,
|
||||
path,
|
||||
insert_index,
|
||||
}
|
||||
.into(),
|
||||
);
|
||||
}
|
||||
ReorderSelectedLayers(relative_position) => {
|
||||
self.backup(responses);
|
||||
|
||||
Reference in New Issue
Block a user