@@ -19,11 +19,31 @@ namespace xpano::gui::file_dialog {
19
19
20
20
namespace {
21
21
22
+ template <typename TArray>
23
+ TArray Uppercase (const TArray& extensions) {
24
+ TArray result;
25
+ auto to_upper = [](const auto & extension) {
26
+ auto uppercase_extension = extension;
27
+ std::transform (extension.begin (), extension.end (),
28
+ uppercase_extension.begin (),
29
+ [](const auto & letter) { return std::toupper (letter); });
30
+ return uppercase_extension;
31
+ };
32
+ std::transform (extensions.begin (), extensions.end (), result.begin (),
33
+ to_upper);
34
+ return result;
35
+ }
36
+
22
37
std::vector<std::filesystem::path> MultifileOpen () {
23
38
NFD::UniquePathSet out_paths;
24
39
25
40
std::array<nfdfilteritem_t , 1 > filter_item;
26
41
auto extensions = fmt::format (" {}" , fmt::join (kSupportedExtensions , " ," ));
42
+ #ifndef _WIN32
43
+ extensions = fmt::format (" {},{}" , extensions,
44
+ fmt::join (Uppercase (kSupportedExtensions ), " ," ));
45
+ #endif
46
+
27
47
filter_item[0 ] = {" Images" , extensions.c_str ()};
28
48
std::vector<std::filesystem::path> results;
29
49
0 commit comments