_  _    __    ___  __    ___  _____  _  _
 ( \( )  /__\  / __)(  )  / __)(  _  )( \( )
  )  (  /(__)\( (__  )(__( (__  )(_)(  )  (
 (_)\_)(__)(__)\___)(____)\___)(_____)(_)\_)

The History of Hacking  ·  May 31 – June 2, 2026  ·  Carolina Beach, NC

  • src/conio/wl_events.c

    From Deucе@VERT to Git commit to main/sbbs/master on Sat Apr 25 14:52:58 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/9b7d45c483b887623791c03c
    Modified Files:
    src/conio/wl_events.c
    Log Message:
    conio/wayland: fix key repeat sending numpad digits for arrows

    bug ticket 242: holding arrows under Wayland produced ASCII digits
    (Left=4, Right=6, Up=8, Down=2, etc.) once key-repeat began.

    send_scancode() stored the remapped BIOS scancode in repeat_key,
    but handle_key_repeat() feeds repeat_key back into send_scancode()
    as if it were an evdev code. BIOS scancode 75 (Left) collides with
    evdev KEY_KP4, so the xkb path returned '4' on repeat — and the
    same coincidence covers all the other reported keys.

    Store the original evdev_key in repeat_key consistently, and match
    release events against evdev_key.

    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net