On Fri, 25 Sep 2020 18:47:40 GMT, Phil Race <p...@openjdk.org> wrote:
>> A long-standing bug on macOS: >> https://bugs.openjdk.java.net/browse/JDK-7179006 >> >> The fix is to propagate whatever is set as the Destination down to native >> and set it on the native printing object. >> >> Also if using the native dialog, but with attributes, copy back the >> destination from native to the Java attribute set. >> >> The new test can directly test printing to file in an automated way - so >> long as there is a printer. >> >> The updated manual test can be used to verify the cross-platform dialog >> case. > > Phil Race has updated the pull request incrementally with one additional > commit since the last revision: > > 7179006: [macosx] Print-to-file doesn't work: printing to the default > printer instead. src/java.desktop/macosx/classes/sun/lwawt/macosx/CPrinterJob.java line 261: > 259: URI destURI = new URI(dest); > 260: attributes.add(new Destination(destURI)); > 261: destinationAttr = "" + destURI.getSchemeSpecificPart(); This destinationAttr in the RasterPrinterJob is usually assigned to: destinationAttr = "" + new File(destination.getURI(). getSchemeSpecificPart()); Do we need to do the same here? src/java.desktop/macosx/native/libawt_lwawt/awt/CPrinterJob.m line 337: > 335: } > 336: > 337: // get the selected printer's name, and set the appropriate > PrintService on the Java side The comment need to be moved up as well? ------------- PR: https://git.openjdk.java.net/jdk/pull/339