Enforce automatic focus for dialogue windows


I’m involved in porting a software system from Solaris to Linux. One application in this system has a Motif based user interface. The desktop is fully controlled by the software system - it starts the X server, window manager and all applications. In Solaris, the Motif or CDE window manager is used; in Linux, FVWM.

The graphical application in question has a main window (monitoring), with lots of functionality implemented in several levels of dialogue windows. Each dialogue window opened shall automatically receive focus.

As an example of how this should work (and does work in the original environment), the application can open an authorisation level dialogue window. This window gets focus automatically. When a level is selected, a password dialogue window is opened; this one should grab focus, and when closed, the authorisation level window should get focus back.

Most dialogue windows are marked as non-modal; I’ve also tried changing that to application-primary modal, without any noticeable difference in behaviour.

I’ve tried with numerous settings, like SloppyFocus, ClickToFocus, GrabFocusTransient (and friends) and Lenience, but not been able to get any second dialogue window to grab focus automatically (i.e. when a first dialogue window has focus).

(I’m using FVWM 2.6.6 and 2.6.8 in CentOS 7.)

Is it possible to configure FVWM to achieve this type of focus behaviour? Any help greatly appreciated!

(Edit: correct modality and versions tested.)

  • André

I’ve found a solution that works well, albeit not using click to focus (I personally prefer sloppy focus anyway):

Style * SloppyFocus, !UseTransientPPosition, PositionPlacement UnderMouse

This way, all dialog windows open under the mouse and thus get input focus.