[lasem] svg: set overflow to visible on outermost svg element
- From: Emmanuel Pacaud <emmanuel src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [lasem] svg: set overflow to visible on outermost svg element
- Date: Mon, 4 Jul 2016 19:36:31 +0000 (UTC)
commit f119ac9749e26e35af33f6cdcc39acef15990a16
Author: Emmanuel Pacaud <emmanuel gnome org>
Date: Mon Jul 4 21:34:08 2016 +0200
svg: set overflow to visible on outermost svg element
src/lsmsvgsvgelement.c | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
---
diff --git a/src/lsmsvgsvgelement.c b/src/lsmsvgsvgelement.c
index d06a625..a87d754 100644
--- a/src/lsmsvgsvgelement.c
+++ b/src/lsmsvgsvgelement.c
@@ -142,7 +142,8 @@ _svg_element_render (LsmSvgElement *self, LsmSvgView *view)
lsm_svg_view_show_viewport (view, &viewport);
lsm_svg_view_push_viewport (view, &viewport, is_viewbox_defined ? &svg->viewbox.value : NULL,
- &svg->preserve_aspect_ratio.value, LSM_SVG_OVERFLOW_HIDDEN);
+ &svg->preserve_aspect_ratio.value,
+ is_outermost_svg ? LSM_SVG_OVERFLOW_VISIBLE : LSM_SVG_OVERFLOW_HIDDEN);
LSM_SVG_ELEMENT_CLASS (parent_class)->render (self, view);
@@ -154,7 +155,12 @@ _svg_element_render (LsmSvgElement *self, LsmSvgView *view)
void
lsm_svg_svg_element_render (LsmSvgSvgElement *svg, LsmSvgView *view)
{
- lsm_svg_view_push_viewport (view, &svg->svg_box, NULL, NULL, LSM_SVG_OVERFLOW_HIDDEN);
+ gboolean is_outermost_svg;
+
+ is_outermost_svg = LSM_IS_SVG_DOCUMENT (lsm_dom_node_get_parent_node (LSM_DOM_NODE (svg)));
+
+ lsm_svg_view_push_viewport (view, &svg->svg_box, NULL, NULL,
+ is_outermost_svg ? LSM_SVG_OVERFLOW_VISIBLE : LSM_SVG_OVERFLOW_HIDDEN);
lsm_svg_element_render (LSM_SVG_ELEMENT (svg), view);
lsm_svg_view_pop_viewport (view);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]