[OpenJDK 2D-Dev] RFR JDK-8246742: ServiceUI.printDialog does not support properties dialog

Jayathirth D v JAYATHIRTH.D.V at ORACLE.COM
Thu Jul 16 15:56:34 UTC 2020


Hi Prasanta,

I tested the fix in Mac and Windows and it works as mentioned.

In http://hg.openjdk.java.net/jdk/client/file/754ec520eb4a/src/java.desktop/windows/classes/sun/print/Win32PrintService.java#l1688 <http://hg.openjdk.java.net/jdk/client/file/754ec520eb4a/src/java.desktop/windows/classes/sun/print/Win32PrintService.java#l1688> we are returning null when “role <= ServiceUIFactory.MAIN_UIROLE”. So it covers 3 roles “MAIN_UIROLE”, “ADMIN_UIROLE” and “ABOUT_UIROLE”.

In your webrev we are checking only for “MAIN_UIROLE”. Is creation of “JDIALOG_UI” restricted only to “MAIN_UIROLE”?

Thanks,
Jay

> On 15-Jul-2020, at 6:27 PM, Prasanta Sadhukhan <prasanta.sadhukhan at oracle.com> wrote:
> 
> Any reviewer for this?
> 
> On 09-Jul-20 1:10 PM, Prasanta Sadhukhan wrote:
>> Hi All,
>> 
>> Please review a fix for an issue where "Properties" button in ServiceUI.printDialog is enabled in windows but clicking it doesn't show any dialog.
>> 
>> According to JDK-4673406 <https://bugs.openjdk.java.net/browse/JDK-4673406>, the properties dialog isn't supported for direct uses with javax.print.ServiceUI.printDialog, so it makes sense to disable this properies button for this usecase.
>> 
>> This button is disabled in linux,mac already. This is because, as per
>> 
>> http://hg.openjdk.java.net/jdk/client/annotate/754ec520eb4a/src/java.desktop/share/classes/sun/print/ServiceDialog.java#l964 <http://hg.openjdk.java.net/jdk/client/annotate/754ec520eb4a/src/java.desktop/share/classes/sun/print/ServiceDialog.java#l964>
>> the button is disabled if ServiceUIFactory is null and for linux/mac, it is null
>> 
>> http://hg.openjdk.java.net/jdk/client/file/754ec520eb4a/src/java.desktop/unix/classes/sun/print/IPPPrintService.java#l1637 <http://hg.openjdk.java.net/jdk/client/file/754ec520eb4a/src/java.desktop/unix/classes/sun/print/IPPPrintService.java#l1637>
>> http://hg.openjdk.java.net/jdk/client/file/754ec520eb4a/src/java.desktop/share/classes/sun/print/PSStreamPrintService.java#l490 <http://hg.openjdk.java.net/jdk/client/file/754ec520eb4a/src/java.desktop/share/classes/sun/print/PSStreamPrintService.java#l490>
>> but for windows, it created "Win32ServiceUIFactory" but it does not handle the properties dialog if "role" requested to be performed by ServiceUI is <= ServiceUIFactory.MAIN_UIROLE
>> 
>> [http://hg.openjdk.java.net/jdk/client/file/754ec520eb4a/src/java.desktop/windows/classes/sun/print/Win32PrintService.java#l1688 <http://hg.openjdk.java.net/jdk/client/file/754ec520eb4a/src/java.desktop/windows/classes/sun/print/Win32PrintService.java#l1688>]
>> 
>> Proposed fix is to make sure this role is accounted for in the buttonProperties enabling check.
>> 
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8246742 <https://bugs.openjdk.java.net/browse/JDK-8246742>
>> webrev: http://cr.openjdk.java.net/~psadhukhan/8246742/webrev.0/ <http://cr.openjdk.java.net/~psadhukhan/8246742/webrev.0/>Regards
>> Prasanta

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/2d-dev/attachments/20200716/5a42da3d/attachment.htm>


More information about the 2d-dev mailing list