code: public void postKey (long time, Key key, boolean pressed, char typedCh, int modFlags) {
      kevQueue.add(key == null ?
                   new Keyboard.TypedEvent(modFlags, time, typedCh) :
                   new Keyboard.KeyEvent(modFlags, time, key, pressed));
    }
docs: Posts a key event received from elsewhere (i.e. a native UI component). This is useful for
  applications that are using GL in Canvas mode and sharing keyboard focus with other (non-GL)
  components. The event will be queued and dispatched on the next frame, after GL keyboard
  events.
  
  @param time the time (in millis since epoch) at which the event was generated, or 0 if N/A.
  @param key the key that was pressed or released, or null for a char typed event
  @param pressed whether the key was pressed or released, ignored if key is null
  @param typedCh the character that was typed, ignored if key is not null
  @param modFlags modifier key state flags (generated by {@link #modifierFlags})