* refactor: migrate config from dict to object
* fix: type hint import
* fix: BottleConfig.load()
* fix: config loading in BackupManager.import_backup()
* fix: Remove unused import
* fix: more guard code, type hints and Config object usage
* fix: a potential crash when SteamManager.get_app_config() failed
* Revert "fix: Remove unused import"
This reverts commit 2d48a4e08a.
* add: new config field
* fix: Config object value read
* misc: remove review TODO comments
* adapt to new BottleConfig object
* fix RunAsync usage
* add: BottleConfig._fix()
* fix: type hint and Config object usage
* fix: typo in FSR setting default value
* adapt to new BottleConfig object
* remove unnecessary DictCompat method
* add: BottleConfig._filter()
* fix: TemplateManager.new()
* misc: critical guard code
* fix: typo in commit b7ed61e678
* misc: more type hinting
* Revert "remove unnecessary DictCompat method"
This reverts commit 265633e733.
* fix crash when user choose Cancel in ProtonAlertDialog
* fix force stop all programs not work
* adapt NVAPIComponent.check_bottle_nvngx to Config object
* Better DictCompatMixIn
* InstallerManager.__set_parameters incorrect adopt
* fix typo in cbe1dc760b
* adopt LibraryManager.download_thumbnail to Config object
* serialize Config object to yaml automatically
* fix translation and remove workaround in 0830fddbc9
* fix missing locale for Chinese
* comment
* fix incorrect variable init position
* remove 'in' extensions and some bugfix
* fix executable filemode
Co-authored-by: Mirko Brombin <send@mirko.pm>