Added an extra parameter for the `remove` call, hinting that a refresh of the View is not desired.
This skips any `onFileChanged` event called at the end of `remove`, leaving it to the caller to explicitely call the `onFileChanged` method. The skip decreases the time spent in `remove`.
The sole usage - right now - is during the initial built-in collections creation, when the `recent` collection trimming can take a long time when it has >>50 entries.
Remove thumbnail, video, image and marquee files for a game when the game file is removed. Check for shared assets when deleting the resources, just in case the scraped files are used in another gamelist, for another game.
Modified the build options and source files to enable `omxplayer` for video previews only when the `OMX` option is used.
Updated the build instructions on RPI accordingly and added some notes about the deprecation of the BRCM GPU drivers in RasPI OS 'Bullseye'.
Previously, the `RPI` build option would be used to add both RPI specific audio settings/VRAM limits AND add `omxplayer` support. However, `omxplayer` does not work with the RPI KMS video driver (`vc4-kms-v3d`) or with a 64bit RPI system, due to the lack of OpenMAX (OMX) API support.
The new RasPi OS ('bullseye') has made the KMS driver the default [1] and doesn't offer `omxplayer` anymore (considered deprecated [2]).
Splitting the OMX support from the RPI option allows to set some default values for RPI systems without automatically adding the `omxplayer` bits.
[1] https://www.raspberrypi.com/news/raspberry-pi-os-debian-bullseye/
[2] https://github.com/popcornmix/omxplayer/commit/1f1d0ccd65
When no Game system is visible, choosing a random system in the carousel will lead to a crash.
Added an extra check before the random shuffle is performed.
* renamed image to media and added setting rename function
* replaced references to 'image' with 'media' and removed hardcoded video extensions
* fixed a bug when checking a null path
- Use C++11 built-in ranlux48 and random_device for seeding
- Shuffles systems (aso.) like a card deck and picks top system until empty, then shuffles again
- Fixes the flaws of the current random implementation: Real 1/N chance for an element in a set of N
- Minor refactorings