RFR: 8311033: [macos] PrinterJob does not take into account Sides attribute

Phil Race prr at openjdk.org
Mon Jul 10 22:32:02 UTC 2023


On Fri, 30 Jun 2023 10:00:46 GMT, Alexander Scherbatiy <alexsch at openjdk.org> wrote:

> To reproduce the issue run the [JavaSidesAttributePrinting](https://bugs.openjdk.org/secure/attachment/104448/JavaSidesAttributePrinting.java) java sample with ONE_SIDED and DUPLEX arguments on macOS:
> 
> java JavaSidesAttributePrinting ONE_SIDED
> java JavaSidesAttributePrinting DUPLEX
> 
> 
> The sample calls PrinterJob print method with the given sides attribute.
> The pages are printed according to the printer default settings not according to the provided Sides attributes.
> 
> The fix propagates Sides attribute
> - from `PrinterJob` to `NSPrintInfo` in `CPrinterJob.javaPrinterJobToNSPrintInfo` method
> - from `NSPrintInfo` to `PrinterJob` in `CPrinterJob.nsPrintInfoToJavaPrinterJob` method

1) The test doesn't seem to check whether the printer actually supports two-sided printing (!)
 You need to see if the value you use is supported else skip it

2) The test text is so similar .. and the user clearly is expected to "know" what "TWO_SIDED_LONG_EDGE" means.
I think you need to add a window that explains that "up to" THREE tests will run and it will test all the cases supported by the printer and you need to add words explaining each case

3) SHORT_EDGE doesn't seem to work for me. Hmm not working from Safari either so that can't be JDK code's problem

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

PR Comment: https://git.openjdk.org/jdk/pull/14727#issuecomment-1629816695



More information about the client-libs-dev mailing list