Commit Graph

155 Commits

Author SHA1 Message Date
kramo
8dc96b53b2 Type hints for UI code 2023-08-16 15:41:40 +02:00
kramo
0d6432388c Handle errors when loading games from disk 2023-08-16 12:45:32 +02:00
kramo
5551756111 Ctrl + Z for import undo 2023-08-15 21:19:27 +02:00
kramo
0098669ab6 Update Rilic's link 2023-08-13 12:31:44 +02:00
kramo
fe07f4f571 Add Rilic to about window 2023-08-13 12:23:02 +02:00
Rilic
417a02e8b6 Merge remote-tracking branch 'upstream/main' 2023-08-01 10:52:33 +01:00
Geoffrey Coulaud
1aff1347e3 Managers refactor (#164)
The main reason for this is the compositing of both local and online covers with the same logic.  
It was a problem raised in #146 with some covers getting stretched.

Changes:
- Renamed and simplified managers methods
- Created a generic `cover manager`
- Added more retryable errors to `steam api manager`
- Removed `local cover manager` and `online cover manager`
- Reduced dependency on `PIL`
2023-07-31 18:44:18 +02:00
Rilic
55cd590424 Merge remote-tracking branch 'upstream/main' 2023-07-17 16:51:56 +01:00
Rilic
386120a505 Code cleanup and fix cover image rename regex 2023-07-17 16:26:08 +01:00
Rilic
c96b64f72e Implement Retroarch Importer
I'm quite rusty with Python, so please let me know if there are any (or many) grave mistakes!
2023-07-15 14:28:04 +01:00
kramo
6a06f7329d Disallow Legendary on Windows to fix Heroic 2023-07-08 16:00:57 +02:00
GeoffreyCoulaud
3c019796c2 Initial code 2023-07-08 13:54:43 +02:00
GeoffreyCoulaud
87a4319360 Store improvements
- Store games by source
- Added convenience dunder methods (contains, iter, len, getitem)
- Added store.get
- Changed `enable_in_pipeline` for `toggle_in_pipeline`
2023-07-07 18:06:07 +02:00
kramo
dc232e1e43 Fix cache dir, add debug_info_filename to about 2023-07-06 10:25:00 +02:00
kramo
c9a1104b44 Revert test 2023-07-02 14:46:54 +02:00
kramo
ee5740c21c Test Actions 2023-07-02 14:46:37 +02:00
kramo
69fc7e1b03 Remove test module 2023-07-02 12:55:19 +02:00
kramo
8a3397bef5 This should work 2023-07-02 12:54:49 +02:00
kramo
d87048ee64 Test worked 2023-07-02 12:26:56 +02:00
kramo
3d6601238d Actions Test 2023-07-02 12:21:55 +02:00
GeoffreyCoulaud
a7efe0a920 Removed allow_side_effects 2023-07-01 03:01:15 +02:00
GeoffreyCoulaud
8d082ab158 Removed win.games 2023-07-01 02:56:40 +02:00
kramo
07960182c7 Flatpak source cleanups 2023-06-30 21:13:06 +02:00
kramo
fccf302c4b Flatpak source initial work 2023-06-30 19:51:44 +02:00
GeoffreyCoulaud
299333c959 Added horizontal line between runs 2023-06-29 17:39:52 +02:00
GeoffreyCoulaud
e4b315f252 Added log files contents to aboutwindow debug info 2023-06-29 17:29:16 +02:00
kramo
8cb1cd998c Add troubleshooting info to about window 2023-06-26 14:32:56 +02:00
kramo
2e97edcdb5 Please pylint once and for all 2023-06-18 13:15:03 +02:00
kramo
32adc68d82 Correct directory check 2023-06-18 12:58:24 +02:00
kramo
f0dda997c3 Only kill import toast after the user can click it 2023-06-16 20:46:50 +02:00
GeoffreyCoulaud
beba0ff1e2 🎨 Improved internal manager storage
- Stored pipeline managers in a set
- Renamed store method to enable_manager_in_pipeline
- Simplified a bit the ugly code™ in details_window
2023-06-16 15:38:05 +02:00
kramo
39bc64c136 Use signals for updating and saving games 2023-06-15 17:37:54 +02:00
GeoffreyCoulaud
695cc88d76 🎨 Made OnlineCoverManager more general
- Does compositing of image with a blurred background
- Stretches the original image if it's not too much
- Handles images that are too wide and images that are too tall
- Removed ItchCoverManager
2023-06-14 00:05:38 +02:00
GeoffreyCoulaud
dbb96a166b Added debug info to the beginning of log files 2023-06-13 09:48:18 +02:00
GeoffreyCoulaud
2798097623 🎨 Improved logging code
- Silenced unwanted library messages
- Logging to file with a max size of 8MB

When the file size is passed, a backup of the file is created,
and the file gets truncated.
There can only be one current file and one backup file.
2023-06-12 03:27:43 +02:00
GeoffreyCoulaud
6a099b2bdd New logging system 2023-06-11 21:11:53 +02:00
kramo
de3ef53148 Make pylint happy 2023-06-10 19:34:00 +02:00
GeoffreyCoulaud
842f9fe522 🎨 Various code style / behaviour fixes
- Merged platform sources when possible
- Added URLExecutableSource class
- Moved replaced_by_schema_key to utils/decorators
- Better retryable exception handling in some managers
-  Split SteamHelper into SteamFileHelper and SteamAPIHelper
- Delegated SteamRateLimiter creation to SteamAPIManager init
- Using additional_data for appid in SteamAPIManager
- Added Windows support for Legendary
- Stylistic changed suggested by pylint
2023-06-10 02:59:41 +02:00
GeoffreyCoulaud
070d875ff8 🎨 Improved Legendary source
- Fixed wrong library iteration
- Fixed executable format
- Added toggle in the preferences
- Added legendary to on_import_action
2023-06-09 17:06:33 +02:00
GeoffreyCoulaud
9ebd7cf7ee Added Itch source
- Added call stack to unretryable errors in managers
- Added existing itch cover downloading code
- Fixed importer not closing if no source enabled

TODO
- Tidying the itch cover downloading code
- If possible, make save_cover and resize_cover work in AsyncManager-s
2023-06-07 15:33:00 +02:00
GeoffreyCoulaud
5dc6ec899a 🎨 Various changes
- Changed source additional data to dict
- Moved local cover saving into a manager
- Added stub for itch cover manager
2023-06-07 15:00:42 +02:00
GeoffreyCoulaud
98f02da36c 🎨 SourceIterator can yield addtitional data
SourceIterator-s can yield a game and a tuple of additional data.
This data will be passed to the Store, Pipeline and Managers.
2023-06-07 14:01:06 +02:00
GeoffreyCoulaud
e91aeddd3b Added Bottles source 2023-06-05 01:57:38 +02:00
GeoffreyCoulaud
7d8a7a894f 🐛 fixed source imports 2023-06-03 21:41:04 +02:00
GeoffreyCoulaud
ed66109404 🚧 Ground work for heroic source 2023-05-31 21:47:55 +02:00
GeoffreyCoulaud
ef63210a8f 🎨 Better error handling in managers 2023-05-31 17:21:01 +02:00
GeoffreyCoulaud
d204737339 🚧 More work on resilient managers 2023-05-31 16:54:51 +02:00
GeoffreyCoulaud
aeab1de4a9 🎨 Improved structure / added debug info 2023-05-28 22:19:43 +02:00
GeoffreyCoulaud
e7fa20e4d4 🎨 Better logging init 2023-05-27 19:39:52 +02:00
kramo
101eb1f07c Merge main 2023-05-27 19:08:40 +02:00