G4P issues with Processing

G4P is a large complex library and there are areas that it doesn't work well with Processing. This page identifies known problem areas and where possible provides a work-around .

Mouse cursor and OpenGL

By default G4P changes the mouse icon when it moves over a control but when using OpenGL (P2D/P3D) calling the setCursor(...) method Processing fires a phanton ENTERED event. This event affects G4P's event handling to the point controls become unresponsive as if disabled.

Until Processing fix the bug there is a simple work-arround, include the statement


As the second line in setup() immediately after the call to size(...) like this

public void setup() {
  size(200, 200, P2D);
  G4P.setMouseOverEnabled(false); // use this until the bug is fixed
  // rest of your setup code here

This problem does not occur using the default JAVA2D renderer.

Post 4.1.5 versions will switch off cursor icon changes until the bug is fixed.

See the Github issue

Keyboard input and OpenGL

When using any of the G4P text controls, GTextarea, Gtextfoield and GPassword with OpenGL (P2D/P3D) the backspace and delete keys do not fire events so it is impossible to delete characters in these controls. Unfortunately there is no work-around for this issue as I am not prepared to bastardise my code trying to overcome tis problem.

This is not an issue with the default JAVA2D renderer.

See the Github issue