[OpenJDK 2D-Dev] [9] RFR 8170352: The collate option is not checked

Phil Race philip.race at oracle.com
Fri Dec 9 23:28:10 UTC 2016

Regarding being hard-coded for "Selection", the point there is that in 
the AWT code path we always generate Postscript, whereas in the 2D path 
we may send some other content. Since we generate Postscript my instinct 
here is that Collate should always work since that gets embedded in the 
Postscript. The CUPS filter should then do whatever is necessary to 
generate the right number of collated or uncollated copies for the 
printer. I tracked down the changeset that has the code you reference 
http://hg.openjdk.java.net/jdk8/jdk8/jdk/rev/dead66347eca If you read 
the bug report for that : 
https://bugs.openjdk.java.net/browse/JDK-8016737 then it becomes clear 
(sort of) that this was a workaround for the oddity that Collate worked 
on Ubuntu 12.04 but not on Ubuntu 13.04, so the idea was to stop saying 
it was supported. That is very annoying of course and I'd love to know 
if we've rechecked from the source that "CUPS does not report collate as 
a supported attribute" It is mentioned in CUPS docs. 
Also the fix you are proposing doesn't seem to change anything that will 
help the test. It expects Collate to be checked. Doesn't it ? -phil.

On 12/09/2016 12:22 AM, Prasanta Sadhukhan wrote:
> Hi All,
> In continuation with the below mail, the issue is "collate" option is 
> not checked for linux.
> Bug: https://bugs.openjdk.java.net/browse/JDK-8170352
> webrev: http://cr.openjdk.java.net/~psadhukhan/8170352/webrev.00/
> Proposed fix is to disable collate option for linux in printer dialog.
> Regards
> Prasanta
> On 12/8/2016 4:23 PM, Prasanta Sadhukhan wrote:
>> Hi Phil,
>> I was investigating JDK-8170352: The collate option is not checked 
>> and I found that CUPS does not report collate as supported attribute.
>> It is removed from printRequestAttrib 
>> [http://hg.openjdk.java.net/jdk9/client/jdk/file/a21bac70753d/src/java.desktop/unix/classes/sun/print/IPPPrintService.java#l167]
>> so we do not look for collate-supported attribute in CUPS. Infact, 
>> getAttMap does not have any "collate-supported" attribute too!!
>> Also, this code 
>> [http://hg.openjdk.java.net/jdk9/client/jdk/file/a21bac70753d/src/java.desktop/unix/classes/sun/print/IPPPrintService.java#l1062] 
>> has been added [for 8016737]
>> to remove SheetCollate from supported attributes.
>> In light of this, I think we should disabled collate option from our 
>> print dialog even for Toolkit based PrintJob. It seems, from this code
>> http://hg.openjdk.java.net/jdk9/client/jdk/file/a21bac70753d/src/java.desktop/share/classes/sun/print/ServiceDialog.java#l1251
>> it is enabled if we specify in testcase
>> /job.setDefaultSelection(JobAttributes.DefaultSelectionType.SELECTION); 
>> /in which case isAWT set to true.
>> even though selection is determined by attribute support 
>> [http://hg.openjdk.java.net/jdk9/client/jdk/file/a21bac70753d/src/java.desktop/share/classes/sun/print/ServiceDialog.java#l1320]
>> I could not find why it is hardcoded to setEnabled(true) for 
>> "Selection". Do you know? mercurial history shows that line from jdk7 
>> and I could not find previous history.
>>  I think there also, we should check for "scSupported" to enable 
>> sheetcollate? Anyways, "Selection" option is not there in linux.
>> Please let me know your views.
>> Regards
>> Prasanta

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/2d-dev/attachments/20161209/e1dea992/attachment.html>

More information about the 2d-dev mailing list