[gnome-chess] Avoid deprecated use of librsvg



commit 48a1ae651aa20f3a756e44102e85d30f26d1fd45
Author: Michael Catanzaro <mcatanzaro gnome org>
Date:   Fri Dec 4 15:45:16 2020 -0600

    Avoid deprecated use of librsvg

 src/chess-view.vala  | 22 ++++++++++------------
 src/gnome-chess.vala |  5 +----
 2 files changed, 11 insertions(+), 16 deletions(-)
---
diff --git a/src/chess-view.vala b/src/chess-view.vala
index d722890..dda4866 100644
--- a/src/chess-view.vala
+++ b/src/chess-view.vala
@@ -67,21 +67,19 @@ public class ChessView : Gtk.DrawingArea
         }
         catch (Error e)
         {
-            stderr.printf ("Failed to load piece svg: %s\n", e.message);
+            warning ("Failed to load piece SVG: %s", e.message);
             return;
         }
 
-        c1.save ();
-        c1.translate (square_size * offset, 0);
-        c1.scale ((double) square_size / handle.width, (double) square_size / handle.height);
-        handle.render_cairo (c1);
-        c1.restore ();
-
-        c2.save ();
-        c2.translate (selected_square_size * offset, 0);
-        c2.scale ((double) selected_square_size / handle.width, (double) selected_square_size / 
handle.height);
-        handle.render_cairo (c2);
-        c2.restore ();
+        try
+        {
+            handle.render_document (c1, Rsvg.Rectangle () { height = square_size, width = square_size, x = 
square_size * offset, y = 0 });
+            handle.render_document (c2, Rsvg.Rectangle () { height = selected_square_size, width = 
selected_square_size, x = selected_square_size * offset, y = 0 });
+        }
+        catch (Error e)
+        {
+            warning ("Failed to render piece SVG: %s", e.message);
+        }
     }
 
     private void load_theme (Cairo.Context c)
diff --git a/src/gnome-chess.vala b/src/gnome-chess.vala
index e249a03..f5f142f 100644
--- a/src/gnome-chess.vala
+++ b/src/gnome-chess.vala
@@ -380,10 +380,7 @@ Copyright © 2015–2016 Sahil Sareen""";
 
             var s = new Cairo.ImageSurface (Cairo.Format.ARGB32, width, height);
             var c = new Cairo.Context (s);
-            var m = Cairo.Matrix.identity ();
-            m.scale ((double) width / h.width, (double) height / h.height);
-            c.set_matrix (m);
-            h.render_cairo (c);
+            h.render_document (c, Rsvg.Rectangle () { width = width, height = height, x = 0, y = 0 });
 
             var p = Gdk.pixbuf_get_from_surface (s, 0, 0, width, height);
             image.set_from_pixbuf (p);


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