Work-around for Xt selection bug
authorH.G. Muller <h.g.muller@hccnet.nl>
Tue, 26 Feb 2013 15:47:58 +0000 (16:47 +0100)
committerH.G. Muller <h.g.muller@hccnet.nl>
Tue, 26 Feb 2013 16:51:26 +0000 (17:51 +0100)
In some Xt implementations calling extend-end with 0 params causes a crash,
although the mmanual specifies this should default to a call with 'PRIMARY'.
The default selection is now explicitly mentioned in all extend-end calls.

xaw/xboard.c
xaw/xengineoutput.c
xaw/xhistory.c

index e162be7..7986db9 100644 (file)
@@ -418,7 +418,7 @@ char ICSInputTranslations[] =
 
 // [HGM] vari: another hideous kludge: call extend-end first so we can be sure select-start works,
 //             as the widget is destroyed before the up-click can call extend-end
-char commentTranslations[] = "<Btn3Down>: extend-end() select-start() CommentClick() \n";
+char commentTranslations[] = "<Btn3Down>: extend-end(PRIMARY) select-start() CommentClick() \n";
 
 String xboardResources[] = {
     "*Error*translations: #override\\n <Key>Return: ErrorPopDown()",
index 1a63866..fb2b565 100644 (file)
@@ -165,8 +165,8 @@ InsertIntoMemo (int which, char * text, int where)
 char memoTranslations[] =
 ":Ctrl<Key>c: CopyMemoProc() \n \
 <Btn3Motion>: HandlePV() \n \
-Shift<Btn3Down>: select-start() extend-end() SelectPV(1) \n \
-Any<Btn3Down>: select-start() extend-end() SelectPV(0) \n \
+Shift<Btn3Down>: select-start() extend-end(PRIMARY) SelectPV(1) \n \
+Any<Btn3Down>: select-start() extend-end(PRIMARY) SelectPV(0) \n \
 <Btn3Up>: StopPV() \n";
 
 void
index 8b6adb1..edaf8c3 100644 (file)
@@ -99,7 +99,7 @@ ScrollToCursor (Option *opt, int caretPos)
 char *historyText;
 char historyTranslations[] =
 "<Btn3Down>: select-start() \n \
-<Btn3Up>: extend-end() SelectMove() \n";
+<Btn3Up>: extend-end(PRIMARY) SelectMove() \n";
 
 void
 SelectMoveX (Widget w, XEvent * event, String * params, Cardinal * nParams)