Commit graph

2101 commits

Author SHA1 Message Date
Leon Styhre b9805053a9 Fixed an issue where AudioManager::deinit() could cause a crash 2024-05-19 18:42:29 +02:00
Leon Styhre 7cc901bb7f Fixed an issue where updating font textures caused random glyph artifacts 2024-05-19 18:39:26 +02:00
Leon Styhre 4cd4a8e6c0 Bumped the version to 3.0.2 2024-05-11 16:07:42 +02:00
Leon Styhre 47baa3629a Added a User-Agent string when making non-scraper HTTP requests 2024-04-16 20:59:41 +02:00
Leon Styhre a021fc22a9 Moved ApplicationVersion.h from es-app to es-core 2024-04-16 20:57:04 +02:00
Leon Styhre 9cf9b942ee (Android) Added a 'Back button/back swipe exits app' menu option 2024-04-08 22:07:52 +02:00
Leon Styhre 9b7685dd5d Fixed an issue where the application couldn't be built with an older SDL release than 2.0.14 2024-04-08 19:32:30 +02:00
Leon Styhre f839ced47b Improved multithreading for the network code 2024-04-08 19:26:08 +02:00
Leon Styhre 8a91c558db Fixed some deprecation warnings in VideoFFmpegComponent.cpp when building with FFmpeg 6.1 or higher 2024-03-10 17:24:02 +01:00
Leon Styhre 28c91d1c0e Prepared code in VideoFFmpegComponent.cpp for how to handle the deprecated AVFrame::pkt_pos and AVFrame::pkt_size fields 2024-03-10 16:48:26 +01:00
Leon Styhre 4260ecdbfc (Linux and Unix) Made it possible to change the application data directory using the ESDE_APPDATA_DIR environment variable 2024-03-10 14:56:19 +01:00
Leon Styhre 863d8b04af (Android) Removed support for the Lite release 2024-03-09 13:03:59 +01:00
Leon Styhre a49f22144f (Android) Removed symlink support 2024-03-09 12:30:28 +01:00
Leon Styhre 83baa5b5d0 Added a more informative error message than 'HTTP error code 430' when exceeding the daily ScreenScraper quota 2024-03-02 15:49:43 +01:00
Leon Styhre d806e9376d (Android) Fixed an issue where pressing the backspace key twice while editing text using a physical keyboard would close the text input dialog 2024-02-26 18:03:47 +01:00
Leon Styhre 68c906635f (Android) Added a check for application updates on startup 2024-02-25 12:26:32 +01:00
Leon Styhre 7e64c15388 (Android) Added a reset of the video element delay timer on activity resume 2024-02-10 10:49:02 +01:00
Leon Styhre 2a2400fc73 Changed the VideoFFmpegComponent stream re-sync threshold from 2.0 to 1.2 seconds 2024-02-10 10:45:19 +01:00
Leon Styhre bd6c9646fc The VideoFFmpegComponent audio and video streams are now re-synchronized after resuming the appliction 2024-02-08 19:27:15 +01:00
Leon Styhre 2e5f56970a Fixed a few issues where text editing was not stopped when leaving the text edit popup dialogs 2024-02-08 19:20:09 +01:00
Leon Styhre a8f93cb2bb (Android) Made the multiline text edit popup smaller when using the Android soft keyboard 2024-02-07 22:33:35 +01:00
Leon Styhre 2822cadc1f Putting the computer to sleep while a video was playing will no longer result in a massive fast-forward on resume 2024-02-07 21:53:15 +01:00
Leon Styhre 2f599846a9 (Android) Disabled the UserThemeDirectory setting 2024-02-04 16:47:31 +01:00
Leon Styhre 45bcfa9179 (Android) Enabled the use of the OS-supplied virtual keyboard if the ES-DE virtual keyboard setting has been disabled 2024-02-01 23:25:43 +01:00
Leon Styhre a1a104e003 (Android) Added an option for controlling the touch overlay opacity
Also added an 'extra small' overlay size entry
2024-01-29 22:37:45 +01:00
Leon Styhre f8d2086ef1 Changed the default theme from slate-es-de to linear-es-de 2024-01-28 18:50:26 +01:00
Leon Styhre 24c3817aaa Made the text element 'defaultValue' property usable with metadata types systemName, systemFullname, sourceSystemName and sourceSystemFullname 2024-01-28 12:34:41 +01:00
Leon Styhre 0b33884baa Combining video pillarboxes with rounded corners will no longer round corners for the actual video frame (except for extreme values) 2024-01-27 22:41:48 +01:00
Leon Styhre 54125ca7ad Fixed an issue where videos were sometimes positioned incorrectly if combining pillarboxes with rounded corners while using an origin value higher than 0.5 2024-01-27 22:09:02 +01:00
Leon Styhre 99c80e389a Added a 'selectorWidth' property to the textlist element 2024-01-27 14:50:32 +01:00
Leon Styhre 6dff5ac75c Added a 'hideIfZero' property to the rating element 2024-01-27 13:32:58 +01:00
Leon Styhre 00e6908ccd Fixed an issue where the last row of grids with fractionalRows set to true would sometimes not render correctly 2024-01-21 15:42:19 +01:00
Leon Styhre 531c72cfb7 Fixed an issue where theme loading debug output would sometimes print incorrect paths when the configuration included files using variables 2024-01-21 14:22:49 +01:00
Leon Styhre d27b0f85e3 Changed some more theme loading errors to state that legacy configuration is simply unsupported 2024-01-21 13:27:39 +01:00
Leon Styhre 45ab2228fd If a formatVersion theme tag is found the error message now states that it's an unsupported tag and not a legacy tag 2024-01-21 13:22:26 +01:00
Leon Styhre 8244b4229b Changed the menu position for the button swap setting 2024-01-17 22:31:10 +01:00
Leon Styhre 0e636f1bb3 Made the A/B and X/Y button swap setting not affect keyboard input 2024-01-17 22:19:15 +01:00
Leon Styhre dcb2aaedef Added an option to the Input device settings menu to swap the A/B and X/Y buttons 2024-01-17 22:09:50 +01:00
Leon Styhre c9ff27b3be (Android) Separated the build artifacts for the Full and Lite releases 2024-01-15 19:20:44 +01:00
Leon Styhre 3964cb2bcf (Android) Fixed some CMake issues when building ARM and x86 at the same time 2024-01-15 17:39:25 +01:00
Leon Styhre ba7874b0e7 Fixed an issue where touch input was not logged correctly 2024-01-14 22:18:21 +01:00
Leon Styhre c27ee24cc4 (Android) Added fade-out support to the touch overlay 2024-01-14 21:55:09 +01:00
Leon Styhre 927cb6f2f7 (Android) Added support for medium, large and small touch overlay sizes 2024-01-14 12:36:21 +01:00
Leon Styhre 183e8a1f93 (Android) Added shoulder and trigger buttons to the touch overlay 2024-01-13 19:44:42 +01:00
Leon Styhre 2fd58b3052 Fixed a compiler error and a compiler warning 2024-01-13 16:22:33 +01:00
Leon Styhre e91512a519 (Android) Added initial touch overlay support 2024-01-13 16:14:46 +01:00
Leon Styhre 0535f0d333 Removed the ScraperHaltOnInvalidMedia option and corresponding menu entry 2024-01-11 01:02:35 +01:00
Leon Styhre ee0f2be819 Added a ScraperIgnoreHTTP404Errors option to specifically ignore 404 errors (resource not found) 2024-01-11 00:46:11 +01:00
Leon Styhre 39bb28e353 Fixed an issue where controllers were sometimes not added correctly when there was a mix of supported and unsupported devices present 2024-01-08 21:25:33 +01:00
Leon Styhre c2201da47a (Android) Added a system directories creation state to the splash screen 2024-01-06 12:55:29 +01:00
Leon Styhre 6bad84a27a Fixed a number of potential issues where SDL_Event unions were not properly initialized 2024-01-05 10:42:28 +01:00
Leon Styhre 9cd35bed3d (Android) Pressing the back button now closes the application 2024-01-04 21:40:51 +01:00
Leon Styhre 83ff89acb2 (Android) Removed support for using the SAF to list directory contents 2024-01-03 17:32:04 +01:00
Leon Styhre d934cfb48f Added support for filtering UTF-8 strings using UTF8-CPP 2024-01-03 17:29:22 +01:00
Leon Styhre 63c21fcea0 (Android) Added support for getting directory listings via the SAF 2023-12-30 17:01:54 +01:00
Leon Styhre 88778e47a5 (Android) Some customizations for the Lite release 2023-12-25 23:23:39 +01:00
Leon Styhre 476230606b Placeholder entries in es_systems.xml are now skipped by default when creating the system directories and systemsinfo.txt files
Also added a CreatePlaceholderSystemDirectories option that can be manually set in es_settings.xml to still create placeholder directories
2023-12-25 13:12:14 +01:00
Leon Styhre cfb71c378f The HTTP error code will now be shown on scraper errors instead of the 'File is smaller than 350 bytes' message 2023-12-24 11:48:14 +01:00
Leon Styhre b863861399 (Android) Disabled the DisableComposition setting and corresponding menu option 2023-12-24 00:37:42 +01:00
Leon Styhre 5ffd06736a (Android) Fixed an issue where the Alt+F4 keyboard quit shortcut wouldn't work 2023-12-24 00:30:24 +01:00
Leon Styhre 458560bcd9 (Android) Changed the theme directory parsing order 2023-12-23 23:41:51 +01:00
Leon Styhre c5caab290e (Android) Disabled the quit menu 2023-12-23 23:28:22 +01:00
Leon Styhre 193f98cc1e (Android) Disabled the RunInBackground setting and corresponding menu option 2023-12-23 23:14:25 +01:00
Leon Styhre e3387c9016 Changed the game launch state to be kept in Window instead of ViewController 2023-12-23 23:03:40 +01:00
Leon Styhre e1322d711b (Android) Added support for running custom event scripts 2023-12-23 21:14:59 +01:00
Leon Styhre 3310b23b6f (Android) Fixed an issue where random garbage was sometimes briefly rendered on application startup 2023-12-23 10:59:44 +01:00
Leon Styhre 5fcf2ea49a The SDL error message is now printed to the log if a controller could not be added 2023-12-23 10:57:34 +01:00
Leon Styhre 10d9fa9a7c Added support for defining font sizes from the theme configuration and selecting these from the UI settings menu 2023-12-20 21:58:40 +01:00
Leon Styhre 79bca75050 Added support for the 20:9 display aspect ratio 2023-12-19 19:00:10 +01:00
Leon Styhre d73c308a5c Added support for the 19.5:9 display aspect ratio 2023-12-19 18:48:12 +01:00
Leon Styhre 116d73c62a Removed some std::filesystem code
Also fixed an issue with launching emulators not defined via find rules
2023-12-19 17:35:58 +01:00
Leon Styhre 3abd8d9035 Added a 'renderDuringTransitions' property to the image element 2023-12-18 01:16:32 +01:00
Leon Styhre 183862d974 Added theme engine support for the 1:1 display aspect ratio 2023-12-17 21:45:42 +01:00
Leon Styhre 88754a86ed Changed the custom slideshow screensaver image directory setting from ScreensaverSlideshowImageDir to ScreensaverSlideshowCustomDir 2023-12-16 21:17:05 +01:00
Leon Styhre 9283ab71fa Added support for .webp, .svg and unanimated .gif files to the slideshow screensaver when using a custom image directory
Also changed the default slideshow custom image directory from slideshow/custom_images to screensavers/custom_slideshow and improved the menu entry for setting the custom directory. Changed the setting ScreensaverSlideshowImageDir to blank by default
2023-12-16 21:03:41 +01:00
Leon Styhre a0d636ffb8 Changed the application name to ES-DE in all source file headers 2023-12-16 19:48:25 +01:00
Leon Styhre a0b4b006a7 Minor code formatting update 2023-12-16 13:15:55 +01:00
Leon Styhre 946a783100 The .emulationstation directory is now ignored if there is already an ES-DE directory 2023-12-16 12:37:09 +01:00
Leon Styhre 361bf832e1 Changed the application name from EmulationStation Desktop Edition to ES-DE 2023-12-16 12:30:13 +01:00
Leon Styhre 6b0bfbfc09 Changed to a new application data directory structure 2023-12-15 22:35:28 +01:00
Leon Styhre 03e9035b7e Changed Log to set the log path once on application startup 2023-12-15 18:35:02 +01:00
Leon Styhre 56ccba81d1 Removed all instances of hardcoded application directory entries
Also changed some source file headers
2023-12-15 18:33:02 +01:00
Leon Styhre 0a2b9f8595 Changed ThemeData::populateThemes() to use std::filesystem::path 2023-12-14 00:27:44 +01:00
Leon Styhre 932cb60027 Changed some more FileSystemUtil functions to use std::filesystem facilities 2023-12-14 00:25:08 +01:00
Leon Styhre 79e12e0898 Removed the hardcoded .emulationstation directory from Settings 2023-12-13 22:07:58 +01:00
Leon Styhre b72e2a20a8 Changed a number of FileSystemUtil functions to use std::filesystem facilities 2023-12-13 22:04:14 +01:00
Leon Styhre 6bcbd70237 (Android) Changed a variable for the private data directory 2023-12-13 20:07:23 +01:00
Leon Styhre 8571dfe7bf (Android) Implemented a cleaner way of handling the private data directory 2023-12-12 23:21:27 +01:00
Leon Styhre 854cef60cb (Android) Made PDF rendering work correctly using Poppler 2023-12-11 18:38:11 +01:00
Leon Styhre 8403b40d4c Moved some code 2023-12-11 18:23:20 +01:00
Leon Styhre 3ae7bc6b5b (Android) Updated the game launching logic 2023-12-07 18:51:09 +01:00
Leon Styhre d87bb4e3a4 (Android) Resources and themes are now only copied to internal storage after upgrades or for new installations 2023-12-07 18:33:08 +01:00
Leon Styhre a83763c2c3 (Android) Added preliminary support for copying assets to the internal data directory 2023-12-07 18:28:55 +01:00
Leon Styhre 27feef1b23 (Android) Fixed a font rendering issue on some devices 2023-12-07 18:27:18 +01:00
Leon Styhre 811118d3ee (Android) Added support for launching emulators with scoped storage permissions 2023-12-07 18:22:43 +01:00
Leon Styhre 84534cf5d7 (Android) Added the application ID to the log output
Also changed the general log output formatting slightly
2023-12-07 18:21:03 +01:00
Leon Styhre b2e9507b0e (Android) Small change to PlatformUtil 2023-12-07 18:19:34 +01:00
Leon Styhre 25f017d9f8 (Android) Added support for defining a specific Intent action in the find rule configuration 2023-12-07 18:16:38 +01:00
Leon Styhre 310fb6e809 (Android) Added find rules logic and launch command configuration logic
Also did some general refactoring of the emulator launch code
2023-12-07 18:15:04 +01:00
Leon Styhre a09e4096ac (Android) Added preliminary support for requesting storage permissions 2023-12-07 18:10:47 +01:00
Leon Styhre 498bdbd119 Fixed an additional issue where font textures were sometimes updated with empty glyhps 2023-12-07 17:58:10 +01:00
Leon Styhre 1d6701ca4c (Android) Added error output if attempting to write to log file before it was open 2023-12-07 17:57:39 +01:00
Leon Styhre c8d9d100cf (Android) Added log output support 2023-12-07 17:57:08 +01:00
Leon Styhre 27be4007a2 Added workarounds for some mobile GPUs which do not support all OpenGL operations when using the BGRA pixel format 2023-12-07 17:56:27 +01:00
Leon Styhre 8fe027e9ad Fixed an issue where font textures were sometimes updated with empty glyhps 2023-12-07 17:55:40 +01:00
Leon Styhre aaffc06514 Fixed a regression which caused the saturation property to not have any effect on the video stream 2023-11-11 11:37:09 +01:00
Leon Styhre fed4dda4ac Fixed an issue where the application shutdown was not always clean 2023-11-10 20:42:14 +01:00
Leon Styhre ac7729b9ac Fixed an issue where horizontally scrolling text containers sometimes had an incorrect vertical offset 2023-11-04 21:32:35 +01:00
Leon Styhre 6d6673e1c3 The application release number is now tracked on startup instead of the application version 2023-11-04 19:43:01 +01:00
Leon Styhre 87a8d5a23a Fixed a few issues reported by scan-build 2023-11-02 12:38:19 +01:00
Leon Styhre e6097b4fb0 Added rounding of the item sizes in GridComponent 2023-11-01 23:38:33 +01:00
Leon Styhre f22af4afa9 Fixed an issue where parsing of theme include files would stop if non-existing include files were defined using variables 2023-10-31 19:25:36 +01:00
Leon Styhre 12f7d103be Fixed an issue where the textRelativeScale property was not working correctly for the grid element 2023-10-20 17:42:40 +02:00
Leon Styhre 9283cdff84 Newlines are now converted to spaces when pasting text into single-line input fields 2023-10-20 17:40:44 +02:00
Leon Styhre db5948ee4b Fixed an issue where scrollable text containers were sometimes not updated correctly 2023-10-20 17:38:43 +02:00
Leon Styhre b43e466175 Fixed an issue where the slider knob was sometimes not correctly positioned horizontally 2023-10-20 17:37:16 +02:00
Leon Styhre 78a4223b8e (Windows) Fixed an issue where Unicode characters in folder names would sometimes crash the application 2023-10-17 23:58:38 +02:00
Leon Styhre c97555a4c6 Changed the default value for the ScraperSearchFileHashMaxSize setting from 192 to 384 MiB 2023-10-16 19:39:45 +02:00
Leon Styhre 925d1b218b Added event polling when suspending ES-DE on game launch
Also added a ~5 MB log output size limitation for launched games on Unix and macOS
2023-10-16 18:27:46 +02:00
Leon Styhre ce171b2e17 Improved resilience to buggy controller drivers which could previously crash the application 2023-10-07 14:03:17 +02:00
Leon Styhre d576cbc03f Added a 'Debug mode' option to the Other settings menu 2023-10-02 19:59:13 +02:00
Leon Styhre 2d4886a4e1 Changed default interpolation to linear on arbitrary rotation for the image, video, animation, badges and rating elements 2023-09-30 16:28:32 +02:00
Leon Styhre 3d58eccd87 Added debug overlay rendering for the actual video stream in addition to the static image 2023-09-30 13:29:11 +02:00
Leon Styhre 0e2571e8dd Added 'rotation' and 'rotationOrigin' properties to the video element
Also changed the 'interpolation' property to also apply to the video stream
2023-09-30 12:12:32 +02:00
Leon Styhre fcc46148e9 Added an 'interpolation' property to the badge element 2023-09-30 11:36:10 +02:00
Leon Styhre c988170641 Fixed an issue where the interpolation property did not work for the animation element when using Lottie animation files 2023-09-28 18:38:11 +02:00
Leon Styhre 7d32aac99d Changed a Font comment related to the use of the FreeType auto-hinter 2023-09-27 22:08:42 +02:00
Leon Styhre b7e3d3064d Reintroduced vertex roundings as it improves texture mapping accuracy 2023-09-27 20:44:55 +02:00
Leon Styhre a3b49b87b0 Fixed an issue where the menu arrows were not always scaled cleanly 2023-09-27 20:42:23 +02:00
Leon Styhre ee2573345f Improved font rendering quality and always enabled linear texture interpolation for both minification and magnification 2023-09-27 20:36:54 +02:00
Leon Styhre 61d2b92814 Added theme support for the 'physicalName' and 'physicalNameExtension' metadata types for the text element 2023-09-23 12:52:00 +02:00
Leon Styhre 213464a324 Added a missing grid imageInterpolation property entry to ThemeData 2023-09-22 17:30:34 +02:00
Leon Styhre 42e5e2c096 Removed some unnecessary applyTheme calls from CarouselComponent and GridComponent 2023-09-22 17:29:14 +02:00
Leon Styhre 493f51cbe8 Fixed an issue where the text debug overlay was not always rendered correctly 2023-09-22 17:27:56 +02:00
Leon Styhre ad11046d2d Added an 'imageInterpolation' property to the grid element 2023-09-22 16:51:30 +02:00
Leon Styhre ca45ea6d08 Controller input is now blocked during ROM directory rescans to avoid crashes 2023-09-20 20:46:51 +02:00
Leon Styhre 7467e8a7f9 Removed some unnecessary roundings in MoveCameraAnimation 2023-09-20 20:42:05 +02:00
Leon Styhre 2adde87050 Added support for defining an explicit back button function for GuiMsgBox 2023-09-17 11:47:58 +02:00
Leon Styhre 847874a149 Fixed an issue where horizontally scrolling text was not always rendered correctly when scrolling was reset 2023-09-10 15:15:04 +02:00
Leon Styhre 68ba299e0e Removed the back button option from some confirmation dialogs
Also changed the button text for some dialogs to display 'Proceed/Cancel' instead of 'Yes/No'
2023-09-10 14:09:39 +02:00
Leon Styhre a9d99a04c6 Simplified the back button logic in GuiMsgBox 2023-09-10 14:02:48 +02:00
Leon Styhre 87ed152c5a Fixed a regression where text element fade animations would not play 2023-09-08 20:14:22 +02:00
Leon Styhre 8d8649273b Removed a lot of unnecessary vertex roundings 2023-09-07 21:38:34 +02:00
Leon Styhre 848d19a80b Added support for binding multiple texture units for use in the shaders 2023-09-07 21:02:38 +02:00
Leon Styhre 8c9ebc2dcd Renamed the textureSize shader uniform to texSize to avoid collision with the GLSL keyword
Also some additional minor renderer code cleanup
2023-08-31 17:11:32 +02:00
Leon Styhre e3e319f2af Fixed a regression where StringUtil::toCapitalized() stopped working 2023-08-21 17:01:43 +02:00
Leon Styhre 5ddad6d55e Fixed an issue where the rows in TextListComponent were not always sized correctly vertically 2023-08-21 17:00:15 +02:00
Leon Styhre de905babf0 Small change to two RatingComponent theme log warnings 2023-08-20 21:01:23 +02:00
Leon Styhre 7406f2ed78 Some small optimizations in ImageComponent and TextComponent 2023-08-20 20:37:04 +02:00
Leon Styhre 170d8e3791 Added rounded corner support to the image, video, animation, carousel and grid elements 2023-08-20 19:41:07 +02:00