Commit Graph

102 Commits

Author SHA1 Message Date
Maschell
f9b67d57ea Add support for WUPS 0.8.1 2024-05-05 14:49:59 +02:00
Maschell
2047d5725b ConfigMenu: Reduce flickering when a plugin config is opened 2024-05-03 17:53:23 +02:00
Maschell
343092c338 ConfigMenu: Fix redraw logic 2024-05-03 17:53:23 +02:00
Maschell
be24d2c67a Close config menu if "release foreground" message is detected 2024-05-03 15:13:30 +02:00
Maschell
a8fd0b64ac ConfigMenu: Block reading input from other threads while the config menu is opened 2024-05-03 13:13:05 +02:00
Maschell
340fdddf0b ConfigMenu: Only redraw if something on the screen has changed 2024-05-03 13:13:05 +02:00
Maschell
6e02c4b7a1 config menu: Init KPAD if needed 2024-04-28 02:16:50 +02:00
Maschell
8071ceabf4 minor fix in drawutils 2024-04-28 02:16:50 +02:00
Maschell
958ba503c8 config menu: stop exiting the category for certain items 2024-04-28 02:16:50 +02:00
Maschell
2b29db165c Check if a plugin has a meta section 2024-04-27 17:50:29 +02:00
Maschell
cada64d86e API: Add WUPSGetPluginMetaInformationByPathEx and WUPSGetPluginMetaInformationByBufferEx 2024-04-25 16:19:26 +02:00
Maschell
004df036b8 Use remove_first_if instead of remove_locked_first_if when possible 2024-04-25 16:19:26 +02:00
Maschell
f7c9dc445c Allocate StorageItemRoot directly on list 2024-04-25 16:19:26 +02:00
Maschell
7d07f6525b Remove unnecessary std::unique_ptr usages 2024-04-25 16:19:26 +02:00
Maschell
b8647b94fc Capture values by reference in lambdas 2024-04-25 16:19:26 +02:00
Maschell
9e4930acec Add missing lock to gLoadedData access 2024-04-25 16:19:26 +02:00
Maschell
175a4fde53 ConfigMenu: ignore first input data 2024-04-25 16:19:26 +02:00
Maschell
076b4b8058 Add support for latest libwupsbackend 2024-04-25 16:19:26 +02:00
Maschell
f88e72a387 StorageAPI: Store root item not inside a shared_ptr 2024-04-25 16:19:26 +02:00
Maschell
8b215a5ea7 For plugin config v2 use the name from the config in the config menu 2024-04-25 16:19:26 +02:00
Maschell
950a55cd8f Minor cleanups 2024-04-25 16:19:26 +02:00
Maschell
3a91c90e76 ConfigMenu: Fix calling onCloseCallback for item which are not in a category 2024-04-25 16:19:26 +02:00
Maschell
823c94ca9c StorageAPI: support for loading/storing empty strings/binaries 2024-04-25 16:19:26 +02:00
Thomas Rohloff
184ca0bc5c Don't draw transparent pixels
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
2024-04-25 16:19:26 +02:00
Maschell
c38ef605cc StorageAPI: Update GetItemSize to take an additional itemType parameter to avoid a accidential string to binary conversion (e.g. for hashes) 2024-04-25 16:19:26 +02:00
Maschell
8cc78de58c StorageAPI: WUPS_STORAGE_ERROR_NOT_FOUND on StorageOpen is not an error anymoe 2024-04-25 16:19:26 +02:00
Maschell
acc372c836 Simplify the StorageAPI 2024-04-25 16:19:26 +02:00
Maschell
921b5ce157 Implement new ConfigAPI and new Config Menu 2024-04-25 16:19:26 +02:00
Maschell
ed13894dc3 Implementation of new StorageAPI 2024-04-25 16:19:26 +02:00
Maschell
fb2ea68627 Deprecate WUPS_LOADER_HOOK_INIT_STORAGE hook and implemenation 2024-04-25 16:19:26 +02:00
Maschell
cc5acd0980 - use const auto& where possible
- avoid using const std::unique_ptr& and const std::shared_ptr&
- avoid wrapping results in std::optional
- prefer std::string_view over const std::string&
- update FSUtils::LoadFileToMem to write into std::vector<uint8_t>
- use std::span when possible
- Avoid unnessecary copies in PluginDataFactory
- allocate plugins as HeapMemoryFixedSize which bascially is a std::unique_ptr with fixed size
2024-04-25 16:19:26 +02:00
Maschell
1e7c77b39f Improve error message when parsing a plugin failed 2023-08-16 11:03:28 +02:00
Maschell
07de996bf9 Add support for notifications on error 2023-08-16 11:03:28 +02:00
Maschell
efcde57f74 Config: Delete corrupted config files 2023-08-16 11:03:28 +02:00
Maschell
debc0eda5e Config: Fix opening empty config categories, display information text 2023-03-12 13:16:42 +01:00
Maschell
21fec8e451 Config: Fix possible crash when navigating the config menu 2023-03-12 13:16:42 +01:00
Maschell
d8a906f1db Extend the wupsbackend api to provide some extra functions to query plugin information 2023-02-19 18:44:19 +01:00
Maschell
b579bbdfa9 Update to latest WUPS and libfunctionpatcher 2023-02-17 11:52:35 +01:00
Maschell
a2081206ed Fix memory leak in DrawUtils::print function 2023-01-05 22:09:23 +01:00
Maschell
e951299ea9 Improve config menu by adding a loading screen 2023-01-05 22:09:23 +01:00
Maschell
43ddb8f1dd Improve config menu navigation 2023-01-05 22:09:23 +01:00
Maschell
a039901388 Fix the scroll indicator in config menu 2023-01-05 22:09:23 +01:00
Maschell
e12b8a9d84 Update the config menu UI to show the correct controls 2023-01-05 22:09:23 +01:00
Maschell
e7186d67fb Use libschrift instead of Freetype for font rendering 2023-01-04 22:12:14 +01:00
Maschell
333359c75d Avoid using streams in ELFIO to massively reduce the binary size 2023-01-04 16:35:06 +01:00
Maschell
c9ccf0f657 Update to latest ELFIO and undo any changes directly to ELFIO 2023-01-04 03:14:27 +01:00
Maschell
0e56538cb1 Keep track of acquired RPLs and release them on exit 2022-10-05 21:01:41 +02:00
Maschell
2882635f6f Set a custom OSDynLoad Allocator when processing relocations 2022-10-03 22:04:26 +02:00
Maschell
0a254e59f4 Fix resetting the trampoline data to avoid a crash when re-loading plugins 50+ times 2022-10-03 22:04:26 +02:00
Maschell
616fc832d1 Ignore files that don't end with ".wps" or start with "." or "_" 2022-09-24 13:19:12 +02:00