{ "keepLineBreaksICS", ArgBoolean, (void *) &appData.noJoin, TRUE, INVALID },
{ "wrapContinuationSequence", ArgString, (void *) &appData.wrapContSeq, FALSE, INVALID },
{ "useInternalWrap", ArgTrue, (void *) &appData.useInternalWrap, FALSE, INVALID }, /* noJoin usurps this if set */
+ { "openCommand", ArgString, (void *) &appData.sysOpen, FALSE, "xdg-open" },
// [HGM] placement: put all window layouts last in ini file, but man X,Y before all others
{ "minX", ArgZ, (void *) &minX, FALSE, INVALID }, // [HGM] placement: to make sure auxiliary windows can be placed
char *fenOverride[ENGINES];
char *features[ENGINES];
char *featureDefaults;
+ char *sysOpen;
Boolean keepAlive; /* [HGM] alive */
Boolean forceIllegal;/*[HGM] illegal */
Boolean noJoin; /* [HGM] join */
void
BugReportProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
{
- system("xdg-open mailto:bug-xboard@gnu.org");
+ char buf[MSG_SIZ];
+ snprintf(buf, MSG_SIZ, "%s mailto:bug-xboard@gnu.org", appData.sysOpen);
+ system(buf);
}
void
GuideProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
{
- system("xdg-open http://www.gnu.org/software/xboard/user_guide/UserGuide.html");
+ char buf[MSG_SIZ];
+ snprintf(buf, MSG_SIZ, "%s http://www.gnu.org/software/xboard/user_guide/UserGuide.html", appData.sysOpen);
+ system(buf);
}
void
HomePageProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
{
- system("xdg-open http://www.gnu.org/software/xboard/");
+ char buf[MSG_SIZ];
+ snprintf(buf, MSG_SIZ, "%s http://www.gnu.org/software/xboard/", appData.sysOpen);
+ system(buf);
}
void
NewsPageProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
{
- system("xdg-open http://www.gnu.org/software/xboard/whats_new/portal.html");
+ char buf[MSG_SIZ];
+ snprintf(buf, MSG_SIZ, "%s http://www.gnu.org/software/xboard/whats_new/portal.html", appData.sysOpen);
+ system(buf);
}
void