diff lwlib/xlwmenu.c @ 217:d44af0c54775 r20-4b7

Import from CVS: tag r20-4b7
author cvs
date Mon, 13 Aug 2007 10:08:34 +0200
parents e45d5e7c476e
children 262b8bb4a523
line wrap: on
line diff
--- a/lwlib/xlwmenu.c	Mon Aug 13 10:07:42 2007 +0200
+++ b/lwlib/xlwmenu.c	Mon Aug 13 10:08:34 2007 +0200
@@ -2247,21 +2247,6 @@
   puts("===================================================================");
   print_widget_value (following_item, 1, 0);
 #endif
-  if (following_item
-      && following_item->type == CASCADE_TYPE
-      && following_item->contents
-      && following_item->contents->type == INCREMENTAL_TYPE)
-    {
-      /* okay, we're now doing a lisp callback to incrementally generate
-	 more of the menu. */
-      XtCallCallbackList ((Widget)mw,
-			  mw->menu.open,
-			  (XtPointer)following_item->contents);
-#if SLOPPY_TYPES == 1
-  puts("==== NEW ==== NEW ==== NEW ==== NEW ==== NEW ==== NEW ==== NEW ====");
-  print_widget_value(following_item, 1, 0);
-#endif
-    }
 
   if (hit)
     *hit_return = NULL;
@@ -2543,6 +2528,18 @@
       /* take into account the slab around the new menu */
       ws->y -= mw->menu.shadow_thickness;
 
+      {
+	widget_value *val = mw->menu.old_stack [i];
+	if (val->contents->type == INCREMENTAL_TYPE)
+	{
+	  /* okay, we're now doing a lisp callback to incrementally generate
+	     more of the menu. */
+	  XtCallCallbackList ((Widget)mw,
+			      mw->menu.open,
+			      (XtPointer)val->contents);
+	}
+      }
+
       size_menu (mw, i);
 
       fit_to_screen (mw, ws, previous_ws, mw->menu.horizontal && i == 1);