From ccbda4ddb052e3a9ae76e544c3f9af6ebc220531 Mon Sep 17 00:00:00 2001 From: buliabyak Date: Tue, 5 Aug 2008 18:40:15 +0000 Subject: [PATCH] fix 252547: skip explicitly hidden objects when calculating bbox of group --- src/display/nr-arena-group.cpp | 3 ++- src/sp-item-group.cpp | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/display/nr-arena-group.cpp b/src/display/nr-arena-group.cpp index 51f1c6b2f..716a9f9fd 100644 --- a/src/display/nr-arena-group.cpp +++ b/src/display/nr-arena-group.cpp @@ -181,7 +181,8 @@ nr_arena_group_update (NRArenaItem *item, NRRectL *area, NRGC *gc, unsigned int if (beststate & NR_ARENA_ITEM_STATE_BBOX) { nr_rect_l_set_empty (&item->bbox); for (NRArenaItem *child = group->children; child != NULL; child = child->next) { - nr_rect_l_union (&item->bbox, &item->bbox, &child->bbox); + if (child->visible) + nr_rect_l_union (&item->bbox, &item->bbox, &child->bbox); } } diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index 9e6333f97..80089df35 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -701,7 +701,7 @@ void CGroup::calculateBBox(NRRect *bbox, NR::Matrix const &transform, unsigned c GSList *l = _group->childList(false, SPObject::ActionBBox); while (l) { SPObject *o = SP_OBJECT (l->data); - if (SP_IS_ITEM(o)) { + if (SP_IS_ITEM(o) && !SP_ITEM(o)->isHidden()) { SPItem *child = SP_ITEM(o); NR::Matrix const ct(child->transform * transform); sp_item_invoke_bbox_full(child, &dummy_bbox, ct, flags, FALSE); -- 2.30.2