diff options
| -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) | |||
| 290 | if (w != NULL) | 290 | if (w != NULL) |
| 291 | { | 291 | { |
| 292 | instance = lw_get_widget_instance (w); | 292 | instance = lw_get_widget_instance (w); |
| 293 | if (instance && instance->info->highlight_cb) | 293 | |
| 294 | if (instance && instance->info->highlight_cb | ||
| 295 | && (cbs->reason == XmCR_DISARM | ||
| 296 | || (cbs->event | ||
| 297 | && (cbs->event->type == EnterNotify | ||
| 298 | || cbs->event->type == MotionNotify)))) | ||
| 294 | { | 299 | { |
| 295 | call_data = cbs->reason == XmCR_DISARM ? NULL : wv; | 300 | call_data = cbs->reason == XmCR_DISARM ? NULL : wv; |
| 296 | instance->info->highlight_cb (w, instance->info->id, call_data); | 301 | instance->info->highlight_cb (w, instance->info->id, call_data); |