[OpenJDK 2D-Dev] RFR: 7179006: [macosx] Print-to-file doesn't work: printing to the default printer instead.

Phil Race prr at openjdk.java.net
Fri Sep 25 18:30:08 UTC 2020


On Fri, 25 Sep 2020 01:32:49 GMT, Sergey Bylokhov <serb at 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.
>
> src/java.desktop/macosx/native/libawt_lwawt/awt/CPrinterJob.m line 441:
> 
>> 439:        NSURL *nsURL = [NSURL fileURLWithPath:nsDestStr isDirectory:NO];
>> 440:        [printingDictionary setObject:nsURL forKey:NSPrintJobSavingURL];
>> 441: //        JNFCallVoidMethod(env, dstPrinterJob, jm_setPrintToFile, true);
> 
> Does it look like the commented lines are not needed?

Hmm. I could swear I removed those and re-ordered the first two lines as well.

-------------

PR: https://git.openjdk.java.net/jdk/pull/339


More information about the 2d-dev mailing list