[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] c3a43b: Fix missing KeyRelease events when multiple keys a...

David T Lewis noreply at github.com
Tue Jan 19 19:13:31 UTC 2021


  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: c3a43bc998bad28e314cd3bd972015fe0a8e02aa
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/c3a43bc998bad28e314cd3bd972015fe0a8e02aa
  Author: David T Lewis <dtlewis290 at gmail.com>
  Date:   2021-01-19 (Tue, 19 Jan 2021)

  Changed paths:
    M platforms/unix/vm-display-X11/sqUnixX11.c

  Log Message:
  -----------
  Fix missing KeyRelease events when multiple keys are depressed. (#547)

* Fix missing KeyRelease events when multiple keys are depressed.
Reference Mantis 0007597 http://bugs.squeak.org/view.php?id=7597.
Rather than keep a single lastKey to remember the last previously
pressed key value, maintain an array size 256 of last key pressed values
indexed by X11 KeyCode. Works for any number of simultaneous keys.

* Initialize lastKeyValue array at compile time. For safety, mask index
into lastKeyValue to ensure array bounds are honored.

Co-authored-by: David T. Lewis <lewis at mail.msen.com>




More information about the Vm-dev mailing list