Root cause of multiple UI issues

Ajit Ghaisas ajit.ghaisas at oracle.com
Thu May 7 09:54:52 UTC 2020


Hi,

    While debugging code for - 8243476 : Image is being rendered with some offset - I fount that the call to method clipDestCoords() in MTLBlitLoops.m is either not necessary in some cases or incorrect.
    Commenting it out has resulted in lot of UI issues being fixed. It fixes all below issues -

    JDK-8243476 : Image is being rendered with some offset
    JDK-8243546 : Nimbus L&F - SwingSet2 - Slider Demo - vertical slider is not rendered properly
    JDK-8243545 : Nimbus L&F - SwingSet2 - Highlighted/Focused button has UI artifact
    JDK-8243542 : Nimbus L&F - SwingSet2 - Internal Frames Demo - Frame dragging result in some artifacts. Recovers on window refresh
    JDK-8242952 : Initial images are not proper in JSplitPane Demo
    JDK-8242958 : Initially icons are not rendered properly in OptionPane demo with MetalLookAndFeel
    JDK-8242917 : Flipping of images doesn't work properly
    JDK-8242795 : Demo icons appears twice in SwingSet2 demo
    JDK-8238087 : In SwingSet2 demo test bottle image is not fully rendered in the message dialog of OptionPane demo
    JDK-8238088 : [macos] There is some unnecessary rendering on the SliderPane of MajorTicks and MinorTicks

    Commenting out this call is not the full proof solution as there are one or two side effects especially with -Dsun.java2d.uiScale=1.0.
    We need to tweak this method or it’s usage to fix all above issues.

    I request either Alexey or Artem to take a look at this image rendering clip logic.

    I have a draft PR if you quickly want to try out:
    https://github.com/openjdk/lanai/pull/42

Regards,
Ajit


More information about the lanai-dev mailing list