Hi, I sent 14 patches more today. I wrote, re-wrote and re-rewrote them these days. Was terrible. I have more patches here about other parts of the code, but this is the most interesting now.
The aim of these patches is create a way to remove the function wIconUpdate. This function is called and called in many times and every time the function creates the icon image (using some functions) and re-create the icon pixmap (the functions do it). For example, when we move the mouse over two windows, wmaker try to highligth the application icons, to do it, call wIconUpdate. This function creates the icons again (to set the highligth for one window, and unset the highligth in other window). The best way is create the icon only if is needed, else, use the current image instead re-create it. How to do it? First, split the icon image creation and the pixmap image creation (see patches 3,4,5,6,10), then change the wIconUpdate function to call first to create the image, then to create the pixmap (see patch 11 and 12). Then modify functions to use the new code, examples of modification are patches 13 and 14. I will change more functions these days. The paches 1 and 2 are helpers. Patch 7 and 8 rewrites get_pixmap_icon_from_icon_win to apply the same procedure (see the patch 10 over this function). Patch 9 solves a bug. 0001-New-helper-function-unset_icon_image.patch 0002-wIconChangeImageFile-non-negated-value.patch 0003-rimage-pixmap-split-_icon_from_default_icon.patch 0004-rimage-pixmap-split-_icon_from_user_icon.patch 0005-rimage-pixmap-split-_icon_from_wm_hints.patch 0006-New-functions-get_-_icon_from_x11.patch 0007-get_window_image_from_x11-now-with-Window.patch 0008-get_pixmap_icon_from_icon_win-rewrited.patch 0009-Solved-bug-if-icon-doesn-t-exists.patch 0010-rimage-pixmap-split-_icon_from_icon_win.patch 0011-wIconUpdate-create-rimage-and-then-pixmap.patch 0012-New-function-update_icon_pixmap.patch 0013-wIconSetHighlited-doesn-t-create-icon.patch 0014-appearanceObserver-doesn-t-create-icon.patch Cheers, kix -- ||// //\\// Rodolfo "kix" Garcia ||\\// //\\ http://www.kix.es/ -- To unsubscribe, send mail to [email protected].
