Carlos R. Mafra wrote:
> What happens with me is that xjed and thunderbird simply don't get saved at 
> all,

So I was talking about a problem with session saving.


xjed, thunderbird and  firefox are not restored when I start wmaker
(after a "save session").

In the case of xjed, I traced it back to the fact that it does not
set WM_COMMAND, so this line in makeWindowState() fails

command = GetCommandForWindow(win);

and then things go wrong in the calling site, which is
wSessionSaveState(), because of

win_info = makeWindowState(wwin, wapp);
if (win_info)
...save stuff...

So in a sense it is xjed's fault, but not having a fallback
solution to broken WM_COMMAND behavior is a bit sad, because
I've read that WM_COMMAND is deprecated (in fact the whole
ICCCM thing is deprecated due to the "new" XSMP, afaics).

I recompiled xjed modifying src/jed-feat.h, which contains this
interesting comment, btw

/* If compiled with XJED_SET_WM_COMMAND non-zero, then Xjed
 * will set the WM_COMMAND property to inform the
 * window manager or session manager of the command line used to
 * start the application.  Not all versions of X support this.
 */
#define XJED_SET_WM_COMMAND     1

and now xjed is saved in WMState.

The problem with thunderbird and firefox is that their "command"
line in WMState are "thunderbird-bin" and "firefox-bin", instead
of just "thunderbird" and "firefox". So as the *-bin commands are
not in my $PATH, they fail to be started when wmaker starts.

Does anyone have an idea of how we can find out the "true" command
line to start an application, and use that instead? I start them
through the rootmenu, which has an EXEC field, so wmaker should
definitely know which command started the application. So perhaps
the solution is to find a way to use the EXEC field to set
WM_COMMAND?


-- 
To unsubscribe, send mail to [email protected].

Reply via email to