Initial Origin Support

This commit is contained in:
Philip
2021-10-01 22:26:29 +02:00
parent 272e198e85
commit d7deae57ad
8 changed files with 175 additions and 9 deletions
+3 -8
View File
@@ -1,4 +1,4 @@
use crate::{egs::EpicGamesLauncherSettings, itch::ItchSettings, legendary::LegendarySettings, steam::SteamSettings, steamgriddb::SteamGridDbSettings};
use crate::{egs::EpicGamesLauncherSettings, itch::ItchSettings, legendary::LegendarySettings, origin::OriginSettings, steam::SteamSettings, steamgriddb::SteamGridDbSettings};
use config::{Config, ConfigError, Environment, File};
use serde::Deserialize;
@@ -11,11 +11,10 @@ pub struct Settings {
pub legendary: LegendarySettings,
pub itch: ItchSettings,
pub steamgrid_db: SteamGridDbSettings,
pub steam: SteamSettings
pub steam: SteamSettings,
pub origin: OriginSettings,
}
//https://github.com/JosefNemec/Playnite/tree/master/source/Plugins/OriginLibrary
//https://github.com/JosefNemec/Playnite/blob/master/source/Plugins/OriginLibrary/Origin.cs#L109
impl Settings {
pub fn new() -> Result<Self, ConfigError> {
let mut s = Config::new();
@@ -33,10 +32,6 @@ impl Settings {
#[cfg(target_os = "windows")]
let enable_epic = true;
s.set_default("legendary.enabled", enable_legendary)?;
s.set_default("epic_games.enabled", enable_epic)?;
// Start off by merging in the "default" configuration file
s.merge(File::with_name("config.toml").required(false))?;