RFR: 8282526: Default icon is not painted properly [v8]
kansasSamurai
duke at openjdk.org
Sun May 21 15:42:09 UTC 2023
On Fri, 15 Jul 2022 19:15:52 GMT, Alexander Zuev <kizune at openjdk.org> wrote:
>> Detect the situation where we do need to perform interpolation during ImageIcon
>> painting and set a hint to the rendering to perform bicubic approximation so
>> image details are preserved during transition.
>
> Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision:
>
> Correct wrong wording in a comment
I came across this PR while researching the same issue using Windows11 w/ JDK8. If my comment is of merit, I can provide the exact JDK8 build. As I read the history of this PR, I can't help but feel that maybe it's gone a little off course?
I agree with the reasoning for the addition of: `getSystemIcon(file,w,w)` i.e. to me, it only makes sense that since Win10/11 changed the behavior of getSystemIcon(file), then a new method is required to be more specific.
However, I'm not sure I agree that forcing the legacy method `getSystemIcon()` to return 16x16 is the best solution. While I understand that it has historically worked that way, it does not seem to be a documented feature that the icon will always be 16x16 but rather a "coincidence" based on OS system implementation. Seems to me that the best cross platform approach is to return the icon based on the OS behavior. While I certainly understand that behavior might result in "odd" UI changes, at least the raw system icon is returned and the end programmer can make decisions how to best handle it (certainly wouldn't be the first time java programmers have to account for multiple OS behavior). It does put a burden on the end programmer if they want a certain size (and I also understand that most will want that based on consistent UI designs), but that behavior is fairly easy to implement and a default implementation of that could be *added* to the API as well (although, IMO, it would b
e nice but is the lowest on my personal priority list).
I hope I've expressed my reasoning well. Just thought some input from "the field" might be of some value.
p.s. I also realize this PR is closed but it still seemed like the best place to leave the feedback since several other issues were spawned from this one.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/7805#issuecomment-1556208677
More information about the client-libs-dev
mailing list