diff --git a/java/src/processing/mode/java/runner/Runner.java b/java/src/processing/mode/java/runner/Runner.java index d0bded04de..3813928ea4 100644 --- a/java/src/processing/mode/java/runner/Runner.java +++ b/java/src/processing/mode/java/runner/Runner.java @@ -343,7 +343,7 @@ protected StringList getMachineParams() { //params.append("-Dcom.apple.mrj.application.apple.menu.about.name=" + // build.getSketchClassName()); - if ("WEBGPU".equals(build.getSketchRenderer())) { + if (PConstants.WEBGPU.equals(build.getSketchRenderer())) { params.append("-XstartOnFirstThread"); } } @@ -515,10 +515,13 @@ protected StringList getSketchParams(boolean present, String[] args) { params.append(PApplet.ARGS_UI_SCALE + "=" + uiScale); } */ - - // TODO: excise AWT to make webgpu work properly - params.append(PApplet.ARGS_DISABLE_AWT); - + // Only disable AWT for the WebGPU renderer, which uses GLFW and + // cannot coexist with AWT. All other renderers still depend on AWT + // for display detection, displayWidth/displayHeight, pixelDensity(), etc. + if (PConstants.WEBGPU.equals(build.getSketchRenderer())) { + params.append(PApplet.ARGS_DISABLE_AWT); + } + params.append(build.getSketchClassName()); } // Add command-line arguments to be given to the sketch itself