JDK-8148431 : PrinterJob.pageDialog() does not support multi-mon, always displayed on primary
  • Type: Bug
  • Component: client-libs
  • Sub-Component: 2d
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2016-01-28
  • Updated: 2016-01-29
  • Resolved: 2016-01-29
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9Resolved
Related Reports
Duplicate :  
Description
A cross-platform PageDialog is always displayed on a primary screen device. 

PageDialog shown using PrinterJob.pageDialog(attr set) does not support multi-monitor setup. When this API is invoked, the page dialog is always displayed on the default screen device regardless of where the application is running. 
Comments
It is seen that GraphicsConfig passed to ServiceDialog class is from default screen device. so when the pageDialog is shown, it is displayed in the default monitor even when the active frame/window is in secondary monitor. Fix is to use the current active window and get the GraphicsConfig from that window and use that GraphicsConfig into the ServiceDialog class to show the dialog.
28-01-2016