#591 pageup/pagedown/arrow keys and numpad

closed
nobody
Motif (9)
5
2007-08-03
2007-07-12
Anonymous
No

On an X session over SSH, the nedit client does not respond to the page-up/down and arrow keys. This seems to be related to the Num-Lock.
Num-Lock On - ./0 respond as ./0, but 1-9 respond as arrows page function.
Num-Lock Off - ./0 does not respond, and 0-9 respond as arrows page function.

NEdit 5.5
Sep 30, 2004

Built on: Linux, x86-64, GNU C
Built at: Mar 5 2006, 05:16:01
With Motif: 2.3.0 [@(#)Motif Version 2.3.0] (UNTESTED)
Running Motif: 2.3 [unknown]
Server: The X.Org Foundation 70000000
Visual: 16-bit TrueColor (ID 0xf0, Default)
Locale: en_US

Discussion

  • Logged In: NO

    submitted by ektoric@gmail.com

     
  • Logged In: NO

    Looks like this may be related to [ 493421 ].
    Per that bug's suggestion, I ran:

    ~]$ xprop -root | grep BIND
    _MOTIF_DEFAULT_BINDINGS(STRING) = "osfActivate:<Key>KP_Enter\nosfBackSpace:<Key>BackSpace\nosfCancel:<Key>Escape\nosfCopy:Ctrl<Key>Insert\nosfCut:Shift<Key>Delete\nosfDelete:<Key>Delete\nosfBeginLine:<Key>Home\nosfBeginLine:<Key>KP_Home\nosfEndLine:<Key>End\nosfEndLine:<Key>KP_End\nosfInsert:<Key>Insert\nosfLeft:<Key>Left\nosfLeft:<Key>KP_Left\nosfMenu:Shift<Key>F10\nosfMenuBar:<Key>F10\nosfPageDown:<Key>Next\nosfPageDown:<Key>KP_Page_Down\nosfPageLeft:Ctrl<Key>Prior\nosfPageRight:Ctrl<Key>Next\nosfPageUp:<Key>Prior\nosfPageUp:<Key>KP_Page_Up\nosfPaste:Shift<Key>Insert\nosfRight:<Key>Right\nosfRight:<Key>KP_Right\nosfUp:<Key>Up\nosfUp:<Key>KP_Up\nosfDown:<Key>Down\nosfDown:<Key>KP_Down"

    ~]$ appres NEdit
    *Frame.highlightBackground: #e6e6e6
    *Frame.foreground: #000000
    *Frame.activeBackground: #e6e6e6
    *Frame.background: #e6e6e6
    *Frame.activeForeground: #000000
    *Frame.highlightColor: #000000
    *XmMenuShell.background: #e6e6e6
    *XmMenuShell.foreground: #000000
    *XmMessageBox.background: #e6e6e6
    *XmMessageBox.foreground: #000000
    *Label.highlightBackground: #e6e6e6
    *Label.foreground: #000000
    *Label.activeBackground: #e6e6e6
    *Label.background: #e6e6e6
    *Label.activeForeground: #000000
    *Label.highlightColor: #000000
    *XmPanedWindow.background: #e6e6e6
    *XmPanedWindow.foreground: #000000
    *List.background: #ffffff
    *List.foreground: #000000
    *XmPushButton.background: #e6e6e6
    *XmPushButton.foreground: #000000
    *Listbox.highlightBackground: #ffffff
    *Listbox.foreground: #000000
    *Listbox.activeBackground: #ffffff
    *Listbox.selectForeground: #ffffff
    *Listbox.background: #ffffff
    *Listbox.activeForeground: #000000
    *Listbox.highlightColor: #000000
    *Listbox.selectBackground: #4c59a6
    *XmPushButtonGadget.background: #e6e6e6
    *XmPushButtonGadget.foreground: #000000
    *Menu.highlightBackground: #e6e6e6
    *Menu.foreground: #000000
    *Menu.activeBackground: #e6e6e6
    *Menu.background: #e6e6e6
    *Menu.activeForeground: #000000
    *Menu.highlightColor: #000000
    *XmRowColumn.background: #e6e6e6
    *XmRowColumn.foreground: #000000
    *MenuButton.background: #e6e6e6
    *MenuButton.foreground: #000000
    *XmSash.background: #e6e6e6
    *XmSash.foreground: #000000
    *Menubutton.highlightBackground: #e6e6e6
    *Menubutton.foreground: #000000
    *Menubutton.activeBackground: #e6e6e6
    *Menubutton.background: #e6e6e6
    *Menubutton.activeForeground: #000000
    *Menubutton.highlightColor: #000000
    *XmScrollBar.background: #e6e6e6
    *XmScrollBar.foreground: #000000
    *Radiobutton.highlightBackground: #e6e6e6
    *Radiobutton.foreground: #000000
    *Radiobutton.activeBackground: #e6e6e6
    *Radiobutton.background: #e6e6e6
    *Radiobutton.activeForeground: #000000
    *Radiobutton.highlightColor: #000000
    *XmScrolledWindow.background: #e6e6e6
    *XmScrolledWindow.foreground: #000000
    *Scale.highlightBackground: #e6e6e6
    *Scale.foreground: #000000
    *Scale.activeBackground: #e6e6e6
    *Scale.background: #e6e6e6
    *Scale.activeForeground: #000000
    *Scale.highlightColor: #000000
    *Scale.troughColor: #e6e6e6
    *XmSelectionBox.background: #e6e6e6
    *XmSelectionBox.foreground: #000000
    *XmSeparator.background: #e6e6e6
    *XmSeparator.foreground: #000000
    *Scrollbar*height: 15
    *Scrollbar.foreground: #000000
    *Scrollbar.highlightBackground: #e6e6e6
    *Scrollbar*pushThumb: false
    *Scrollbar.highlightColor: #000000
    *Scrollbar.troughColor: #e6e6e6
    *Scrollbar.activeBackground: #e6e6e6
    *Scrollbar*shadowWidth: 2
    *Scrollbar*Cursor: left_ptr
    *Scrollbar.activeForeground: #000000
    *Scrollbar*width: 15
    *Scrollbar*background: #e6e6e6
    *Scrollbar*cursorName: left_ptr
    *XmSeparatorGadget.background: #e6e6e6
    *XmSeparatorGadget.foreground: #000000
    *XmTearOffButton.background: #e6e6e6
    *XmTearOffButton.foreground: #000000
    *XmTearOffButtonGadget.background: #e6e6e6
    *XmTearOffButtonGadget.foreground: #000000
    *XmText.background: #ffffff
    *XmText.foreground: #000000
    *Box.background: #e6e6e6
    *Box.foreground: #000000
    *XmTextField.background: #ffffff
    *XmTextField.foreground: #000000
    *XmToggleButton.background: #e6e6e6
    *XmToggleButton.foreground: #000000
    *XmToggleButtonGadget.background: #e6e6e6
    *XmToggleButtonGadget.foreground: #000000
    *Button.highlightBackground: #e6e6e6
    *Button.foreground: #000000
    *Button.activeBackground: #e6e6e6
    *Button.background: #e6e6e6
    *Button.activeForeground: #000000
    *Button.highlightColor: #000000
    *SimpleMenu*background: #e6e6e6
    *SimpleMenu*foreground: #000000
    *SmeBSB*shadowWidth: 3
    *rvplayer*authortext.background: #e6e6e6
    *rvplayer*authortext.bottomShadowPixel: #ffffff
    *rvplayer*authortext.topShadowPixel: #8f8f8f
    *rvplayer*statustext.background: #e6e6e6
    *rvplayer*statustext.foreground: #000000
    *rvplayer*volumeslider.bottomShadowPixel: #ffffff
    *rvplayer*volumeslider.topShadowPixel: #8f8f8f
    *rvplayer*copyrighttext.background: #e6e6e6
    *rvplayer*copyrighttext.bottomShadowPixel: #ffffff
    *rvplayer*copyrighttext.topShadowPixel: #8f8f8f
    *rvplayer*Label.BorderColor: #000000
    *rvplayer*MenuButton.BorderColor: #000000
    *rvplayer*MenuButton.background: #e6e6e6
    *rvplayer*timeinfotext.background: #e6e6e6
    *rvplayer*timeinfotext.bottomShadowPixel: #ffffff
    *rvplayer*timeinfotext.foreground: #000000
    *rvplayer*timeinfotext.topShadowPixel: #8f8f8f
    *rvplayer*Vslider.thumbPixel: #ffffff
    *rvplayer*Command.BorderColor: #000000
    *rvplayer*Command.background: #e6e6e6
    *rvplayer*Command.foreground: #000000
    *rvplayer*SepLine.BorderColor: #e6e6e6
    *rvplayer*SepLine.bottomShadowPixel: #ffffff
    *rvplayer*SepLine.topShadowPixel: #8f8f8f
    *rvplayer*SimpleMenu.BorderColor: #8f8f8f
    *rvplayer*SimpleMenu.background: #e6e6e6
    *rvplayer*SimpleMenu.foreground: #000000
    *rvplayer*proptext.background: #e6e6e6
    *rvplayer*proptext.foreground: #000000
    *rvplayer*timeslider.bottomShadowPixel: #ffffff
    *rvplayer*timeslider.foreground: #e6e6e6
    *rvplayer*timeslider.thumbPixel: #ffffff
    *rvplayer*timeslider.topShadowPixel: #8f8f8f
    *rvplayer*SmeBSB*fgInsensitive: #ffffff
    *rvplayer*statusback.background: #e6e6e6
    *rvplayer*statusback.foreground: #000000
    *rvplayer*titletext.background: #e6e6e6
    *rvplayer*titletext.bottomShadowPixel: #ffffff
    *rvplayer*titletext.topShadowPixel: #8f8f8f
    *rvplayer*background: #e6e6e6
    *Text.highlightBackground: #ffffff
    *Text.foreground: #000000
    *Text.activeBackground: #ffffff
    *Text.selectForeground: #ffffff
    *Text.background: #ffffff
    *Text.activeForeground: #000000
    *Text.highlightColor: #000000
    *Text.selectBackground: #4c59a6
    *Toggle.background: #e6e6e6
    *Toggle.foreground: #000000
    *Canvas.highlightBackground: #ffffff
    *Canvas.foreground: #000000
    *Canvas.activeBackground: #ffffff
    *Canvas.selectforeground: #ffffff
    *Canvas.background: #ffffff
    *Canvas.activeForeground: #000000
    *Canvas.highlightColor: #000000
    *Canvas.selectbackground: #4c59a6
    *Toplevel.highlightBackground: #e6e6e6
    *Toplevel.foreground: #000000
    *Toplevel.activeBackground: #e6e6e6
    *Toplevel.background: #e6e6e6
    *Toplevel.activeForeground: #000000
    *Toplevel.highlightColor: #000000
    *XmCascadeButton.background: #e6e6e6
    *XmCascadeButton.foreground: #000000
    *XmCascadeButtonGadget.background: #e6e6e6
    *XmCascadeButtonGadget.foreground: #000000
    *Checkbutton.highlightBackground: #e6e6e6
    *Checkbutton.foreground: #000000
    *Checkbutton.activeBackground: #e6e6e6
    *Checkbutton.background: #e6e6e6
    *Checkbutton.activeForeground: #000000
    *Checkbutton.highlightColor: #000000
    *XmDialogShell.background: #e6e6e6
    *XmDialogShell.foreground: #000000
    *Command.background: #e6e6e6
    *Command.foreground: #000000
    *XmFileSelectionBox.background: #e6e6e6
    *XmFileSelectionBox.foreground: #000000
    *Dialog.background: #e6e6e6
    *Dialog.foreground: #000000
    *XmForm.background: #e6e6e6
    *XmForm.foreground: #000000
    *Entry.highlightBackground: #ffffff
    *Entry.foreground: #000000
    *Entry.activeBackground: #ffffff
    *Entry.selectForeground: #ffffff
    *Entry.background: #ffffff
    *Entry.activeForeground: #000000
    *Entry.highlightColor: #000000
    *Entry.selectBackground: #4c59a6
    *XmFrame.background: #e6e6e6
    *XmFrame.foreground: #000000
    *XmLabel.background: #e6e6e6
    *XmLabel.foreground: #000000
    *XmLabelGadget.background: #e6e6e6
    *XmLabelGadget.foreground: #000000
    *Form.background: #e6e6e6
    *Form.foreground: #000000
    *XmList.background: #ffffff
    *XmList.foreground: #000000
    *beNiceToColormap: false
    *ScrollbarBackground: #e6e6e6
    *foreground: #000000
    *borderColor: black
    *background: #e6e6e6
    *ShapeStyle: Rectangle
    ~]$

     
  • Scott Tringali
    Scott Tringali
    2007-07-13

    • labels: --> 355502
     
  • Scott Tringali
    Scott Tringali
    2007-07-13

    Logged In: YES
    user_id=11321
    Originator: NO

    I've never really been able to get the keypad keys working reliably, and
    this is without using remote X over ssh. I think Motif has some bad
    issues here, or just doesn't bother configuring it.

    Sometimes the X server doesn't report the keypad keys at all.

    Try running 'xev', put the mouse into the window, and type your keypad arrow keys.
    I see something like this:

    KeyPress event, serial 32, synthetic NO, window 0x2c00002,
    root 0x7a, subw 0x2c00003, time 3218709342, (53,46), root:(57,854),
    state 0x0, keycode 79 (keysym 0xff95, KP_Home), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

    KeyRelease event, serial 32, synthetic NO, window 0x2c00002,
    root 0x7a, subw 0x2c00003, time 3218709421, (53,46), root:(57,854),
    state 0x0, keycode 79 (keysym 0xff95, KP_Home), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

    KeyPress event, serial 32, synthetic NO, window 0x2c00002,
    root 0x7a, subw 0x2c00003, time 3218709501, (53,46), root:(57,854),
    state 0x0, keycode 80 (keysym 0xff97, KP_Up), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

    KeyRelease event, serial 32, synthetic NO, window 0x2c00002,
    root 0x7a, subw 0x2c00003, time 3218709583, (53,46), root:(57,854),
    state 0x0, keycode 80 (keysym 0xff97, KP_Up), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

    But, Motif doesn't seem to know what to do with KP_Up, etc. That makes
    sense since it's not in my virtual bindings. You'd have to have osfUp
    mapped to both Up and KP_Up.

    The virutal bindings don't look right to me:

    osfActivate:<Key>KP_Enter
    osfBackSpace:<Key>BackSpace
    osfCancel:<Key>Escape
    osfCopy:Ctrl<Key>Insert
    osfCut:Shift<Key>Delete
    osfDelete:<Key>Delete
    osfBeginLine:<Key>Home
    osfBeginLine:<Key>KP_Home
    osfEndLine:<Key>End
    osfEndLine:<Key>KP_End
    osfInsert:<Key>Insert
    osfLeft:<Key>Left
    osfLeft:<Key>KP_Left
    osfMenu:Shift<Key>F10
    osfMenuBar:<Key>F10
    osfPageDown:<Key>Next
    osfPageDown:<Key>KP_Page_Down
    osfPageLeft:Ctrl<Key>Prior
    osfPageRight:Ctrl<Key>Next
    osfPageUp:<Key>Prior
    osfPageUp:<Key>KP_Page_Up
    osfPaste:Shift<Key>Insert
    osfRight:<Key>Right
    osfRight:<Key>KP_Right
    osfUp:<Key>Up
    osfUp:<Key>KP_Up
    osfDown:<Key>Down
    osfDown:<Key>KP_Down

    Note there are duplicate entires for osfUp, and others. That looks like a mistake to me.
    I don't know if you coded it up, or some software vendor did. If you did, it's pretty
    fixable. Use this pattern instead for multi-key bindings:

    osfUp: <Key>Up,<Key>KP_Up

    But heed the warning above, that I've never gotten it to work...

    If the software vendor did install these weird bindings, we'll have to take it up with
    them.

     
  • Scott Tringali
    Scott Tringali
    2007-07-13

    • labels: 355502 --> Motif
     
  • Logged In: NO

    Please change the status of this to Closed / Invalid.
    It was indeed the motif keybindings. After no idea what changed, I was trying to set the _MOTIF_DEFAULT_BINDINGS. This time, xprop -root | grep BIND with a cleaner response:

    xprop -root _MOTIF_DEFAULT_BINDINGS
    _MOTIF_DEFAULT_BINDINGS(STRING) = "
    osfCancel:<Key>Escape,<Key>Cancel\n
    osfLeft:<Key>Left\n
    osfUp:<Key>Up\n
    osfRight:<Key>Right\n
    osfDown:<Key>Down\n
    osfEndLine:<Key>End\n
    osfBeginLine:<Key>Home,<Key>Begin\n
    osfPageUp:<Key>Prior\n
    osfPageDown:<Key>Next\n
    osfBackSpace:<Key>BackSpace\n
    osfDelete:<Key>Delete\n
    osfInsert:<Key>Insert\n
    osfAddMode:Shift<Key>F8\n
    osfHelp:<Key>F1,<Key>Help\n
    osfMenu:Shift<Key>F10,<Key>Menu\n
    osfMenuBar:<Key>F10,Shift<Key>Menu\n
    osfSelect:<Key>Select\n
    osfActivate:<Key>KP_Enter,<Key>Execute\n
    osfClear:<Key>Clear\n
    osfUndo:<Key>Undo\n
    osfSwitchDirection:Alt<Key>Return,Alt<Key>KP_Enter"

    I reestablished my SSH session, and things are working great now!

     
  • Scott Tringali
    Scott Tringali
    2007-08-03

    • status: open --> closed
     
  • Scott Tringali
    Scott Tringali
    2007-08-03

    Logged In: YES
    user_id=11321
    Originator: NO

    Closed on request.