]> Pileus Git - grits/blobdiff - src/objects/grits-object.c
Add motion threshold when clicking objects
[grits] / src / objects / grits-object.c
index 2eb6b5c2af704ad619b9f4daa7f6e530db052603..2812b9e3d647e72a9919b77936e3e4849237b367 100644 (file)
@@ -211,11 +211,13 @@ gboolean grits_object_event(GritsObject *object, GdkEvent *event)
 
        /* Handle button click */
        if (sig == SIG_BUTTON_PRESS)
-               object->state.clicking = TRUE;
+               object->state.clicking  = GRITS_CLICK_THRESHOLD;
+       if (sig == SIG_MOTION && object->state.clicking)
+               object->state.clicking -= 1;
        if (sig == SIG_BUTTON_RELEASE && object->state.clicking)
                g_signal_emit(object, signals[SIG_CLICKED], 0, event, &rval);
-       if (sig == SIG_BUTTON_RELEASE || sig == SIG_MOTION)
-               object->state.clicking = FALSE;
+       if (sig == SIG_BUTTON_RELEASE)
+               object->state.clicking  = 0;
 
        /* Emit this signal */
        if (rval == FALSE) {