diff --git a/Userland/Libraries/LibDesktop/AppFile.cpp b/Userland/Libraries/LibDesktop/AppFile.cpp index 1b3410905a..00633f8e4f 100644 --- a/Userland/Libraries/LibDesktop/AppFile.cpp +++ b/Userland/Libraries/LibDesktop/AppFile.cpp @@ -12,13 +12,23 @@ #include #include #include +#include namespace Desktop { +DeprecatedString AppFile::app_file_path_for_app(StringView app_name) +{ + return DeprecatedString::formatted("{}/{}.af", APP_FILES_DIRECTORY, app_name); +} + +bool AppFile::exists_for_app(StringView app_name) +{ + return FileSystem::exists(app_file_path_for_app(app_name)); +} + NonnullRefPtr AppFile::get_for_app(StringView app_name) { - auto path = DeprecatedString::formatted("{}/{}.af", APP_FILES_DIRECTORY, app_name); - return open(path); + return open(app_file_path_for_app(app_name)); } NonnullRefPtr AppFile::open(StringView path) diff --git a/Userland/Libraries/LibDesktop/AppFile.h b/Userland/Libraries/LibDesktop/AppFile.h index 3e8cb6dde0..e132ea2cc6 100644 --- a/Userland/Libraries/LibDesktop/AppFile.h +++ b/Userland/Libraries/LibDesktop/AppFile.h @@ -17,6 +17,10 @@ class AppFile : public RefCounted { public: static constexpr auto APP_FILES_DIRECTORY = "/res/apps"sv; + static bool exists_for_app(StringView app_name); + static DeprecatedString file_for_app(StringView app_name); + static DeprecatedString app_file_path_for_app(StringView app_name); + static NonnullRefPtr get_for_app(StringView app_name); static NonnullRefPtr open(StringView path); static void for_each(Function)>, StringView directory = APP_FILES_DIRECTORY); diff --git a/Userland/Libraries/LibDesktop/CMakeLists.txt b/Userland/Libraries/LibDesktop/CMakeLists.txt index dd006bdbc0..072c64cc4e 100644 --- a/Userland/Libraries/LibDesktop/CMakeLists.txt +++ b/Userland/Libraries/LibDesktop/CMakeLists.txt @@ -10,4 +10,4 @@ set(GENERATED_SOURCES ) serenity_lib(LibDesktop desktop) -target_link_libraries(LibDesktop PRIVATE LibCore LibIPC LibGfx LibGUI) +target_link_libraries(LibDesktop PRIVATE LibCore LibIPC LibGfx LibGUI LibFileSystem)