protected void nativeKeyEvent(android.view.KeyEvent event) { // event.isPrintingKey() returns false for whitespace and others, // which is a problem if the space bar or tab key are used. char key = (char) event.getUnicodeChar(); // if not mappable to a unicode character, instead mark as coded key if (key == 0 || key == 0xFFFF) { key = CODED; } int keyCode = event.getKeyCode(); int keAction = 0; int action = event.getAction(); if (action == android.view.KeyEvent.ACTION_DOWN) { keAction = KeyEvent.PRESS; } else if (action == android.view.KeyEvent.ACTION_UP) { keAction = KeyEvent.RELEASE; } // TODO set up proper key modifier handling int keModifiers = 0; KeyEvent ke = new KeyEvent(event, event.getEventTime(), keAction, keModifiers, key, keyCode); postEvent(ke); }
protected void nativeKeyEvent(java.awt.event.KeyEvent event) { int peAction = 0; switch (event.getID()) { case java.awt.event.KeyEvent.KEY_PRESSED: peAction = KeyEvent.PRESS; break; case java.awt.event.KeyEvent.KEY_RELEASED: peAction = KeyEvent.RELEASE; break; case java.awt.event.KeyEvent.KEY_TYPED: peAction = KeyEvent.TYPE; break; } // int peModifiers = event.getModifiersEx() & // (InputEvent.SHIFT_DOWN_MASK | // InputEvent.CTRL_DOWN_MASK | // InputEvent.META_DOWN_MASK | // InputEvent.ALT_DOWN_MASK); int peModifiers = event.getModifiers() & (InputEvent.SHIFT_MASK | InputEvent.CTRL_MASK | InputEvent.META_MASK | InputEvent.ALT_MASK); sketch.postEvent(new KeyEvent(event, event.getWhen(), peAction, peModifiers, event.getKeyChar(), event.getKeyCode())); }
protected void fxKeyEvent(javafx.scene.input.KeyEvent fxEvent) { int action = 0; EventType<? extends KeyEvent> et = fxEvent.getEventType(); if (et == KeyEvent.KEY_PRESSED) { action = processing.event.KeyEvent.PRESS; } else if (et == KeyEvent.KEY_RELEASED) { action = processing.event.KeyEvent.RELEASE; } else if (et == KeyEvent.KEY_TYPED) { action = processing.event.KeyEvent.TYPE; } int modifiers = 0; if (fxEvent.isShiftDown()) { modifiers |= processing.event.Event.SHIFT; } if (fxEvent.isControlDown()) { modifiers |= processing.event.Event.CTRL; } if (fxEvent.isMetaDown()) { modifiers |= processing.event.Event.META; } if (fxEvent.isAltDown()) { modifiers |= processing.event.Event.ALT; } long when = System.currentTimeMillis(); char keyChar = getKeyChar(fxEvent); int keyCode = getKeyCode(fxEvent); sketch.postEvent(new processing.event.KeyEvent(fxEvent, when, action, modifiers, keyChar, keyCode)); }