GNOME Bugzilla – Bug 541154
Empathy fails to minimize on some window managers
Last modified: 2008-10-03 10:39:18 UTC
I use the awesome[0] window manager, and display a system tray with trayer[1]. Minimizing, or iconifying, the contact list to the system tray does not work with this set up. When started hidden, the contact list can successfully be brought up from the system tray. I have written a patch that does fix this bug, but I'm not sure how "correct" it is. Please check out the iconify branch of git://git.collabora.co.uk/git/user/jonny/empathy.git Feedback would be appreciated; having the contact list *always* visible is fairly annoying! 0. http://awesome.naquadah.org/ 1. http://developer.berlios.de/project/showfiles.php?group_id=1595
Created attachment 113823 [details] [review] Successfully iconify the contact list Attached patch here for your convenience.
I think this is a bug of your WM. I would like to have the opinion of WM developers (metacity and others) to know if that's required or not.
Talked to metacity and he said it is not required, that's a bug in your WM. I alread tried to hide the window but it makes compiz effects ugly. If you don't hide the window you see it moving to the status icon. Rhythmbox hides the window in a timeout callback to let time for the animation but that's a really ugly hack! I prefer let you open a bug against your WM. Closing the bug.
For the record, I reported this upstream to my WM, and it has apparently been fixed, although I haven't yet time to test it. Details can be found at http://awesome.naquadah.org/bugs/index.php?do=details&task_id=230
The same bug appears on XFWM4 (xfce's wm), and unfortunately : http://bugzilla.xfce.org/show_bug.cgi?id=4434#c2 considers the bug is on Empathy's side. Even for me who is not on either project i have troubles deciding which one to patch. The compiz argument doesn't apply for xfwm, for it has already its own compositing. Also xfwm considers that the window should not hide when it can't minimize to taskbar, which is not stupid anyway. So what ?
I propose this ultra simple patch : instead of : gtk_window_set_skip_taskbar_hint (window, TRUE); gtk_window_iconify (window); which makes xfce think it shouldn't really close the window, just have : gtk_window_iconify (window); gtk_window_set_skip_taskbar_hint (window, TRUE); and i tested that it works fine on xfwm4 OR metacity (with or without compiz)
I replied to the XFCE bug, will see what devs think there... But IMHO that's still a xfwm4 bug.
Xavier, over there you wrote: > It is not just empathy that need to be patched, but *all* applications that > iconify to the tray have hacks and workarounds for each WM that does different > things. And that is the crux of the problem: the tray *is not a iconification area*; all problems would go away if the *notification* area was used according to its proper and dedicated usage. (bug 467829) Flying bugs from projects to projects while shouting "not my fault, not my responsibility" has been going for so long it is no more funny (and I am not just speaking about this particular issue). Couldn't all related parties discuss this and agree to a solution ?
This has been discussed over and over again in all applications. We will *never* get everybody to agree. The only thing we can/should do is make sure that the notification area works for such thing. WMs, gnome panel, GTK, etc, should be fixed to make iconification to the tray possible and not a pain like it is now. The reason it is a minimisation and not just hide the main window is that minimisation gives a nice effect with compiz, you see the window to go and minimize into the status icon. IMHO we should have gtk_window_minimise_to_status_icon (GtkWindow*, GtkStatusIcon*);
This bug is fixed I guess? Closing it.
Just my point, the "not my fault, not my responsibility" attitude is a major problem and won't get things fixed. As much as I don't like it, did you discuss gtk_window_minimise_to_status_icon with GTK+ people? Could you add a bug number?
I agree with Frederic that this bug comes about because the notification area is being abused. Given this, I think we should either just hide the main window or stop using the notification are for something it's not designed for.
@Fred: I didn't open a bug on GTK because I'm tired of that discussion and I'm sure it won't be accepted. That always end in flames with long and steril discussions. I discussed that with metacity's maintainer and he agrees with me. @Dafydd: I don't think the question is if it's an abuse of the current notification area, but rather what should be changed in the notification area (or WM, GTK, etc) so it's not an abuse anymore. Most applications (Evolution is the only exeption I'm aware of) using the tray minimize the main window to it in one way or another.