When ever I open GIMP or similar applications, many windows are opened simultaneously. If I open some other application, it will cover the already opened windows and I have to click on each and every window belonging to GIMP to raise them. Is there a simple way to bring all the windows belonging in to one group by a simple click??
Well, then I suppose you could use FvwmEvent to do it. How about something like this:
DestroyModuleConfig FE-raise: *
*FE-Raise: PassId
*FE-Raise: Cmd Function
*FE-Raise: raise_window MyFunctionToRaiseAllWindow
AddToFunc I Module FvwmEvent FE-Raise
This will setup FvwmEvent to listen for when any windows are raised, and act accordingly. In this case, it will run the function: “MyFunctionToRaiseAllWindow”. With FvwmEvent (in using the ‘PassID’ option) it will pass the window ID of the window along with it. We can then use this as a basis, to work from.
DestroyFunc MyFunctionToRaiseAllWindow
AddToFunc MyFunctionToRaiseAllWindow
+ I WindowId $0 Raise
+ I All (CurrentDesk, AcceptsFocus, !Transient) \
ThisWindow ($[w.class]) Raise
You might want to adapt that, to include a filter, so that you don’t raise all Xterm windows, by clicking on Xterm, say. As it stands, that function above will raise all windows whos class is the same as the window you just clicked on to raise – note that this assumes you have your focus policy setup, such that clicking on a window raises it.
As a further aside, you can also use ‘FvwmAuto’ to do the same thing, using -menter.