[pinpoint] clutter: don't hide cursor when stage was left.



commit 94b2ec0e11195c1b8e6993980ecb6913faee8cfd
Author: Mathieu Duponchelle <mduponchelle1 gmail com>
Date:   Sun Oct 20 18:50:13 2013 +0200

    clutter: don't hide cursor when stage was left.
    
    Fixes : https://bugzilla.gnome.org/show_bug.cgi?id=710554

 pp-clutter.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
---
diff --git a/pp-clutter.c b/pp-clutter.c
index f05946e..408e012 100644
--- a/pp-clutter.c
+++ b/pp-clutter.c
@@ -488,6 +488,17 @@ static void commandline_notify_cb (ClutterActor *actor,
   clutter_actor_set_scale (actor, scale, scale);
 }
 
+static gboolean stage_left (ClutterActor *actor,
+                            ClutterEvent *event,
+                            gpointer      renderer)
+{
+  if (hide_cursor)
+    g_source_remove (hide_cursor);
+
+  hide_cursor = 0;
+  clutter_stage_show_cursor (CLUTTER_STAGE (actor));
+}
+
 static gboolean stage_motion (ClutterActor *actor,
                               ClutterEvent *event,
                               gpointer      renderer)
@@ -999,6 +1010,8 @@ clutter_renderer_init (PinPointRenderer   *pp_renderer,
                     G_CALLBACK (stage_resized), renderer);
   g_signal_connect (stage, "motion-event",
                     G_CALLBACK (stage_motion), renderer);
+  g_signal_connect (stage, "leave-event",
+                    G_CALLBACK (stage_left), renderer);
   g_signal_connect (renderer->commandline, "activate",
                     G_CALLBACK (commandline_action_cb), renderer);
   g_signal_connect (renderer->commandline, "captured-event",


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