X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=xboard.c;h=097cb85e05fc58faa0a3fd98f8002ac4f1046b4f;hb=1059c12cf5d52a4f1934ab40e0d92801fdc5988f;hp=3dd9f659818f86dd9e8a5ece5af1e80e8fb649ef;hpb=d53dbc347ca0d3c670813bfc4b23fdf8233482b8;p=xboard.git diff --git a/xboard.c b/xboard.c index 3dd9f65..097cb85 100644 --- a/xboard.c +++ b/xboard.c @@ -4708,6 +4708,8 @@ CoDrag (Widget sh, WindowPlacement *wp) XtSetValues(sh, args, j); } +static XtIntervalId delayedDragID = 0; + void DragProc () { @@ -4721,13 +4723,13 @@ DragProc () if(GameListIsUp()) CoDrag(gameListShell, &wpGameList); wpMain = wpNew; XDrawPosition(boardWidget, True, NULL); + delayedDragID = 0; // now drag executed, make sure next DelayedDrag will not cancel timer event (which could now be used by other) } void DelayedDrag () { - static XtIntervalId delayedDragID = 0; if(delayedDragID) XtRemoveTimeOut(delayedDragID); // cancel pending delayedDragID = XtAppAddTimeOut(appContext, 50, (XtTimerCallbackProc) DragProc, (XtPointer) 0); // and schedule new one 50 msec later @@ -6672,25 +6674,33 @@ BookProc (Widget w, XEvent *event, String *prms, Cardinal *nprms) 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