X-Git-Url: http://pileus.org/git/?p=grits;a=blobdiff_plain;f=src%2Fobjects%2Fgrits-object.c;h=2812b9e3d647e72a9919b77936e3e4849237b367;hp=2eb6b5c2af704ad619b9f4daa7f6e530db052603;hb=d55c77bbf477e582a8525ac831ad97b035b8185d;hpb=fde5359a826dadb68cfe3f62f0f3c9e0c25f3438 diff --git a/src/objects/grits-object.c b/src/objects/grits-object.c index 2eb6b5c..2812b9e 100644 --- a/src/objects/grits-object.c +++ b/src/objects/grits-object.c @@ -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) {