diff options
Diffstat (limited to 'lwlib/lwlib-Xm.c')
-rw-r--r-- | lwlib/lwlib-Xm.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lwlib/lwlib-Xm.c b/lwlib/lwlib-Xm.c index fa60fc89d08..25b1cc6b121 100644 --- a/lwlib/lwlib-Xm.c +++ b/lwlib/lwlib-Xm.c @@ -290,7 +290,12 @@ xm_arm_callback (Widget w, XtPointer client_data, XtPointer call_data) if (w != NULL) { instance = lw_get_widget_instance (w); - if (instance && instance->info->highlight_cb) + + if (instance && instance->info->highlight_cb + && (cbs->reason == XmCR_DISARM + || (cbs->event + && (cbs->event->type == EnterNotify + || cbs->event->type == MotionNotify)))) { call_data = cbs->reason == XmCR_DISARM ? NULL : wv; instance->info->highlight_cb (w, instance->info->id, call_data); |