Good enough to fix the regression.

+1

-phil.

On 9/26/18, 11:24 PM, Prasanta Sadhukhan wrote:

I have added @requires tag and also did an initial check of existing printers and exit if there is any.

Regarding setting,retrieving Destination attribute, if we do not show the print dialog and ask user to select file and ok, it will not set call nsPrintInfoToJavaPrinterJob which is called from showDialog() and so NSPrintJobDispositionValuewill not be set up and setPrintToFile() will not be called.

I checked in jdk8GA too, it fails if we set Destination and try to print. I guess existing customer issue is about not printing if user manually selects "Save as PDF". I guess I can work on that issue as a separate bug. Modified test webrev:http://cr.openjdk.java.net/~psadhukhan/8211055/webrev.1/

Regards
Prasanta
On 26-Sep-18 9:48 PM, Phil Race wrote:
This is all MacOS specific changes - and functionality - but the test seems
to be cross-platform. Shouldn't it at least have an @requires macos tag ?

And I think the test should verify there are no printers and say it can't
be run if you have any ... and exit ...

Can we set & retrieve the file as a Destination attribute ?
Then we can verify the file was saved without the user's help


  123             " 4. Another dialog opends prompting for filename, enter any filename and 
press \"Save\".\r\n" +

opends -> opens

-phil.

On 09/26/2018 04:38 AM, Prasanta Sadhukhan wrote:
Hi All,

Please review a fix for an issue where it is seen that if we do not have any printer installed and we try to save the printjob to a file via "Save as PDF" option in mac, it was throwing PrinterExcetion:no printer service found.

This is a regression of JDK-8132988 where a check was added to make sure PrinterException is thrown if there is no printer installed. Proposed fix is to find out if user is selecting "Save as PDF" option in native print dialog which will cause NSPrintInfo's jobDisposition value to be |NSPrintSaveJob
[https://developer.apple.com/documentation/appkit/nsprintinfo/1528717-jobdisposition?language=objc]

|In that case, the previous "no-printer" check is amended to also check if the print operation is saving to a file, in which case do not throw PrinterException and proceed with Save-File operation.
JDK-8132988  testcase also works ok after this fix.

Bug: https://bugs.openjdk.java.net/browse/JDK-8211055
webrev: http://cr.openjdk.java.net/~psadhukhan/8211055/webrev.0/

Regards
Prasanta
||


Reply via email to