diff lwlib/ChangeLog @ 107886:9a798edc503b

Don't redraw lucid menus more than needed. Use double buffer to reduce flicker. * xlwmenu.c: Include Shell.h, remove duplicate declaration of XlwMenuRedisplay. (display_menu_item): Replace ws->window with ws->pixmap, remove call to XftDrawRect. (display_menu): Remove this and that argument. Remove just_compute_this_one_p. Fill pixmap at start and copy it to window at end. (expose_cb): New function. (make_windows_if_needed): Replace XCreateWindow with XtCreatePopup. Add eventhandler for expose to expose_cb. Remove creation of xft_draw. (create_pixmap_for_menu): New function. (remap_menubar): Pop down menus that aren't the same as in old_stack. Set width, heigh, x, y on widget with XtVaSetValues. Call create_pixmap_for_menu. Replace XUnmapWindow with XtPopdown. Remowe two last parameters to display_menu. (map_event_to_widget_value, XlwMenuRedisplay, Key, Select) (pop_up_menu): Remowe two last parameters to display_menu. (XlwMenuRealize): Call create_pixmap_for_menu, set w and pixmap. Remove call to XftDrawCreate. (XlwMenuDestroy): Free pixmap. Call XtDestroyWidget instead of XDestroyWindow. (handle_motion_event): Only call handle_single_motion_event once. * xlwmenuP.h (window_state): Add pixmap and w.
author Jan D <jan.h.d@swipnet.se>
date Sat, 17 Apr 2010 19:43:03 +0200
parents b88763a1166b
children 32fc68b9d103
line wrap: on
line diff
--- a/lwlib/ChangeLog	Sat Apr 17 11:53:55 2010 -0400
+++ b/lwlib/ChangeLog	Sat Apr 17 19:43:03 2010 +0200
@@ -1,3 +1,32 @@
+2010-04-17  Jan Djärv  <jan.h.d@swipnet.se>
+
+	* xlwmenu.c: Include Shell.h, remove duplicate declaration of
+	XlwMenuRedisplay.
+	(display_menu_item): Replace ws->window with ws->pixmap, remove
+	call to XftDrawRect.
+	(display_menu): Remove this and that argument.  Remove
+	just_compute_this_one_p. Fill pixmap at start and copy it to window
+	at end.
+	(expose_cb): New function.
+	(make_windows_if_needed): Replace XCreateWindow with XtCreatePopup.
+	Add eventhandler for expose to expose_cb.  Remove creation of
+	xft_draw.
+	(create_pixmap_for_menu): New function.
+	(remap_menubar): Pop down menus that aren't the same as in old_stack.
+	Set width, heigh, x, y on widget with XtVaSetValues.  Call
+	create_pixmap_for_menu.
+	Replace XUnmapWindow with XtPopdown.
+	Remowe two last parameters to display_menu.
+	(map_event_to_widget_value, XlwMenuRedisplay, Key, Select)
+	(pop_up_menu): Remowe two last parameters to display_menu.
+	(XlwMenuRealize): Call create_pixmap_for_menu, set w and pixmap.
+	Remove call to XftDrawCreate.
+	(XlwMenuDestroy): Free pixmap.  Call XtDestroyWidget instead of
+	XDestroyWindow.
+	(handle_motion_event): Only call handle_single_motion_event once.
+
+	* xlwmenuP.h (window_state): Add pixmap and w.
+
 2010-04-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 
 	* xlwmenu.c (facename_changed): Put function in #ifdef HAVE_XFT.