X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=xoptions.c;h=e60e84596cc3e5ac9281f2a63520c9fa847e2b44;hb=d3e72e265a417fa9dcbc0e040184b93df99cd894;hp=e31aa33096ba15ad1634579758e8946f0e065dba;hpb=18ccb0da4151e649009780bd4db7ecbdea7a93c8;p=xboard.git diff --git a/xoptions.c b/xoptions.c index e31aa33..e60e845 100644 --- a/xoptions.c +++ b/xoptions.c @@ -1,7 +1,7 @@ /* * xoptions.c -- Move list window, part of X front end for XBoard * - * Copyright 2000,2009 Free Software Foundation, Inc. + * Copyright 2000, 2009, 2010 Free Software Foundation, Inc. * ------------------------------------------------------------------------ * * GNU XBoard is free software: you can redistribute it and/or modify @@ -428,7 +428,7 @@ void TimeControlPopUp() XtSetArg(args[j], XtNright, XtChainRight); j++; XtSetArg(args[j], XtNresizable, True); j++; XtSetArg(args[j], XtNwidth, 85); j++; -// XtSetArg(args[j], XtNheight, 20); j++; + XtSetArg(args[j], XtNinsertPosition, 9999); j++; tcTime = XtCreateManagedWidget("TC", asciiTextWidgetClass, form, args, j); XtAddEventHandler(tcTime, ButtonPressMask, False, SetFocus, (XtPointer) popup); @@ -815,7 +815,7 @@ void EnginePopUp() XtSetArg(args[j], XtNright, XtChainLeft); j++; XtSetArg(args[j], XtNresizable, True); j++; XtSetArg(args[j], XtNwidth, 60); j++; -// XtSetArg(args[j], XtNheight, 20); j++; + XtSetArg(args[j], XtNinsertPosition, 9999); j++; engThreshold = XtCreateManagedWidget("Threshold", asciiTextWidgetClass, form, args, j); XtAddEventHandler(engThreshold, ButtonPressMask, False, SetFocus, (XtPointer) popup); @@ -1289,6 +1289,7 @@ void UciPopUp() XtSetArg(args[j], XtNright, XtChainRight); j++; XtSetArg(args[j], XtNresizable, True); j++; XtSetArg(args[j], XtNwidth, i&1 ? 245 : 50); j++; + XtSetArg(args[j], XtNinsertPosition, 9999); j++; if(i&1) { XtSetArg(args[j], XtNstring, * (char**) controlDesc[i].ptr ? * (char**) controlDesc[i].ptr : ""); j++; @@ -1532,7 +1533,7 @@ void CreateComboPopup(parent, name, n, mb) void SettingsPopUp(ChessProgramState *cps) { Arg args[16]; - Widget popup, layout, dialog, edit=NULL, form, oldform, last, b_ok, b_cancel, leftMargin = NULL; + Widget popup, layout, dialog, edit=NULL, form, oldform, last, b_ok, b_cancel, leftMargin = NULL, textField = NULL; Window root, child; int x, y, i, j, height, width, h, c; int win_x, win_y, maxWidth, maxTextWidth; @@ -1592,9 +1593,10 @@ void SettingsPopUp(ChessProgramState *cps) XtSetArg(args[j], XtNright, XtChainRight); j++; XtSetArg(args[j], XtNresizable, True); j++; XtSetArg(args[j], XtNstring, cps->option[i].type==Spin ? def : cps->option[i].textValue); j++; + XtSetArg(args[j], XtNinsertPosition, 9999); j++; edit = last; cps->option[i].handle = (void*) - (last = XtCreateManagedWidget("text", asciiTextWidgetClass, form, args, j)); + (textField = last = XtCreateManagedWidget("text", asciiTextWidgetClass, form, args, j)); XtAddEventHandler(last, ButtonPressMask, False, SetFocus, (XtPointer) popup); if(cps->option[i].type == TextBox) break; @@ -1727,7 +1729,7 @@ void SettingsPopUp(ChessProgramState *cps) SettingsUp = True; previous = NULL; - if(edit)SetFocus(edit, popup, (XEvent*) NULL, False); + if(textField)SetFocus(textField, popup, (XEvent*) NULL, False); } void FirstSettingsProc(w, event, prms, nprms)