TShellListView cannot be masked case-insensitive on Linux
Original Reporter info from Mantis: ruewa
-
Reporter name:
Original Reporter info from Mantis: ruewa
- Reporter name:
Description:
On Linux there seems to be no way for TShellListView to mask files in a case-insensitive way: You cant't get *.jpg and *.JPG files at the same time (different cameras name picture files in different ways).
This is a side result of the solution of issue #17761 (closed): duplicates were rejected (via TStringList.IndexOf in ShellCtrls.pas line 675) case-insensitive, but populating the ShellListView is done case-sensitive via FindFirst/FindNext - at least on Linux.
My patch goes half way back from the 0017761-solution, but it works on Linux and will not do any harm on Windows. Nevertheless it's more a workaround which makes it possible to work with a mask like '.jpg;.JPG'. This will reject a *.jPg file anyway, so a real case-insensitive solution would be way better. But I guess that would require a big hack in SysUtils...
Steps to reproduce:
See the test program, which includes 4 small picture files. All of them should be shown in the ShellListView when the mask is set to '.jpg;.JPG;.PNG;.png'.
Additional information:
Related to 0017761
Mantis conversion info:
- Mantis ID: 29255
- OS: Linux
- OS Build: Debian Wheezy
- Build: 51035
- Platform: x86_64
- Version: 1.5 (SVN)
- Fixed in version: 1.6
- Fixed in revision: r51037 (#cc42e8d5)
- Target version: 1.6