feat: add max visible pages to app config under Preferences -> General -> Plugins

This commit is contained in:
Ian Chua
2026-08-11 17:50:20 +08:00
parent 169189498e
commit 54fe28ab08
5 changed files with 294 additions and 41 deletions
+36
View File
@@ -280,6 +280,20 @@ void AppConfig::set_defaults()
set(SETTING_OPENGL_FPS_CAP, std::to_string(fps_cap));
}
if (get(SETTING_PLUGIN_PAGES_VISIBLE_COUNT).empty())
set(SETTING_PLUGIN_PAGES_VISIBLE_COUNT, std::to_string(PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT));
else {
int visible_count = PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT;
try {
visible_count = std::stoi(get(SETTING_PLUGIN_PAGES_VISIBLE_COUNT));
}
catch (...) {
visible_count = PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT;
}
visible_count = std::max(PLUGIN_PAGES_VISIBLE_COUNT_MIN, std::min(visible_count, PLUGIN_PAGES_VISIBLE_COUNT_MAX));
set(SETTING_PLUGIN_PAGES_VISIBLE_COUNT, std::to_string(visible_count));
}
if (get(SETTING_OPENGL_SHOW_FPS_OVERLAY).empty())
set_bool(SETTING_OPENGL_SHOW_FPS_OVERLAY, false);
@@ -1630,6 +1644,28 @@ void AppConfig::set_network_plugin_version(const std::string& version)
set(SETTING_NETWORK_PLUGIN_VERSION, version);
}
int AppConfig::get_plugin_pages_visible_count() const
{
std::string value = get(SETTING_PLUGIN_PAGES_VISIBLE_COUNT);
if (value.empty())
return PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT;
int visible_count = PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT;
try {
visible_count = std::stoi(value);
}
catch (...) {
return PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT;
}
return std::max(PLUGIN_PAGES_VISIBLE_COUNT_MIN, std::min(visible_count, PLUGIN_PAGES_VISIBLE_COUNT_MAX));
}
void AppConfig::set_plugin_pages_visible_count(int count)
{
count = std::max(PLUGIN_PAGES_VISIBLE_COUNT_MIN, std::min(count, PLUGIN_PAGES_VISIBLE_COUNT_MAX));
set(SETTING_PLUGIN_PAGES_VISIBLE_COUNT, std::to_string(count));
}
std::vector<std::string> AppConfig::get_skipped_network_versions() const
{
std::vector<std::string> result;