<AWT Dev> [10] JDK-8189257: Enabling Translucent Frame with setBackground disables HiDPI

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

<AWT Dev> [10] JDK-8189257: Enabling Translucent Frame with setBackground disables HiDPI

Shashidhara H V

Hi All, Please review a fix for the below bug:

 

Bug: https://bugs.openjdk.java.net/browse/JDK-8189257

 

Webrev: http://cr.openjdk.java.net/~sveerabhadra/8189257/webrev.00/

 

Summary: With setBackground on for a window and system DPI != 100% causes HiDPI disabled hence producing a window of size equivalent to 100% DPI though it is not the case. Fixes has been done to update the window size and buffered image size increase\decrease proportionately per the system DPI. Below are the results. Now the window size dynamically syncs with system DPI change. Please note the font size has not been changed proportionately and am looking to find a solution in further review passes.

 

 

Thanks and regards,
Shashi

Reply | Threaded
Open this post in threaded view
|

Re: <AWT Dev> [10] JDK-8189257: Enabling Translucent Frame with setBackground disables HiDPI

Sergey Bylokhov
Hi, Shashi.
It seems that the changes in WWindowPeer.updateWindow() will update the
size of the window. Note that if the size of the window is 100x100 and
the scale is 2, then the real size in device space is 200x200 but in the
user space the size is 100x100. Window.set/getSize should work in the
user space.

There is a difference in the implementation of BufferedImage and
VolatileImage. VolatileImage unlike BI is always internally scaled. It
means that if the VolatileImage size is 100x100 and the scale of the
graphicsConfig is 2, then the real size of the native texture will be
200x200. Can you please confirm that the changes in VIWindowPainter are
necessary. It could be possible that we will create the image which 2
times bigger than necessary.

On 27/10/2017 05:49, Shashidhara Veerabhadraiah wrote:

> Hi All, Please review a fix for the below bug:
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8189257
>
> Webrev: http://cr.openjdk.java.net/~sveerabhadra/8189257/webrev.00/
>
> Summary: With setBackground on for a window and system DPI != 100%
> causes HiDPI disabled hence producing a window of size equivalent to
> 100% DPI though it is not the case. Fixes has been done to update the
> window size and buffered image size increase\decrease proportionately
> per the system DPI. Below are the results. Now the window size
> dynamically syncs with system DPI change. Please note the font size has
> not been changed proportionately and am looking to find a solution in
> further review passes.
>
> Thanks and regards,
> Shashi
>


--
Best regards, Sergey.