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

ochosi pushed a 
commit to branch 
xfce-4.12
in repository xfce/xfce4-settings.

commit 54af000a25a1b6f95c5c91765c517bcaba5b3839
Author: Simon Steinbeiss <[email protected]>
Date:   Tue Feb 20 23:44:01 2018 +0100

    Make the visualisation follow the mouse-cursor
---
 dialogs/accessibility-settings/find-cursor.c | 28 +++++++++++++++++++++++++---
 1 file changed, 25 insertions(+), 3 deletions(-)

diff --git a/dialogs/accessibility-settings/find-cursor.c 
b/dialogs/accessibility-settings/find-cursor.c
index a34f7b3..77a2545 100644
--- a/dialogs/accessibility-settings/find-cursor.c
+++ b/dialogs/accessibility-settings/find-cursor.c
@@ -44,6 +44,21 @@ gboolean timeout (gpointer data)
 }
 
 
+static gboolean
+find_cursor_motion_notify_event (GtkWidget      *widget,
+                                 GdkEventMotion *event,
+                                 gpointer userdata)
+{
+    GdkWindow *window = gtk_widget_get_window (widget);
+    gint x, y, root_x, root_y;
+
+    gdk_window_get_pointer (window, &x, &y, NULL);
+    gtk_window_get_position (GTK_WINDOW (widget), &root_x, &root_y);
+    gtk_window_move (GTK_WINDOW (widget), root_x + x - 250, root_y + y - 250);
+    return FALSE;
+}
+
+
 static void
 find_cursor_window_screen_changed (GtkWidget *widget,
                                    GdkScreen *old_screen,
@@ -162,12 +177,19 @@ main (gint argc, gchar **argv)
     /* center the window around the mouse cursor */
     gtk_window_move (GTK_WINDOW (window), x - 250, y - 250);
 
+
+    /* make the circles follow the mouse cursor */
+    gtk_widget_set_events (window, GDK_POINTER_MOTION_MASK);
+    g_signal_connect (G_OBJECT (window), "motion-notify-event",
+                      G_CALLBACK (find_cursor_motion_notify_event), NULL);
+
     g_signal_connect (G_OBJECT (window), "expose-event",
                       G_CALLBACK (find_cursor_window_expose), NULL);
-    g_signal_connect (G_OBJECT(window), "screen-changed",
+    g_signal_connect (G_OBJECT (window), "screen-changed",
                       G_CALLBACK (find_cursor_window_screen_changed), NULL);
-    g_signal_connect (G_OBJECT(window), "destroy",
-                      G_CALLBACK(gtk_main_quit), NULL);
+    g_signal_connect (G_OBJECT (window), "destroy",
+                      G_CALLBACK (gtk_main_quit), NULL);
+
     find_cursor_window_screen_changed (window, NULL, NULL);
     gtk_widget_show_all (window);
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.
_______________________________________________
Xfce4-commits mailing list
[email protected]
https://mail.xfce.org/mailman/listinfo/xfce4-commits

Reply via email to