Commit graph

252 commits

Author SHA1 Message Date
Leon Styhre f522c67a5c The automatic popup of the device virtual keyboard is now always disabled if the SDL release is 2.28.0 or higher
Also removed the custom SDL patch for the Linux AppImage builds that prevented the popup keyboard from being displayed, and also added logging of the SDL version to es_log.txt on application startup
2023-06-25 14:33:06 +02:00
Leon Styhre bd2c229476 Added a PDF viewer
Also added the PoDoFo and Poppler libraries as dependencies
2023-06-21 23:02:19 +02:00
Leon Styhre b6d17810be Added support for changing between light and dark color schemes for the menu system 2023-05-07 22:56:24 +02:00
Leon Styhre 2209c384aa Added a UserThemeDirectory setting for relocating the user theme directory 2023-04-06 11:40:32 +02:00
Leon Styhre a752761937 Moved the application updater result fetch prior to the startup time log message. 2023-02-26 12:57:16 +01:00
Leon Styhre c9a59994a6 Multiple improvements to ApplicationUpdater. 2023-02-26 12:50:30 +01:00
Leon Styhre 5b001f5608 (Windows) Converted forward slashes to backslashes for a few directory creation log messages. 2023-02-21 19:25:19 +01:00
Leon Styhre 53a29b8314 Changed the order of dialogs shown on application startup.
Also made the startup animation finish before the dialogs are displayed.
2023-02-21 18:52:48 +01:00
Leon Styhre 5d5be42918 Moved the application updater execution slightly later in the startup process. 2023-02-18 14:06:29 +01:00
Leon Styhre 270351b033 Added an application updater that checks for new releases on startup. 2023-02-18 12:42:19 +01:00
Leon Styhre daa0fe3a91 Added a program release number. 2023-02-16 22:24:42 +01:00
Leon Styhre 5be55d38ed Added support for running the application at lower resolution in fullscreen padded mode.
Also added support for offsetting the screen contents within the application window.
2023-02-12 22:14:09 +01:00
Leon Styhre f22da24486 Added a theme loading log entry about the applied aspect ratio configuration.
Also renamed some incorrectly named variables in ThemeData.
2023-02-10 00:34:24 +01:00
Leon Styhre cf8ce151dd The application startup can now be aborted via an OS signal or using the configured keyboard quit shortcut. 2023-02-07 18:14:16 +01:00
Leon Styhre b33c7603bb Added support for rotating the application screen contents 0, 90, 180 or 270 degrees.
Also improved post processing shader rendering when running in vertical orientation.
2023-02-06 23:38:35 +01:00
Leon Styhre 5125f81c78 SDL events are now parsed on startup before the main application loop.
Also removed the mouse pointer removal hack.
2023-01-29 22:38:16 +01:00
Leon Styhre e9b1718fca Multiple improvements to the progress bar to reduce startup times and increase consistency.
Also changed from SDL_GetTicks64() to SDL_GetTicks() in SystemData as the 64-bit function doesn't work with older SDL releases.
2023-01-27 17:34:38 +01:00
Leon Styhre b0d3133983 The splash screen is now rendered much earlier during the application startup. 2023-01-24 18:18:51 +01:00
Leon Styhre fd85df2716 Changed the log message on missing game files from error to info. 2023-01-23 18:06:53 +01:00
Leon Styhre 022446bce7 Found a better method to limit buffer swaps during splash screen rendering. 2023-01-22 23:24:08 +01:00
Leon Styhre e44c18bc1b Added a startup progress bar to the splash screen. 2023-01-22 21:03:08 +01:00
Leon Styhre 65f0c0e3c2 The .emulationstation/gamelists directory is now created on application startup instead of when scraping for the first time. 2023-01-09 21:16:45 +01:00
Leon Styhre 6d3d2ddb34 Added support for 2x and 4x MSAA anti-aliasing (OpenGL renderer only). 2023-01-09 17:55:54 +01:00
Leon Styhre 1f0bf21675 Some minor code cleanup. 2023-01-08 16:30:39 +01:00
Leon Styhre e553f68e90 Greatly improved application startup time by removing a lot of unnecessary splash screen re-rasterizations. 2022-08-23 22:34:56 +02:00
Leon Styhre 12f7e20c95 Fixed a crash when there are no game ROMs present. 2022-08-19 17:02:25 +02:00
Leon Styhre b69706fc35 The currently loaded theme set name is now logged to to es_log.txt on startup, reload and theme change. 2022-08-14 20:24:26 +02:00
Leon Styhre 08d893b119 Fixed an issue where the IgnoreGamelist setting was saved although it shouldn't.
Also made a change so that passing the --ignore-gamelist command line option now immediately disables the ParseGamelistOnly setting.
2022-06-29 17:17:31 +02:00
Leon Styhre f27de7f860 Added an es_log.txt entry if running in portable mode. 2022-06-12 10:34:17 +02:00
Leon Styhre 6b24533c0d (Windows) Added support for creating a portable installation in the root of a device, such as E: or F: 2022-06-11 18:59:40 +02:00
Leon Styhre 40bf018aaa Changed theme loading into a populateThemeSets function and created a separate getter function.
Also removed a deprecated theme check in the game directory.
2022-06-11 18:34:53 +02:00
Leon Styhre 0008e44294 Removed all short enums comments as they're now properly solved by AllowShortEnumsOnASingleLine. 2022-06-05 12:36:55 +02:00
Leon Styhre cc004a45f1 Renamed the --create-systemdirs command line option to --create-system-dirs 2022-05-19 17:24:12 +02:00
Leon Styhre 6a0b1bad5b Added custom event script triggers on application startup, screensaver start and screensaver end. 2022-05-18 23:56:51 +02:00
Leon Styhre 5b63ecb828 Removed the last remnants of the PowerSaver. 2022-05-18 21:08:55 +02:00
Leon Styhre 43191e4005 Added a --create-systemdirs command line option to generate the game system directories. 2022-05-18 18:32:13 +02:00
Leon Styhre f0c35d8509 Refactored the rendering code into proper classes. 2022-03-14 19:51:48 +01:00
Leon Styhre ac6cc41059 Added a command line option to rotate the application screen 180 degrees.
Also fixed a shader post-processing bug when rotating the application screen.
2022-03-12 00:40:03 +01:00
Leon Styhre c35a297d9a Large update to get the new theme engine up and running. 2022-01-29 18:41:22 +01:00
Leon Styhre a443f86235 Removed a huge amount of unnecessary Window* function arguments. 2022-01-19 18:01:54 +01:00
Leon Styhre a6be6225d8 Renamed SystemScreensaver to Screensaver. 2022-01-17 18:43:29 +01:00
Leon Styhre acd18bd1f8 Very minor change to the command line --help output. 2022-01-17 18:35:03 +01:00
Leon Styhre 8a6652552f Set the clang-format option SpaceBeforeCpp11BracedList to true. 2022-01-16 12:09:55 +01:00
Leon Styhre 750ee07351 Improved the structure of main.cpp
Also partially added support for Emscripten.
2022-01-12 21:38:37 +01:00
Leon Styhre b4e08ba92b Renamed Platform to utils/PlatformUtil 2022-01-10 18:56:04 +01:00
Leon Styhre 2d149c5161 Moved all Platform functions to the utility namespace. 2022-01-10 18:43:17 +01:00
Leon Styhre f80658696c Removed some unnecessary time measurement constants. 2022-01-09 23:50:08 +01:00
Leon Styhre c62a069448 Fixed an issue where the audio device was accessed after it had been closed. 2022-01-05 00:08:50 +01:00
Leon Styhre f8e201d347 Moved the CollectionSystemsManager cleanup from the destructor to a deinit function. 2022-01-04 23:14:12 +01:00
Leon Styhre 119dfc90f8 Changed ViewController::get() to ViewController::getInstance() 2022-01-04 21:49:22 +01:00
Leon Styhre 254b00a3d8 Large refactoring to improve thread safety and improve singleton pattern usage. 2022-01-04 21:21:26 +01:00
Leon Styhre 9e86908a47 (Windows) Fixed a window focusing issue when hiding the taskbar. 2021-12-09 20:23:09 +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 445b914379 Completely refactored MameNames. 2021-11-17 21:32:40 +01:00
Leon Styhre dd0f36f82b Changed most increment and decrement operators from postfix to prefix for es-app. 2021-11-17 17:35:34 +01:00
Leon Styhre 6bc4a09c9b Multiple thread safety improvements to AudioManager and VideoFFmpegComponent.
Also some general refactoring and re-enabling of some SDL_AudioStream functions.
2021-11-15 22:43:06 +01:00
Leon Styhre 0fecb43066 Increased the maximum supported display height to 7680 pixels. 2021-10-18 18:14:49 +02:00
Leon Styhre a2e12ace6a Lowered the minimal supported resolution from 640x480 to 224x224. 2021-09-30 19:51:04 +02:00
Leon Styhre 79849188d1 Fixed an issue where animations would play incorrectly when disabling a collection. 2021-09-19 20:43:36 +02:00
Leon Styhre 970b7dd63d (Windows) Fixed some MinGW compiler warnings. 2021-09-19 15:27:32 +02:00
Leon Styhre 42458a7d76 Very minor code cleanup. 2021-09-17 21:10:16 +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 5381f38231 Added support for defining and choosing between alternative emulators. 2021-08-22 15:26:38 +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 d3be0b73d3 Changed the word 'front-end' to 'frontend'. 2021-08-12 12:03:11 +02:00
Leon Styhre e4ee4855df Changed the header text in main.cpp 2021-07-08 18:47:29 +02:00
Leon Styhre af5e32e121 Formatted the es-app source tree using clang-format. 2021-07-07 20:03:42 +02:00
Leon Styhre 11ae6ba6f5 Improved the support for portable installations. 2021-06-30 17:27:20 +02:00
Leon Styhre f6122ed94a Changed the descriptive name of ~/.emulationstation to the ES-DE home directory. 2021-06-25 00:00:49 +02:00
Leon Styhre 55a0cef4d1 The scripts and themes directories are now created during startup.
Also cleaned up some startup messages which now also refer to ~/.emulationstation as the base directory.
2021-06-24 23:29:03 +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 dc29b97e91 Changed es_settings.cfg to es_settings.xml 2021-06-16 19:05:24 +02:00
Leon Styhre fa624f9f2c Changed the logic for the systems configuration file, it now loads from the resources directory.
Also renamed the file from es_systems.cfg to es_systems.xml
2021-06-16 18:54:04 +02:00
Leon Styhre dde840c5f8 Added a game launch screen. 2021-06-14 19:15:22 +02:00
Leon Styhre 83b764cf1f Small cosmetic changes to the input device configuration screen. 2021-05-23 10:16:47 +02:00
Leon Styhre 0bde8dc79d Migrated to the SDL2 GameController API. 2021-05-22 22:18:00 +02:00
Leon Styhre 3ed17fbea2 Added a fullscreen game media viewer. 2021-05-16 13:12:31 +02:00
Leon Styhre 8bf304b867 Added check for non-numeric characters in the arguments for the --resolution flag. 2021-03-21 21:54:30 +01:00
Leon Styhre 924b3ac033 Fixed a memory leak in Settings. 2021-03-19 18:40:37 +01:00
Leon Styhre b90ab39cb7 Fixed a memory leak related to the navigation sounds. 2021-03-19 18:37:56 +01:00
Leon Styhre 84ecb7489e Moved the AudioManager initialization a bit forward during startup. 2021-03-17 20:08:33 +01:00
Leon Styhre 9779ca8bd5 The MAME names file processing is now done after displaying the splash screen. 2021-03-15 21:03:44 +01:00
Leon Styhre b115a94668 Added a sanity check to the --resolution flag to keep the values within reason. 2021-03-12 21:12:54 +01:00
Leon Styhre 90bd12ef1c (macOS) Disabled the save state functionality which removed the splash screen on startup. 2021-03-11 17:42:08 +01:00
Leon Styhre 2432e118a7 Added the ability to automatically generate the game systems directory structure. 2021-03-10 18:21:49 +01:00
Leon Styhre 9c957ee93c Fixed an issue where the --vsync command line option could crash the application. 2021-02-28 15:20:34 +01:00
Leon Styhre 97575fa7a4 (macOS) Fixed an issue where the mouse cursor would jump to the Dock on startup. 2021-01-28 21:32:25 +01:00
Leon Styhre 777480aa6e Small cosmetic change to the --display command line option. 2021-01-26 17:33:20 +01:00
Leon Styhre 7bb89693f3 Settings are now saved immediately when using some command line options. 2021-01-25 18:10:11 +01:00
Leon Styhre 4d2ef89864 Added multi-monitor support. 2021-01-24 23:44:50 +01:00
Leon Styhre cf489be504 Reorganized the command line options. 2021-01-24 22:17:36 +01:00
Leon Styhre 735ce39812 Some cosmetic code cleanup. 2021-01-19 22:29:13 +01:00
Leon Styhre 8b5f65c789 The mouse cursor is now hidden during application startup. 2021-01-19 20:14:37 +01:00
Leon Styhre c6687f8995 Removed a remnant from the PowerSaver. 2021-01-03 11:24:50 +01:00
Leon Styhre 9b6789529b (Windows) Fixed an issue with a potentially unclean application shutdown. 2020-12-31 13:50:55 +01:00
Leon Styhre 327676d7d7 Renamed CollectionSystemManager to CollectionSystemsManager. 2020-12-23 18:06:30 +01:00
Leon Styhre a27c961987 Some changes to the startup logging.
Also removed some unnecessary audio code.
2020-12-23 17:56:21 +01:00
Leon Styhre 214a7861f9 Modernized the audio handling code a bit. 2020-12-21 00:23:22 +01:00
Leon Styhre bb7097a1af Changed the order of two command line parameters. 2020-12-20 15:09:47 +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