[gtk/wip/otte/for-master] gtk-demo: Don't use deprecated librsvg API




commit 061026f21f61882441f28d6797565a181671e7a9
Author: Benjamin Otte <otte redhat com>
Date:   Tue Nov 9 20:28:53 2021 +0100

    gtk-demo: Don't use deprecated librsvg API
    
    New API requires a newer librsvg version, so require that one.

 demos/gtk-demo/meson.build    |  2 +-
 demos/gtk-demo/svgpaintable.c | 14 ++++++++------
 2 files changed, 9 insertions(+), 7 deletions(-)
---
diff --git a/demos/gtk-demo/meson.build b/demos/gtk-demo/meson.build
index 2248b60b19..94f2f45415 100644
--- a/demos/gtk-demo/meson.build
+++ b/demos/gtk-demo/meson.build
@@ -140,7 +140,7 @@ if os_unix
   demos += files('pagesetup.c')
 endif
 
-librsvg_dep = dependency('librsvg-2.0', version: '>= 2.46.0', required: false)
+librsvg_dep = dependency('librsvg-2.0', version: '>= 2.52.0', required: false)
 
 if librsvg_dep.found()
   demos += files('paintable_svg.c')
diff --git a/demos/gtk-demo/svgpaintable.c b/demos/gtk-demo/svgpaintable.c
index 21879ed0d9..2779ac63e6 100644
--- a/demos/gtk-demo/svgpaintable.c
+++ b/demos/gtk-demo/svgpaintable.c
@@ -47,22 +47,24 @@ static int
 svg_paintable_get_intrinsic_width (GdkPaintable *paintable)
 {
   SvgPaintable *self = SVG_PAINTABLE (paintable);
-  RsvgDimensionData data;
+  double width;
 
-  rsvg_handle_get_dimensions (self->handle, &data);
+  if (!rsvg_handle_get_intrinsic_size_in_pixels (self->handle, &width, NULL))
+    return 0;
 
-  return data.width;
+  return ceil (width);
 }
 
 static int
 svg_paintable_get_intrinsic_height (GdkPaintable *paintable)
 {
   SvgPaintable *self = SVG_PAINTABLE (paintable);
-  RsvgDimensionData data;
+  double height;
 
-  rsvg_handle_get_dimensions (self->handle, &data);
+  if (!rsvg_handle_get_intrinsic_size_in_pixels (self->handle, NULL, &height))
+    return 0;
 
-  return data.height;
+  return ceil (height);
 }
 
 static void


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]