feat(files+gb): file browser launches .gb via GameBoy, preserve mDNS

This commit is contained in:
Adolfo Reyna
2026-07-20 12:51:19 -04:00
parent f45dcbb9e1
commit 5c18387792
3 changed files with 33 additions and 22 deletions
+12 -17
View File
@@ -1,29 +1,24 @@
#include <Tactility/StringUtils.h>
#include <Tactility/TactilityCore.h>
namespace tt::app::files {
constexpr auto* TAG = "Files";
bool isSupportedAppFile(const std::string& filename) {
return filename.ends_with(".app");
}
bool isSupportedImageFile(const std::string& filename) {
// Currently only the PNG library is built into Tactility
return string::lowercase(filename).ends_with(".png");
}
bool isSupportedTextFile(const std::string& filename) {
std::string filename_lower = string::lowercase(filename);
return filename_lower.ends_with(".txt") ||
filename_lower.ends_with(".ini") ||
filename_lower.ends_with(".json") ||
filename_lower.ends_with(".yaml") ||
filename_lower.ends_with(".yml") ||
filename_lower.ends_with(".lua") ||
filename_lower.ends_with(".js") ||
filename_lower.ends_with(".properties");
std::string l = string::lowercase(filename);
return l.ends_with(".txt") || l.ends_with(".ini") || l.ends_with(".json") || l.ends_with(".yaml") || l.ends_with(".yml") ||
l.ends_with(".lua") || l.ends_with(".js") || l.ends_with(".properties");
}
} // namespace tt::app::filebrowser
bool isSupportedAudioFile(const std::string& filename) {
std::string l = string::lowercase(filename);
return l.ends_with(".mp3") || l.ends_with(".wav") || l.ends_with(".ogg") || l.ends_with(".flac");
}
bool isSupportedGameBoyFile(const std::string& filename) {
std::string l = string::lowercase(filename);
return l.ends_with(".gb") || l.ends_with(".gbc") || l.ends_with(".sgb");
}
} // namespace