On Fri, 24 May 2024 06:44:06 GMT, Abhishek Kumar <abhis...@openjdk.org> wrote:

> bug6492108.java test always fails in GTK L&F in single as well as dual screen 
> linux machines. Since this test was not marked as "_headful_" in it's initial 
> version, it never failed but after the fix of 
> [JDK-8287051](https://bugs.openjdk.org/browse/JDK-8287051) this test was 
> problem listed as it always
> failed which is captured in the JBS.
> The reason of failure is the pixel color mismatch between JEditorPane and 
> JTextArea/JTextPane which is caused by the JEditorPane's default opaque value 
> which is false for GTK3 at 
> [L767](https://github.com/kumarabhi006/jdk/blob/c642f44bbe1e4cdbc23496a34ddaae30990ce7c0/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java#L767).
> In initial load JEditorPane, JTextArea and JTextPane components are opaque at 
> [L718](https://github.com/kumarabhi006/jdk/blame/6c7656678916ff3f5c9fc70efcbb69ce76801458/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java#L718)
>  but after the fix for 
> [JDK-8145547](https://bugs.openjdk.org/browse/JDK-8145547) the implementation 
> was changed to provide conditional support for GTK3 on linux where few 
> components like Editor Pane, Formatted text Field, Password Field etc are 
> opaque only if the  [GTK version is not 
> 3](https://github.com/kumarabhi006/jdk/blame/73d2181d56063f6015e4fc42e130591bee39bc36/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java#L746C21-L746C21).
> JTextPane's issue was observed by 
> [JDK-8218479](https://bugs.openjdk.org/browse/JDK-8218479) and then the 
> default opacity is set to true for JTextPane [irrespective of GTK 
> version](https://github.com/kumarabhi006/jdk/blame/c642f44bbe1e4cdbc23496a34ddaae30990ce7c0/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java#L750C16-L750C16).
> Extending the fix in isOpaque() method in GTKStyle.java for JEditorPane 
> similar to JTextPane resolves the issue.
> 
> Test verified in both single and dual screen linux machines.

This pull request has now been integrated.

Changeset: 5dcb7a62
Author:    Abhishek Kumar <abhis...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/5dcb7a627e1cfb360719a25722588180e5de9d09
Stats:     150 lines in 2 files changed: 146 ins; 1 del; 3 mod

8160755: bug6492108.java test fails with exception Image comparison failed at 
(0, 0) for image 4 in GTK L&F

Reviewed-by: aivanov, dnguyen, tr

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

PR: https://git.openjdk.org/jdk/pull/19381

Reply via email to