Fix Metaballs::get_color() so it takes the context into account.
[synfig.git] / synfig-core / trunk / src / synfig / layer_pastecanvas.cpp
index 2423392..f8006e4 100644 (file)
@@ -212,6 +212,8 @@ Layer_PasteCanvas::set_sub_canvas(etl::handle<synfig::Canvas> x)
 
        child_changed_connection.disconnect();
 
+       if (canvas != x) signal_subcanvas_changed()();
+
        canvas=x;
 
        /*if(canvas)
@@ -411,7 +413,7 @@ Layer_PasteCanvas::accelerated_render(Context context,Surface *surface,int quali
                if (blend_method==Color::BLEND_COMPOSITE) blend_using_straight = true;
        }
 
-       if (!etl::intersect(context.get_full_bounding_rect(),full_bounding_rect+origin))
+       if (!etl::intersect(context.get_full_bounding_rect(),(full_bounding_rect*exp(zoom))+origin))
        {
                // if there's no intersection between the context and our
                // surface, and we're rendering 'onto', then we're done