Commit graph

307 commits

Author SHA1 Message Date
Leon Styhre 0cbcb7a516 Changed Settings::getInstance() from returning a smart_ptr to returning a regular pointer. 2022-01-04 21:54:55 +01:00
Leon Styhre f36245886f Set the 'Scrape actual folders' option as enabled by default.
Also moved it higher up in the scraper options menu.
2022-01-03 18:20:49 +01:00
Leon Styhre 6431804ee7 Removed the deprecated VideoVlcComponent. 2022-01-02 13:13:01 +01:00
Leon Styhre 08bba3cbaf (macOS) Removed the Monterey VSync workaround as Apple has patched its OS. 2021-12-14 17:15:04 +01:00
Leon Styhre 045e56ae3f (Windows) Changed the fullscreen mode to SDL_WINDOW_BORDERLESS.
Also removed the 'AMD and Intel GPU game launch workaround' menu option.
2021-12-09 18:53:22 +01:00
Leon Styhre 5019d8c065 Moved the ScreenScraper account toggle to the bottom of the scraper account screen. 2021-12-06 20:21:32 +01:00
Leon Styhre 515577c8f9 (Unix) Changed the fullscreen mode to SDL_WINDOW_FULLSCREEN_DESKTOP.
Also removed the --windowed, --fullscreen-normal and --fullscreen-borderless command line options and menu entry.
2021-12-05 13:51:39 +01:00
Leon Styhre 3516ee7a26 (macOS) Set the Monterey VSync workaround setting as enabled by default. 2021-12-01 18:05:43 +01:00
Leon Styhre e91e23a053 Small code simplification in Settings. 2021-11-18 17:19:30 +01:00
Leon Styhre af52d9b0ac Changed most increment and decrement operators from postfix to prefix for es-core. 2021-11-17 17:48:49 +01:00
Leon Styhre 81d6f0fd30 Improved thread safety for Settings.
Also moved some data from the global namespace to an anonymous namespace.
2021-11-15 22:53:21 +01:00
Leon Styhre 1005dfcdb7 (macOS) Added a Monterey VSync bug workaround. 2021-11-12 19:49:24 +01:00
Leon Styhre d3b135e387 Set the FFmpeg video player HW decoding as disabled by default. 2021-11-08 17:58:36 +01:00
Leon Styhre ac4710a18e Added proper support for the Raspberry Pi 4. 2021-11-07 23:54:52 +01:00
Leon Styhre b4492abccd Removed the copying of es_settings.cfg to es_settings.xml on startup. 2021-11-06 21:43:32 +01:00
Leon Styhre 7606e9cad6 Added the physical media images to the miximages.
Also added an option to rotate horizontally oriented game boxes and size options for the box and physical media files.
2021-10-30 19:01:58 +02:00
Leon Styhre d5fa6bc82c Added support for scraping title screens, box back covers and physical media images. 2021-10-28 21:00:23 +02:00
Leon Styhre 5ca4b85549 Added scraping of controller metadata (arcade systems only). 2021-10-27 19:23:57 +02:00
Leon Styhre 270a2e3857 Added an option to preload gamelists on startup. 2021-10-25 17:56:17 +02:00
Leon Styhre aa8b68f2a9 Set the menu scroll indicators as enabled by default. 2021-10-15 22:35:57 +02:00
Leon Styhre 76ef1629c0 Added a simple static scroll indicator and set this as the default.
Also made some minor adjustments to the scroll indicator placement.
2021-10-10 20:07:44 +02:00
Leon Styhre bef997420d Added menu scroll indicators. 2021-10-10 18:15:37 +02:00
Leon Styhre 0b6d987263 Fixed lots of compiler warnings reported by the -Wall and -Wpedantic flags. 2021-09-18 09:53:26 +02:00
Leon Styhre c4e6d3cac1 Added a virtual keyboard. 2021-09-17 22:23:41 +02:00
Leon Styhre 5942b2815e Added support for selecting alternative emulators per game.
Also made some changes to the system-wide alternative emulators logic.
2021-09-04 11:21:55 +02:00
Leon Styhre a0c2c21a99 Reorganized the UI Settings and Other Settings menus a bit. 2021-08-22 14:29:43 +02:00
Leon Styhre 7b5d673050 Replaced the internal Vector2i data type and functions with the GLM library equivalent.
Also applied some code formatting changes for braced lists using clang-format.
2021-08-17 18:41:45 +02:00
Leon Styhre 18949d375c Minor cosmetic code cleanup. 2021-08-11 12:09:58 +02:00
SophiaHadash 75bf7781e3 update from master 2021-07-16 10:10:55 +02:00
Leon Styhre 9bbba93edf Added experimental hardware decoding support to VideoFFmpegComponent.
Also fixed some memory leaks and removed the video frame skipping code as it caused more harm than good.
2021-07-14 19:13:25 +02:00
Leon Styhre 1d706ec7f3 Removed some obsolete audio settings.
Also set VLC as the default video player on Raspberry Pi.
2021-07-08 18:18:59 +02:00
Leon Styhre 23fdc00044 Formatted the es-core source tree using clang-format. 2021-07-07 20:31:46 +02:00
SophiaHadash 2ecb105c5c Added a menu option in 'other options' for setting the exit button combo.
Added 4 button combos including Apple and Windows key combos.
2021-07-01 17:46:03 +02:00
Leon Styhre 0b47a90b3e (Windows) Added game launch workaround for an AMD and Intel GPU issue. 2021-06-30 18:08:13 +02:00
Leon Styhre 1478bbf550 Enabled the option on all operating systems to run ES-DE in the background while a game is launched. 2021-06-30 17:19:57 +02:00
Leon Styhre c30fab0919 Added an option to use plain ASCII for some special gamelist characters. 2021-06-28 22:05:24 +02:00
Leon Styhre 0eba1795a4 Set the random game or system button to disabled by default. 2021-06-27 12:21:18 +02:00
Leon Styhre 36be8019a9 Removed the legacy support for placing game media in the ROM directory. 2021-06-24 21:11:24 +02:00
Leon Styhre 337f06b428 Added a CMake option to build with or without the VLC video player. 2021-06-23 00:24:15 +02:00
Leon Styhre c8af5816a3 Added a version setting which can be used to detect upgrades of the application. 2021-06-22 17:47:01 +02:00
Leon Styhre 942e3ca5bf The input logging can now be excluded from the debug output using an option in es_settings.xml 2021-06-22 17:42:35 +02:00
Leon Styhre 4ad5cd3856 Removed the deprecated %COREPATH% variable logic. 2021-06-20 13:05:28 +02:00
Leon Styhre e27ff24cfe The legacy es_settings.cfg file is now copied to es_settings.xml instead of being renamed 2021-06-20 12:51:32 +02:00
Leon Styhre dc29b97e91 Changed es_settings.cfg to es_settings.xml 2021-06-16 19:05:24 +02:00
Leon Styhre dde840c5f8 Added a game launch screen. 2021-06-14 19:15:22 +02:00
Leon Styhre e50b024b42 Set the gamelist video scanline option as disabled by default. 2021-06-10 22:47:22 +02:00
Leon Styhre 819d03776d Added a miximage generator. 2021-06-07 23:02:42 +02:00
Leon Styhre 425d4b0937 Added an option to upscale the video frame rate to 60 FPS. 2021-05-29 10:55:40 +02:00
Leon Styhre ce6eed6c3a Increased the maximum image size for the scraper and improved the scaling function. 2021-05-24 21:34:08 +02:00
Leon Styhre 0d8f50f632 Added automatic retries to the scraper for ScreenScraper TLS errors. 2021-05-24 18:51:16 +02:00
Leon Styhre 4d4210a419 Added support for selecting between different controller types. 2021-05-23 19:12:31 +02:00
Leon Styhre ecf8e50500 Added a setting to only accept input from the first controller. 2021-05-23 11:45:45 +02:00
Leon Styhre 958c16cb03 The quit menu is now disabled by default. 2021-05-23 10:56:49 +02:00
Leon Styhre 0bde8dc79d Migrated to the SDL2 GameController API. 2021-05-22 22:18:00 +02:00
Leon Styhre 4fd0423b07 Made 'dim' the fallback screensaver instead of 'black'.
Also set the default screensaver type to 'video' instead of 'dim'.
2021-05-16 18:02:07 +02:00
Leon Styhre 564fa67684 Changed the random system or game button and made it possible to disable it altogether. 2021-05-16 14:03:13 +02:00
Leon Styhre 3ed17fbea2 Added a fullscreen game media viewer. 2021-05-16 13:12:31 +02:00
Leon Styhre 1d0d5326a8 VideoFFmpegComponent is now the default video player and no longer marked as experimental. 2021-05-14 10:53:50 +02:00
Leon Styhre b87d7238fc Added menu option and integrations for VideoFFmpegComponent 2021-05-09 22:56:41 +02:00
Leon Styhre bdb2d65db7 (macOS) Added support for new core location for RetroArch v1.9.2 2021-05-02 12:35:36 +02:00
Leon Styhre 924b3ac033 Fixed a memory leak in Settings. 2021-03-19 18:40:37 +01:00
Leon Styhre a46222030c Added an option to disable the blurring of the background when opening menus. 2021-03-18 19:46:45 +01:00
Leon Styhre b44a21dc5a (Unix) Added a menu option to enable or disable the desktop compositor. 2021-02-22 21:13:06 +01:00
Leon Styhre e482b45ca4 Added better support for RetroArch installed as Flatpak. 2021-01-25 18:17:55 +01:00
Leon Styhre 969be161d9 Some minor log output changes. 2021-01-25 18:15:01 +01:00
Leon Styhre 4d2ef89864 Added multi-monitor support. 2021-01-24 23:44:50 +01:00
Leon Styhre b6e29d503c Changed the default VRAM limit to 256 MiB. 2021-01-17 10:15:17 +01:00
Leon Styhre c5b0042dff Fixed the quick list scroll overlay and made it configurable using a menu option. 2021-01-12 22:41:28 +01:00
Leon Styhre b3142edd0a Reverted the recent es_systems.cfg template changes for macOS and Windows. 2021-01-11 18:31:12 +01:00
Leon Styhre 6479178186 (macOS) Changed the es_systems.cfg template to the %COREPATH% logic. 2021-01-10 23:23:36 +01:00
Leon Styhre 3ead3548a1 (Windows) Changed the es_systems.cfg template to the %COREPATH% logic. 2021-01-10 23:05:20 +01:00
Leon Styhre ed60ab4e3a Fixed an issue where a temporary setting was retained in the configuration file. 2021-01-01 18:16:54 +01:00
Leon Styhre 46c178af1d Added volume controls for navigation sounds and the video player. 2020-12-20 16:41:58 +01:00
Leon Styhre bb3cc4d4a1 Added logic and menu option for handling invalid media files during scraping.
Also added a shortcut for defining the scraper searches and fixed an issue where games were automatically selected after refining the search.
2020-12-18 16:35:19 +01:00
Leon Styhre defb16b6da Fixed multiple issues with the UI modes (full/kiosk/kid).
Also improved the quit menu.
2020-12-17 23:45:29 +01:00
Leon Styhre 29abe2dc8c Removed the deprecated PowerSaver. 2020-12-16 17:57:10 +01:00
Leon Styhre 0c7e02e6f4 The scraper filter setting is now retained throughout the program session. 2020-12-16 17:35:23 +01:00
Leon Styhre 024e073e86 Added support for %COREPATH% variable and reverted to a single Unix es_systems.cfg template file. 2020-12-15 18:42:38 +01:00
Leon Styhre e752904ab1 Added logic to retrieve default setting values. 2020-12-14 17:25:41 +01:00
Leon Styhre 635e7d2cdd Added a menu option to enable and disable video pillarboxes.
Also did some general code cleanup of VideoVlcComponent.
2020-11-17 17:20:25 +01:00
Leon Styhre 2220787c3b Fixed multiple issues with view transitions. 2020-11-16 17:44:33 +01:00
Leon Styhre 0a6e1f280f Improved transitions for SystemView. 2020-11-15 20:06:33 +01:00
Leon Styhre 53cacd5eac Renamed VideoPlayerComponent to VideoOmxComponent. 2020-11-12 17:40:06 +01:00
Leon Styhre 00ba2e78ab Improvements to the screensaver and game overlay.
Also added functionality to jump to a game from the screensaver (without launching it).
2020-11-12 17:13:24 +01:00
Leon Styhre 9bea6bb17e Added a game info overlay to the screensaver.
Also refactored Window and SystemScreensaver and added a fade-in effect for the shaded background when opening menus.
2020-11-12 00:46:59 +01:00
Leon Styhre bbb2aa5217 Overhaul of the screensaver. 2020-11-10 22:18:20 +01:00
Leon Styhre f1f0596fe1 Added support for user accounts for ScreenScraper. 2020-11-07 15:34:15 +01:00
Leon Styhre 1a6bec2e3b Overhaul of settings code. 2020-11-05 18:18:11 +01:00
Leon Styhre 893dee2bab Added option to disable the favorite game toggling shortcut.
Also modified some setting descriptions and updated the corresponding documentation.
2020-10-31 10:01:19 +01:00
Leon Styhre 01cf401d8f Added menu options to disable the favorite star markings. 2020-10-25 21:29:54 +01:00
Leon Styhre 075ab58bdb Changed the default value for custom collections favorites sorting. 2020-10-21 23:29:13 +02:00
Leon Styhre 35c7c7ec09 Removed deprecated code for handling video subtitles. 2020-10-17 16:06:48 +02:00
Leon Styhre 96da134f7d Added option to scrape based on the metadata name. 2020-10-10 13:05:12 +02:00
Leon Styhre 8db04c5fcb Added SPDX license identifiers to all source files. 2020-09-21 19:17:34 +02:00
Leon Styhre 02c9b4fb28 Several small improvements to the video view style.
Also partly rearranged the UI menu.
2020-09-13 14:28:06 +02:00
Leon Styhre 7dea5fb7df Renamed the setting 'Open menu effect' to 'Menu opening effect'. 2020-09-13 13:46:34 +02:00
Leon Styhre 66829b4ffa Added multiple animations and effects (mostly using shaders). 2020-09-13 13:21:38 +02:00
Leon Styhre 796d2c9ec8 (macOS) Disabled unusable command line arguments. 2020-08-23 21:53:21 +02:00
Leon Styhre b7678007fa (macOS) Disabled reboot and power off menu entries as these require root privileges. 2020-08-23 19:17:06 +02:00
Leon Styhre 88a5962926 Changed '#ifdef' to '#if defined()' throughout the code. 2020-08-23 17:04:30 +02:00
Leon Styhre b0624f2bc9 Updates to make the application work correctly (more or less) on macOS. 2020-08-18 17:48:21 +02:00
Leon Styhre 6633ee5028 Merge branch 'master' of https://gitlab.com/leonstyhre/emulationstation-de 2020-08-17 19:16:56 +02:00
Leon Styhre ad960b28ac Various updates to make the application compile on macOS. 2020-08-17 19:15:05 +02:00
Leon Styhre 130d9654f5 Video scraping is now enabled by default. 2020-08-16 15:58:29 +02:00
Leon Styhre 885bf61df0 Tweaked the description and setting name for the GPU statistics overlay. 2020-08-15 09:33:08 +02:00
Leon Styhre d3d57ae69a Fixed the VRAM statistics overlay that was using megabytes instad of mebibytes. 2020-08-08 22:33:27 +02:00
Leon Styhre c9a3dbc82e Several changes related to VRAM usage and GPU statistics. 2020-08-08 15:14:33 +02:00
Leon Styhre 408be5120c Multi-scraper folder scraping and folder scraper exclusions added.
A quick-skip shortcut was added to the multi-scraper as well and some minor changes were done to the ScreenScraper debug logging.
2020-08-06 15:12:04 +02:00
Leon Styhre 9f240394ed Added option to exclude files from the multi-scraper.
Two new scraper filters were added as well, 'Favorite games' and 'No game video'.
2020-08-06 11:27:16 +02:00
Leon Styhre c3de18dd96 Added support for scraping videos using ScreenScraper. 2020-08-05 22:38:44 +02:00
Leon Styhre e1d1723ce2 Set rbsimple-DE explicitly as the default theme in es_settings.cfg. 2020-08-03 15:19:31 +02:00
Leon Styhre b60c86e40f Added option to sort folders on top of the gamelists. 2020-07-28 19:44:17 +02:00
Leon Styhre 1d2901ac33 Disabled broken subtitle overlay for the video screensaver. 2020-07-27 21:41:10 +02:00
Leon Styhre 6090ff3df8 Improved handling of audio settings for video files. 2020-07-27 21:31:02 +02:00
Leon Styhre 9f0e587b1a Harmonized some screensaver options. 2020-07-27 20:38:22 +02:00
Leon Styhre 58ba42ed54 Removed scaling and CaptionsCompatibility option for the video screensaver. 2020-07-27 20:20:58 +02:00
Leon Styhre 41c3c66eb7 (Windows) Added support for setting the root of a drive as the home folder.
This is mostly usable for portable installations, for example on a USB memory stick.
2020-07-27 14:23:40 +02:00
Leon Styhre bad9e772e9 Changed most setting values to lowercase in es_settings.cfg
Audio devices apparently need to be case sensitive.
2020-07-27 12:11:30 +02:00
Leon Styhre b5485b4ca9 Changed log levels from numbers to text. 2020-07-26 23:30:45 +02:00
Leon Styhre 329a8da441 Properly implemented hiding of games.
Also added a flag to force the Full UI mode from the command line.
2020-07-26 22:19:29 +02:00
Leon Styhre 0a410863cb (Windows) Added a menu option to run ES in the background while a game is launched.
Suspending ES while launching a game has proven unreliable on Windows, but on some installations it works so it makes sense to let the user select it. It makes for a better and more seamless experience if it works as intended.
2020-07-19 22:08:14 +02:00
Leon Styhre 8fcb56cfb3 Made game launching on Windows much more seamless.
Also added an option to hide the taskbar.
2020-07-18 13:21:44 +02:00
Leon Styhre 2ff3dda5c8 Added configuration menu entries for the game media directory and the default sort order. 2020-07-15 18:02:11 +02:00
Leon Styhre 1b65eaac2e Improved input device configuration.
Default keyboard mappings are now applied if the user has not configured the keyboard.
2020-07-14 19:16:21 +02:00
Leon Styhre 6199f7371d Made the automatic gamelist view style work with the new media handling logic. 2020-07-13 20:10:09 +02:00
Leon Styhre 6028777be4 Added creation of es_settings.cfg on first application startup and improved media directory error handling. 2020-07-11 10:10:07 +02:00
Leon Styhre 31da561695 Complete UTF-16 (Unicode) support added for Windows.
ROM names with Unicode characters are supported, as well as running ES from a directory that has Unicode characters in its name.
2020-07-10 18:32:23 +02:00
Leon Styhre 9ba4f01a29 Deactivated the audio device settings and added a new setting for custom scripts.
Also changed some other setting names.
2020-07-09 19:24:20 +02:00
Leon Styhre d1f8c3e385 Changed 'launch string' to 'launch command' and the setting 'EnableSounds' to 'EnableNavigationSounds'. 2020-07-08 17:06:34 +02:00
Leon Styhre 76aa239855 Initial update to make the application build and run on Windows.
Much more work will be needed to get the Windows port working properly.
2020-07-03 20:23:51 +02:00
Leon Styhre e4fdd1e20d Code cleanup and code documentation update.
As of this commit, the initial code cleanup and code documentation has been completed for the entire application.
2020-06-28 18:39:18 +02:00
Leon Styhre 0387d515fb Update to fully support Clang/LLVM.
Also a general cleanup of CMakeLists.txt and many small code changes to satisfy Clang that complained quite a lot and actually wouldn't compile the binary at all at first.
2020-06-25 19:52:38 +02:00
Leon Styhre fb4c5708b7 Made pugixml an external dependency and fixed the cmake/cpack installation and package creation.
As pugixml seems to be well supported nowadays and seems to ship with most distributions it's pretty pointless to keep bundling it with EmulationStation.
2020-06-24 17:38:41 +02:00
Leon Styhre 67aa6b3dbd Huge code cleanup and code documentation update.
Includes lots of conversions from tabs to spaces. Only cosmetic code changes in this commit.
2020-06-21 14:25:28 +02:00
Leon Styhre 49161df0e6 Renamed platform.cpp/platform.h to Platform.cpp/Platform.h
The naming convention for the rest of the application is to start the file names with a capital letter.
2020-06-21 12:26:21 +02:00
Leon Styhre fb0ab2f06c Added a ROM path variable for use with es_systems.cfg and custom collections.
The variable %ROMPATH% now expands to the ROMDirectory setting in es_settings.cfg which removes the need for absolute ROM paths (although absolute paths are still supported). Custom collections with absolute paths can still be loaded for backward compatibility with old custom collections.
2020-06-18 17:09:32 +02:00
Leon Styhre 8492160a80 Added semi-automatic scraping mode, fixed some scraping bugs and improved folder metadata editing. 2020-06-13 16:47:12 +02:00
Leon Styhre 90735d44e3 Major update to scraper including support for new media handling logic, ability to download more media file types (screenshot, cover, marquee, 3D box) and an improved scraper GUI. As well a rewrite of the navigation sound code. 2020-06-06 13:10:33 +02:00
Leon Styhre fd7da08bf9 Large code cleanup and code documentation update, mostly related to the scraper. Only cosmetic changes in this commit. 2020-05-26 18:34:33 +02:00
Leon Styhre da946279de Some code cleanup and code documentation. Improvements to handling of command line arguments. 2020-05-25 21:34:42 +02:00
Leon Styhre 76c8b5f121 Reorganized the main menu. 2020-05-24 20:57:07 +02:00
Leon Styhre f2f7d34bb6 Monster commit. Rewrote gamelist sorting logic and made per-gamelist sort settings session-permanent. Cleaned up a lot of code and started to reformat for 100 characters line length. 2020-05-24 10:29:29 +02:00
Leon Styhre f806285e06 Added support for per-game launch string override (emulator override), configurable in the game meta data edit screen 2020-05-19 17:53:34 +02:00
Leon Styhre fbec408dfa Rewrote media handling to look for images and videos in a configurable media directory (by matching the ROM names) instead of being configured per game as XML tags 2020-05-18 19:00:43 +02:00
Leon Styhre f5d3c8ac0b Removed code for restarting the application, fixed system reboot and power off (and changed these names), fixed some small cosmetic issues with log file output and main menu 2020-05-15 17:58:25 +02:00
Leon Styhre ffcf52c710 Made game launching more seamless and prevent minimizing of window when switching applications. Also added menu entry to choose between normal fullscreen mode and borderless fullscren mode 2020-05-15 17:51:32 +02:00
Leon Styhre 24d6a70019 Added menu options to disable system restart and system shutdown 2020-05-15 17:46:08 +02:00
Leon Styhre 1007f19bdc Added functionality to show favorites on top of the gamelists (mostly ported from batocera-emulationstation) 2020-05-15 17:42:36 +02:00
pjft 9c46f50497
Merge pull request #645 from pjft/kids-start-menu
Option to show start menu in Kids mode
2020-04-27 10:00:45 +01:00
pjft b2e71015a1 Added option to disable video screensaver audio on VLC and OMXPlayer 2020-03-28 21:01:47 +00:00