On Sun, 25 Nov 2012, Rodolfo García Peñas wrote:
The problem is because the "icon->icon_win == None". See the wIconUpdate
function at [1]. This function is different than the next branch, I did
a lot of changes, but the idea is the same. See the flow with the
removed lines:
icon_create_for_wwindow
set_icon_for_window: wIconUpdate
wIconUpdate icon 0x936cd0
wwin 0x93f000 flag 0
wIconUpdate:get_rimage_icon_from_user_icon 4 icon 0x936cd0
wIconUpdate icon 0x936cd0
wwin 0x93f000 flag 0
wIconUpdate:get_rimage_icon_from_user_icon 4 icon 0x936cd0
Or with the lines (original code/next code):
icon_create_for_wwindow
set_icon_for_window: wIconUpdate
wIconUpdate icon 0x19bfd30
wwin 0x19c1a90 flag 0
wIconUpdate:get_rimage_icon_from_icon_win 2 icon 0x19bfd30
wIconUpdate icon 0x19bfd30
wwin 0x19c1a90 flag 0
wIconUpdate:get_rimage_icon_from_icon_win 2 icon 0x19bfd30
If I remove the lines, then "icon->icon_win == None", and then jump to
the default icon. Else, get the icon from the wm_hints/net_icon_image.
I didn't understand a word from this but I hope you understand and know
what you are doing. Just make sure that the test application still works
the same after your changes please.
About your question about dockapps, they are fine here. Why?
I was asking because they work the same as the test case I've sent (start
in withdrawn state and use their window as an icon window).
Dockapps works in a extrange way. The try to get the image for their
dock. If the image is found, then, they set the image, else, set the
wmaker default image. Whats happend if the application is running, then,
the application background is set to the tile background
(grey/blue/...), and the put the application inside the icon. But it the
application is not running, the icon for the application is painted. If
you click on the dockapp, the icon image is removed, the background is
set and the application is put inside the icon.
What if the dockapp is not yet docked but started from the command line?
Regards,
BALATON Zoltan