From cffa74ea6cc63d09c0814ccee5248ba3eeda7ecd Mon Sep 17 00:00:00 2001 From: Fred Pierresteguy Date: Fri, 4 Mar 1994 09:30:58 +0000 Subject: (update_one_frame_psheets): Call EmacsFrameSetCharSize to force the paned widget to resize to the right value. (xmenu_show): No need to check a second time whether the mouse has moved to another menu bar item. This slows down execution. --- src/xmenu.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/xmenu.c b/src/xmenu.c index 5258888dd4..acfb48e2fe 100644 --- a/src/xmenu.c +++ b/src/xmenu.c @@ -885,12 +885,14 @@ free_menubar_widget_value_tree (wv) UNBLOCK_INPUT; } +extern void EmacsFrameSetCharSize (); + static void update_one_frame_psheets (f) FRAME_PTR f; { struct x_display *x = f->display.x; - + int columns, rows; int menubar_changed; menubar_changed = (x->menubar_widget @@ -900,6 +902,12 @@ update_one_frame_psheets (f) return; BLOCK_INPUT; + /* Save the size of the frame because the pane widget doesn't accept to + resize itself. So force it. */ + columns = f->width; + rows = f->height; + + XawPanedSetRefigureMode (x->column_widget, 0); /* the order in which children are managed is the top to @@ -924,6 +932,10 @@ update_one_frame_psheets (f) /* and now thrash the sizes */ XawPanedSetRefigureMode (x->column_widget, 1); + + /* Force the pane widget to resize itself with the right values. */ + EmacsFrameSetCharSize (x->edit_widget, columns, rows); + UNBLOCK_INPUT; } @@ -1284,6 +1296,9 @@ xmenu_show (f, x, y, menubarp, keymaps, title, error) pop_up_menu (mw, &dummy); } + /* No need to check a second time since this is done in the XEvent loop. + This slows done the execution. */ +#if 0 /* Check again whether the mouse has moved to another menu bar item. */ if (check_mouse_other_menu_bar (f)) { @@ -1297,6 +1312,7 @@ xmenu_show (f, x, y, menubarp, keymaps, title, error) lw_destroy_all_widgets (menu_id); goto pop_down; } +#endif /* Process events that apply to the menu. */ while (1) -- cgit v1.2.3