On Mon, 30 Jun 2025 05:57:30 GMT, Prasanta Sadhukhan <psadhuk...@openjdk.org> wrote:
>> When JRadioButtonMenuItem is called with imageIcon, then only imageIcon is >> shown without radiobutton in WIndowsLookAndFeel as there was no provision of >> drawing the radiobutton alongside icon. >> If icon is not there, the radiobutton is drawn. Added provision of drawing >> the radiobutton windows Skin even when imageIcon is present. > > Prasanta Sadhukhan has updated the pull request incrementally with one > additional commit since the last revision: > > Alignment fix src/java.desktop/windows/classes/com/sun/java/swing/plaf/windows/WindowsIconFactory.java line 928: > 926: getIconWidth(), getIconHeight(), > backgroundState); > 927: skinWidth = getIconWidth(); > 928: skin = xp.getSkin(c, part); What I expect to see here is that the skin is always painted at (`x + OFFSET, y + OFFSET`) skin.paintSkin(g, x + OFFSET, y + OFFSET, state); in both Windows 10 and 11. The check mark and bullet have to remain on their own designated place. src/java.desktop/windows/classes/com/sun/java/swing/plaf/windows/WindowsIconFactory.java line 940: > 938: icon.paintIcon(c, g, x + icon.getIconWidth(), > 939: y + OFFSET); > 940: } If an icon is present, it gets painted instead of check mark or bullet in Windows 10. In Windows 11 the icon gets painted on * on the same location in regular case when the current popup menu contains no check or radio menu items with an icon; * on its own column with has proper large margins when there's at least one check or radio menu item with an icon; the size of the entire popup has to increase to allocate space for the icon column. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/23324#discussion_r2175235234 PR Review Comment: https://git.openjdk.org/jdk/pull/23324#discussion_r2175244401