src/java.desktop/macosx/native/libawt_lwawt/awt/CPrinterJob.m
changeset 52246 f49c340e3f39
parent 47216 71c04702a3d5
child 52255 c7afaa79cbb3
--- a/src/java.desktop/macosx/native/libawt_lwawt/awt/CPrinterJob.m	Thu Oct 04 14:56:03 2018 +0530
+++ b/src/java.desktop/macosx/native/libawt_lwawt/awt/CPrinterJob.m	Thu Oct 04 15:03:48 2018 +0530
@@ -315,6 +315,14 @@
     static JNF_MEMBER_CACHE(jm_setCopiesAttribute, sjc_CPrinterJob, "setCopiesAttribute", "(I)V");
     static JNF_MEMBER_CACHE(jm_setCollated, sjc_CPrinterJob, "setCollated", "(Z)V");
     static JNF_MEMBER_CACHE(jm_setPageRangeAttribute, sjc_CPrinterJob, "setPageRangeAttribute", "(IIZ)V");
+    static JNF_MEMBER_CACHE(jm_setPrintToFile, sjc_CPrinterJob, "setPrintToFile", "(Z)V");
+
+    NSPrintJobDispositionValue jobDisposition = [src jobDisposition];
+    if (jobDisposition == NSPrintSaveJob) {
+        JNFCallVoidMethod(env, dstPrinterJob, jm_setPrintToFile, true);
+    } else {
+        JNFCallVoidMethod(env, dstPrinterJob, jm_setPrintToFile, false);
+    }
 
     // get the selected printer's name, and set the appropriate PrintService on the Java side
     NSString *name = [[src printer] name];