Reduce history system's excessive memory usage from storing copies of images each step (#845)

* Limit saved undo history

* Do not commit path every mouse move event

* Reference count images in history system instead of cloning the image data

* Increase history storage step limit to 100

Co-authored-by: Keavon Chambers <keavon@keavon.com>
This commit is contained in:
0HyperCube
2022-11-11 19:44:43 +00:00
committed by Keavon Chambers
co-authored by Keavon Chambers
parent a756a2dd3b
commit 9d27781c37
10 changed files with 39 additions and 23 deletions
+1 -1
View File
@@ -53,7 +53,7 @@ pub enum ImaginateStatus {
#[derive(Debug, Clone, Eq, PartialEq, Deserialize, Serialize)]
pub struct ImaginateImageData {
#[serde(serialize_with = "base64_serde::as_base64", deserialize_with = "base64_serde::from_base64")]
pub image_data: Vec<u8>,
pub image_data: std::rc::Rc<Vec<u8>>,
}
#[derive(Debug, Clone, PartialEq, Deserialize, Serialize)]