[librsvg] NodeSvg::get_size(): Take a Dpi, not separate dpi_x/dpi_y values



commit 7267f1a80825c6f508c0a3b63f6d1a390b0f1808
Author: Federico Mena Quintero <federico gnome org>
Date:   Wed Dec 19 12:41:31 2018 -0600

    NodeSvg::get_size(): Take a Dpi, not separate dpi_x/dpi_y values

 rsvg_internals/src/handle.rs    | 2 +-
 rsvg_internals/src/structure.rs | 6 +++++-
 2 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/rsvg_internals/src/handle.rs b/rsvg_internals/src/handle.rs
index 5d388d30..fa743b0a 100644
--- a/rsvg_internals/src/handle.rs
+++ b/rsvg_internals/src/handle.rs
@@ -300,7 +300,7 @@ impl Handle {
 
         if is_root {
             if let Some((root_width, root_height)) =
-                node.with_impl(|svg: &NodeSvg| svg.get_size(self.dpi.x(), self.dpi.y()))
+                node.with_impl(|svg: &NodeSvg| svg.get_size(&self.dpi))
             {
                 let ink_r = RsvgRectangle {
                     x: 0.0,
diff --git a/rsvg_internals/src/structure.rs b/rsvg_internals/src/structure.rs
index 580953a6..a4448301 100644
--- a/rsvg_internals/src/structure.rs
+++ b/rsvg_internals/src/structure.rs
@@ -5,6 +5,7 @@ use aspect_ratio::*;
 use attributes::Attribute;
 use css::CssStyles;
 use defs::Fragment;
+use dpi::Dpi;
 use drawing_ctx::DrawingCtx;
 use error::{AttributeResultExt, RenderingError};
 use float_eq_cairo::ApproxEqCairo;
@@ -121,7 +122,10 @@ impl NodeSvg {
         }
     }
 
-    pub fn get_size(&self, dpi_x: f64, dpi_y: f64) -> Option<(i32, i32)> {
+    pub fn get_size(&self, dpi: &Dpi) -> Option<(i32, i32)> {
+        let dpi_x = dpi.x();
+        let dpi_y = dpi.y();
+
         match (self.w.get(), self.h.get(), self.vbox.get()) {
             (w, h, Some(vb)) => Some((
                 w.hand_normalize(dpi_x, vb.0.width, 12.0).round() as i32,


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