GNOME Bugzilla – Bug 79031
Option to let the toolbar dialog always stay on top
Last modified: 2003-12-10 23:24:08 UTC
With this fuction, I won't have to worry about the toolbar disappearing!
It's not The GIMP's job to do that. Simply configure your window manager to keep the GIMP's toolbox always on top.
Hmmm... I assume that the problem is more annoying with Windows than with most other operating systems. Also, the Windows API provides some attributes that can be set on a window to ensure that it stays on top. So maybe this could be added as an option that is specific to the Windows version of the GIMP. But this should be low priority (i.e., it will never be done unless someone submits a clean patch that implements this feature).
Is there such an option for Windows systems?
I'm referring to confirguring the window manager.
No, this is not possible under Windows, except (maybe) if you install a third-party window manager to replace the default one, but this is not something that the average user could do. It may be easier to install Linux than to change the Windows WM and to configure it in the correct way. For Windows, the right way to ensure that the toolbox stays on top is to change the code of the application (the GIMP) and to set the correct attributes on the toolbox window. This could be added as an option if someone writes the code...
Huh? What is complicated about installing a different window manager under windows? Download, click the setup icon, voila. Or am I missing something? Anyway, the real problem is that the Win32 GDK backend doesn't implement gdk_window_set_type_hint(). Or at least, it doesn't do anything useful. So despite all the hints we set, they never end up at the window manager level on Win32.
Hello again sven (or however you wish to be addressed). Maybe I can help explain the issue from the perspective of a non- Linux user. First off, it must be stated that I do not know exactly what a window manager is -- I've never used one firsthand, and if I did, I didn't know I was using one. :) I did a little bit of investigation into it, but the concept is still somewhat fuzzy. Here's one of the places I invetigated: http://www.plig.org/xwinman/ The concept of a "window manager" is foreign to the majority (like 90-99% ) of Windows users who have never used another OS. Personally, I find no need to change the way the windows work in WinXP. In fact, I actually find it detremental to begin making major changes to the way the system works; in many cases, it just results in more problems or it ends up being a waste of time. It's not like Linux, where you MUST chose which desktop and window manager. In the mindset of a Windows user, to ask them to change the way their system works so that an application will work correctly is a totally foreign philosophy. To say to use a different window manager, is telling a Windows users to 1) use something they never have heard of or used before 2) to deviate from the default window manager that 99% of people use -- which may have problems in it 3) to adapt their system to an application, instead of the application working with the default. Again, let it be mentioned that as far as I know, I've never used anything but a default window manager in Windows (or in another OS), so my understanding of the concept is not perfectly clear. If anything, I wanted to mentioned that this bug report is a point of concern for Windows users.
Sure, but it is wrong to report it against GIMP. We will not special case Windows since we are using GTK+/GDK which is supposed to hide the differences. If the Windows port of GTK+/GDK doesn't support the flags we set, than that is a GTK+/GDK bug and should be reported there. I'd reassign this report to GTK+ but I suspect that this issue has already been reported there. Perhaps you could check if that is the case.
Kevin is right when he says that the application should be adapted to the system. It should not be necessary for the users to adapt their system to the application. Regarding the "special case", there are two different issues here: 1) GTK+ should provide a function that allows a window to always "stay on top" for the Win32 platform 2) The GIMP should use this function to tell the window manager to put the toolbox window on top of all other windows. The first issue is a GTK+ bug. This should probably be done by using gtk_window_set_type_hint() for a dock type (_NET_WM_WINDOW_TYPE_DOCK) or something similar. Unfortunately, this is not implemented yet, not even for X11. See also bug #87753 and bug #66719. The second issue is a GIMP bug. If the toolbox window should be treated in a different way by the window manager (especially for Windows), then the GIMP should call the appropriate function to tell the WM to put this window on top of all others. So although a part of this problem needs some things to be added to GTK+, there is another part that is GIMP-specific (and would probably have to be limited to Win32, because I don't think that X11 users would like to have the toolbox always on top).
The GTK+ bug you mention is fixed and GIMP has been changed to set the appropriate hints. There is an open issue with the toolbox since we haven't decided what window hint to use here. It seems inappropriate to handle it as an utility window like the other docks.
So is it correct to assume nothing can be done at the moment? Is it possible to make them always on top for Windows builds (with an option to turn that feature off in the preferences) until the above mentioned fixes can be implemented. Or is it best to wait?
We will certainly not add any code that is specific to the Windows graphics system. We don't use any X11-specific code neither. So unless GDK supports this, there's nothing the GIMP developers can do.
Raphaël, so what bug is this solution dependent on?
Changes at the request of Dave Neary on the developer mailing list. I am changing many of the bugzilla reports that have not specified a target milestone to Future milestone. Hope that is acceptable.
You can now choose to have the utility type window hint being set on the toolbox. Most window managers keep the window on top then.
*** Bug 129034 has been marked as a duplicate of this bug. ***