On Thu, 2 Jun 2022 17:26:49 GMT, Alexander Zuev <kiz...@openjdk.org> wrote:

>> src/java.desktop/windows/native/libawt/windows/ShellFolder2.cpp line 993:
>> 
>>> 991:             } else {
>>> 992:                 fn_DestroyIcon((HICON)hIconSmall);
>>> 993:             }
>> 
>> Does it mean that we will extract all images except on the sides twice? for 
>> 16x16 we will extract 16x16 and 32x32 on the next iteration for 32x32 we 
>> will extract 32x32 and 64x64?
>> 
>> Can we try to do that via different API: 
>> https://devblogs.microsoft.com/oldnewthing/20140501-00/?p=1103 probably it 
>> will work better?
>
>> Does it mean that we will extract all images except on the sides twice? for 
>> 16x16 we will extract 16x16 and 32x32 on the next iteration for 32x32 we 
>> will extract 32x32 and 64x64?
> 
> No, on the next iteration we will extract 16x16 and 64x64. So on each 
> iteration we are going to extract additionally 16x16 icon and if size is 24 
> or more than we will ignore it. Since all the icons requested are cached that 
> will not cause any performance degradation.

> Can we try to do that via different API: 
> https://devblogs.microsoft.com/oldnewthing/20140501-00/?p=1103 probably it 
> will work better?

No, during initial implementation i tried it and it worked even worse and less 
stable.

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

PR: https://git.openjdk.java.net/jdk/pull/7805

Reply via email to