-#ifndef SYNFIG_NO_CLIP
- {
- //synfig::info("PasteCanv Clip");
- Rect area(desc.get_rect()&full_bounding_rect);
-
- Point min(area.get_min());
- Point max(area.get_max());
-
- if(desc.get_tl()[0]>desc.get_br()[0])
- swap(min[0],max[0]);
- if(desc.get_tl()[1]>desc.get_br()[1])
- swap(min[1],max[1]);
-
- const int
- x(floor_to_int((min[0]-desc.get_tl()[0])/desc.get_pw())),
- y(floor_to_int((min[1]-desc.get_tl()[1])/desc.get_ph())),
- w(ceil_to_int((max[0]-desc.get_tl()[0])/desc.get_pw())-x),
- h(ceil_to_int((max[1]-desc.get_tl()[1])/desc.get_ph())-y);
-
- desc.set_subwindow(x,y,w,h);
-
- Surface pastesurface;
-
- // \todo this used to also have "area.area()<=0.000001 || " - is it useful?
- // it was causing bug #1809480 (Zoom in beyond 8.75 in nested canvases fails)
- if(desc.get_w()==0 || desc.get_h()==0)
- {
- if(cb && !cb->amount_complete(10000,10000)) return false;