From 266d0b9127b4460b1a26a2f59507102bcc53988b Mon Sep 17 00:00:00 2001 From: Yousef Khadadeh Date: Mon, 15 Dec 2025 17:40:28 +0300 Subject: [PATCH] Removed an extra canvas restore call --- src/CanvasComponents/BrushStrokeCanvasComponent.cpp | 1 - src/CanvasComponents/CanvasComponentContainer.cpp | 10 ++++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/CanvasComponents/BrushStrokeCanvasComponent.cpp b/src/CanvasComponents/BrushStrokeCanvasComponent.cpp index cfbddd8..4ede464 100644 --- a/src/CanvasComponents/BrushStrokeCanvasComponent.cpp +++ b/src/CanvasComponents/BrushStrokeCanvasComponent.cpp @@ -43,7 +43,6 @@ void BrushStrokeCanvasComponent::draw(SkCanvas* canvas, const DrawData& drawData canvas->drawPath(*brushPath, paint); else canvas->drawPath(*brushPathLOD[mipmapLevel - 1], paint); - canvas->restore(); } void BrushStrokeCanvasComponent::set_data_from(const CanvasComponent& other) { diff --git a/src/CanvasComponents/CanvasComponentContainer.cpp b/src/CanvasComponents/CanvasComponentContainer.cpp index 5809cf3..2ca5479 100644 --- a/src/CanvasComponents/CanvasComponentContainer.cpp +++ b/src/CanvasComponents/CanvasComponentContainer.cpp @@ -56,10 +56,12 @@ void CanvasComponentContainer::load_file(cereal::PortableBinaryInputArchive& a, } void CanvasComponentContainer::draw(SkCanvas* canvas, const DrawData& drawData) const { - canvas->save(); - canvas_do_transform(canvas, calculate_draw_transform(drawData)); - get_comp().draw(canvas, drawData); - canvas->restore(); + if(should_draw(drawData)) { + canvas->save(); + canvas_do_transform(canvas, calculate_draw_transform(drawData)); + get_comp().draw(canvas, drawData); + canvas->restore(); + } } void CanvasComponentContainer::set_owner_obj_info(const ObjInfoSharedPtr& ownerObjInfo) {