[Xfce4-commits] [xfce/xfce4-settings] 18/27: Workaround for non-compositing mode

noreply at xfce.org noreply at xfce.org
Sun Feb 25 23:56:27 CET 2018


This is an automated email from the git hooks/post-receive script.

o   c   h   o   s   i       p   u   s   h   e   d       a       c   o   m   m   i   t       t   o       b   r   a   n   c   h       x   f   c   e   -   4   .   1   2   
   in repository xfce/xfce4-settings.

commit e72d7382db1a328ea170c359220ded4830909bc2
Author: Florian Schüller <florian.schueller at gmail.com>
Date:   Sat Feb 24 00:46:16 2018 +0100

    Workaround for non-compositing mode
---
 dialogs/accessibility-settings/find-cursor.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/dialogs/accessibility-settings/find-cursor.c b/dialogs/accessibility-settings/find-cursor.c
index 399824d..6908f65 100644
--- a/dialogs/accessibility-settings/find-cursor.c
+++ b/dialogs/accessibility-settings/find-cursor.c
@@ -41,6 +41,9 @@ double px = 1;
 /* size of the final circles */
 gint circle_size=500;
 
+/* gdk_cairo_set_source_pixbuf() crashes with 0,0 */
+gint workaround_offset = 1;
+
 gboolean timeout (gpointer data)
 {
     GtkWidget *widget = GTK_WIDGET (data);
@@ -61,8 +64,8 @@ static GdkPixbuf
                                       x,
                                       y,
                                       0, 0,
-                                      circle_size,
-                                      circle_size);
+                                      circle_size + workaround_offset,
+                                      circle_size + workaround_offset);
     return screenshot;
 }
 
@@ -127,14 +130,14 @@ find_cursor_window_expose (GtkWidget *widget,
     else {
         /* only take a screenshot once in the first iteration */
         if (px == 1) {
-            pixbuf = get_rectangle_screenshot (root_x + x - (circle_size / 2) + 1, root_y + y - (circle_size / 2) , widget);
+            pixbuf = get_rectangle_screenshot (root_x + x - (circle_size / 2) - workaround_offset, root_y + y - (circle_size / 2) - workaround_offset, widget);
             if (!pixbuf)
                 g_warning("Getting screenshot failed");
         }
 
         if (pixbuf) {
     	    /* FIXME: use 0,0 as coordinates */
-            gdk_cairo_set_source_pixbuf (cr, pixbuf, 1, 0);
+            gdk_cairo_set_source_pixbuf (cr, pixbuf, 0 - workaround_offset, 0 - workaround_offset);
         }
     }
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list