RFR: 8006421: GraphicsConfiguration of a frame is changed when the frame is moved to another screen [v4]

Andrey Turbanov aturbanov at openjdk.org
Tue Jun 13 16:23:56 UTC 2023


On Mon, 12 Jun 2023 10:40:03 GMT, Tejesh R <tr at openjdk.org> wrote:

>> When a frame is dragged from one screen to another screen, the `GraphicsConfigurations` may vary depending on screen/monitor. However, transparency has to be maintained since it is expected as it is set. So the fix addresses in maintaining the translucency capability when frame is moved from one screen to another screen. For main screen, translucency is set when `setBackground` is called, but for second screen the same is not taken care. Hence setting of Translucency Capable `GC` is taken care when screen switch happens. The fix handles only for non-opaque windows alone retaining the behavior for opaque windows. 
>> The fix is verified in CI for regression check, which is Green.
>
> Tejesh R has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix - Modified setGC to use getAppropriateGC

src/java.desktop/share/classes/java/awt/Window.java line 3218:

> 3216:     @Override
> 3217:     void setGraphicsConfiguration(GraphicsConfiguration gc) {
> 3218:         synchronized(getTreeLock()) {

Suggestion:

        synchronized (getTreeLock()) {

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

PR Review Comment: https://git.openjdk.org/jdk/pull/14246#discussion_r1228398187



More information about the client-libs-dev mailing list