I have a Motif application running on a raspberry Pi. For debugging purposes, I use a Windows X server on my PC and SSH tunnel X through Putty. It may also be useful to note that when you first start the application, the entry goes to the SSH shell / Putty window. Clicking on the application window or on one of its buttons stops the entry in the Putty window.
Widget Hierarchy:
Top level shell-> Scroll window-> Form-> RowColumn
The row column widget then contains an arbitrary number of button widgets.
I registered an event handler with KeyPressMask in a top-level shell, and when that didn't work, on the RowColumn and all buttons. He is never called. The first button created gets focus (as shown visually along its border), but this only changes when I click on another button with the mouse (click events are successfully detected).
I tried to mess with XmNkeyboardFocusPolicy on a top-level shell. I tried calling XtSetKeyboardFocus () for the row column widget and first button. I tried to specify XmNtraversalOn as True when creating the buttons. Nothing works. I am completely upset.
I made a callback report button for the button name XtIsSensitive () for the widget for which it is called (which should be a button), and it reports a value of 1 (== True, I suppose).
Motif, / . , . . , !
, .
, , , .xinitrc, , , , .
, xinitrc "startx" , , , .
, TTY. .xinitrc TTY ( ), , , TTY. TTY - - ?