X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=xaw%2Fxoptions.c;h=d0fdafc64fdd2e44ee4b891e8216ec7499c58cbe;hb=204df43a817c927d4db73f81cd4b4ce5075def6b;hp=1353b8b753a4b8daec4ea6e086bec0a64d0f95ad;hpb=7b9a24f787397e274c8d9784b58c5023c12b35c6;p=xboard.git diff --git a/xaw/xoptions.c b/xaw/xoptions.c index 1353b8b..d0fdafc 100644 --- a/xaw/xoptions.c +++ b/xaw/xoptions.c @@ -1225,13 +1225,17 @@ GenericPopUp (Option *option, char *title, DialogClass dlgNr, DialogClass parent shellUp[dlgNr]++; // count rather than flag previous = NULL; if(textField) SetFocus(textField, popup, (XEvent*) NULL, False); - if(dlgNr && wp[dlgNr] && wp[dlgNr]->width > 0) { // if persistent window-info available, reposition + if(dlgNr && wp[dlgNr]) { // if persistent window-info available, reposition j = 0; - XtSetArg(args[j], XtNheight, (Dimension) (wp[dlgNr]->height)); j++; - XtSetArg(args[j], XtNwidth, (Dimension) (wp[dlgNr]->width)); j++; - XtSetArg(args[j], XtNx, (Position) (wp[dlgNr]->x)); j++; - XtSetArg(args[j], XtNy, (Position) (wp[dlgNr]->y)); j++; - XtSetValues(popup, args, j); + if(wp[dlgNr]->width > 0 && wp[dlgNr]->height > 0) { + XtSetArg(args[j], XtNheight, (Dimension) (wp[dlgNr]->height)); j++; + XtSetArg(args[j], XtNwidth, (Dimension) (wp[dlgNr]->width)); j++; + } + if(wp[dlgNr]->width > 0 && wp[dlgNr]->y > 0) { + XtSetArg(args[j], XtNx, (Position) (wp[dlgNr]->x)); j++; + XtSetArg(args[j], XtNy, (Position) (wp[dlgNr]->y)); j++; + } + if(j) XtSetValues(popup, args, j); } RaiseWindow(dlgNr); return 1; // tells caller he must do initialization (e.g. add specific event handlers)