# HG changeset patch # User Paul Reilly # Date 784299967 0 # Node ID d2250d1b0f48740cc5ef2ef75cf706be2605fb72 # Parent 5be536b919601222da939034e4015a88c804f1a5 (make_menu_in_widget): Differentiate a separator entry ("--") from a title. (xm_pop_down_callback): Filter all but the last pop down callbacks. diff -r 5be536b91960 -r d2250d1b0f48 lwlib/lwlib-Xm.c --- a/lwlib/lwlib-Xm.c Tue Nov 08 05:18:09 1994 +0000 +++ b/lwlib/lwlib-Xm.c Tue Nov 08 13:06:07 1994 +0000 @@ -345,7 +345,8 @@ XtSetArg (al [ac], XmNalignment, XmALIGNMENT_BEGINNING); ac++; XtSetArg (al [ac], XmNuserData, cur->call_data); ac++; - if (instance->pop_up_p && !cur->contents && !cur->call_data) + if (instance->pop_up_p && !cur->contents && !cur->call_data + && !all_dashes_p (cur->name)) { ac = 0; XtSetArg (al[ac], XmNalignment, XmALIGNMENT_CENTER); ac++; @@ -1510,7 +1511,10 @@ static void xm_pop_down_callback (Widget widget, XtPointer closure, XtPointer call_data) { - do_call (widget, closure, post_activate); + widget_instance *instance = (widget_instance *) closure; + + if (!instance->pop_up_p || (XtParent (widget) == instance->parent)) + do_call (widget, closure, post_activate); }