Merge pull request #96203 from bruvzg/fd_all_filter

[Linux] Fix "all files" filter in the native file dialog.
This commit is contained in:
Rémi Verschelde 2024-08-28 09:45:47 +02:00
commit 108c603f91
No known key found for this signature in database
GPG Key ID: C3336907360768E1
1 changed files with 13 additions and 4 deletions

View File

@ -377,8 +377,16 @@ Error FreeDesktopPortalDesktop::file_dialog_show(DisplayServer::WindowID p_windo
String flt = tokens[0].strip_edges(); String flt = tokens[0].strip_edges();
if (!flt.is_empty()) { if (!flt.is_empty()) {
if (tokens.size() == 2) { if (tokens.size() == 2) {
if (flt == "*.*") {
filter_exts.push_back("*");
} else {
filter_exts.push_back(flt); filter_exts.push_back(flt);
}
filter_names.push_back(tokens[1]); filter_names.push_back(tokens[1]);
} else {
if (flt == "*.*") {
filter_exts.push_back("*");
filter_names.push_back(RTR("All Files"));
} else { } else {
filter_exts.push_back(flt); filter_exts.push_back(flt);
filter_names.push_back(flt); filter_names.push_back(flt);
@ -386,8 +394,9 @@ Error FreeDesktopPortalDesktop::file_dialog_show(DisplayServer::WindowID p_windo
} }
} }
} }
}
if (filter_names.is_empty()) { if (filter_names.is_empty()) {
filter_exts.push_back("*.*"); filter_exts.push_back("*");
filter_names.push_back(RTR("All Files")); filter_names.push_back(RTR("All Files"));
} }