diff options
author | dec05eba <dec05eba@protonmail.com> | 2023-06-13 21:36:02 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2023-06-13 21:36:02 +0200 |
commit | 613016a48d9b10fb81f5bc54b0bdd463c39f5283 (patch) | |
tree | 1c909df3dca6e4551b2da37965c9f94c706d484b /src | |
parent | 3554a838c2318863f59ad4b50a17edc19b5cb94a (diff) |
Add option to disable file manager grid view to make midov stop crying
Diffstat (limited to 'src')
-rw-r--r-- | src/Config.cpp | 5 | ||||
-rw-r--r-- | src/QuickMedia.cpp | 8 | ||||
-rw-r--r-- | src/plugins/FileManager.cpp | 11 | ||||
-rw-r--r-- | src/plugins/Matrix.cpp | 2 |
4 files changed, 17 insertions, 9 deletions
diff --git a/src/Config.cpp b/src/Config.cpp index fe4e984..c79249d 100644 --- a/src/Config.cpp +++ b/src/Config.cpp @@ -309,6 +309,11 @@ namespace QuickMedia { get_json_value(mangadex_json, "allow_hentai", config->mangadex.allow_hentai); } + const Json::Value &file_manager_json = json_root["file_manager"]; + if(file_manager_json.isObject()) { + get_json_value(file_manager_json, "grid_view", config->file_manager.grid_view); + } + get_json_value(json_root, "use_system_fonts", config->use_system_fonts); get_json_value(json_root, "use_system_mpv_config", config->use_system_mpv_config); get_json_value(json_root, "enable_shaders", config->enable_shaders); diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp index 13450e3..04638f0 100644 --- a/src/QuickMedia.cpp +++ b/src/QuickMedia.cpp @@ -1317,7 +1317,7 @@ namespace QuickMedia { auto file_manager_page = std::make_unique<FileManagerPage>(this, fm_mime_type, file_selection_handler); if(!file_manager_page->set_current_directory(file_manager_start_dir)) fprintf(stderr, "Warning: Invalid directory provided with --dir\n"); - auto file_manager_body = create_body(false, true); + auto file_manager_body = create_body(false, get_config().file_manager.grid_view); BodyItems body_items; file_manager_page->get_files_in_directory(body_items); file_manager_body->set_items(std::move(body_items)); @@ -4833,7 +4833,7 @@ namespace QuickMedia { std::filesystem::path &fm_dir = file_manager_start_dir; auto file_manager_page = std::make_unique<FileManagerPage>(this, (FileManagerMimeType)(FILE_MANAGER_MIME_TYPE_IMAGE|FILE_MANAGER_MIME_TYPE_VIDEO)); file_manager_page->set_current_directory(fm_dir.string()); - auto file_manager_body = create_body(false, true); + auto file_manager_body = create_body(false, get_config().file_manager.grid_view); BodyItems body_items; file_manager_page->get_files_in_directory(body_items); file_manager_body->set_items(std::move(body_items)); @@ -7401,7 +7401,7 @@ namespace QuickMedia { std::filesystem::path &fm_dir = file_manager_start_dir; auto file_manager_page = std::make_unique<FileManagerPage>(this); file_manager_page->set_current_directory(fm_dir.string()); - auto file_manager_body = create_body(false, true); + auto file_manager_body = create_body(false, get_config().file_manager.grid_view); BodyItems body_items; file_manager_page->get_files_in_directory(body_items); file_manager_body->set_items(std::move(body_items)); @@ -8239,7 +8239,7 @@ namespace QuickMedia { auto file_manager_page = std::make_unique<FileManagerPage>(this); file_manager_page->set_current_directory(file_manager_start_dir); - auto file_manager_body = create_body(false, true); + auto file_manager_body = create_body(false, get_config().file_manager.grid_view); BodyItems body_items; file_manager_page->get_files_in_directory(body_items); file_manager_body->set_items(std::move(body_items)); diff --git a/src/plugins/FileManager.cpp b/src/plugins/FileManager.cpp index 6f16b0a..c731ec2 100644 --- a/src/plugins/FileManager.cpp +++ b/src/plugins/FileManager.cpp @@ -2,6 +2,7 @@ #include "../../include/FileAnalyzer.hpp" #include "../../include/ResourceLoader.hpp" #include "../../include/Theme.hpp" +#include "../../include/Config.hpp" #include "../../include/Storage.hpp" #include "../../include/QuickMedia.hpp" @@ -54,7 +55,7 @@ namespace QuickMedia { return result; set_last_accessed_dir(current_dir); - auto body = create_body(false, true); + auto body = create_body(false, get_config().file_manager.grid_view); body->set_items(std::move(result_items)); result_tabs.push_back(Tab{std::move(body), nullptr, nullptr}); return PluginResult::OK; @@ -86,9 +87,11 @@ namespace QuickMedia { if(current_dir != "/") { auto parent_item = BodyItem::create("Go to parent directory"); parent_item->url = ".."; - parent_item->thumbnail_is_local = true; - parent_item->thumbnail_url = get_resource_loader_root_path() + std::string("images/folder.png"); - parent_item->thumbnail_size = mgl::vec2i(64, 64); + if(get_config().file_manager.grid_view) { + parent_item->thumbnail_is_local = true; + parent_item->thumbnail_url = get_resource_loader_root_path() + std::string("images/folder.png"); + parent_item->thumbnail_size = mgl::vec2i(64, 64); + } result_items.push_back(std::move(parent_item)); } diff --git a/src/plugins/Matrix.cpp b/src/plugins/Matrix.cpp index 16dd098..b9fbea0 100644 --- a/src/plugins/Matrix.cpp +++ b/src/plugins/Matrix.cpp @@ -1295,7 +1295,7 @@ namespace QuickMedia { return std::vector<Tab>{}; }; - auto file_manager_body = create_body(false, true); + auto file_manager_body = create_body(false, get_config().file_manager.grid_view); auto file_manager_page = std::make_unique<FileManagerPage>(program, FILE_MANAGER_MIME_TYPE_IMAGE, std::move(submit_handler)); file_manager_page->set_current_directory(get_home_dir().data); BodyItems body_items; |