Commit graph

2187 commits

Author SHA1 Message Date
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
XargonWan cebbeff3b5 Applied RetroDECK patches 2023-12-22 17:01:04 +01:00
XargonWan 4bbc6997b5 Applied RetroDECK pathes 2023-12-22 16:47:07 +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
Leon Styhre 912c8bb75a Changed the screensaver to never show the same game again until all games have been cycled through 2023-08-20 15:28:30 +02:00
Leon Styhre b669280412 Set scanline rendering as disabled by default for the slideshow screensaver 2023-08-20 13:22:20 +02:00
Leon Styhre c32bbc4888 Reduced the slideshow screensaver fade-in time
Also made some general code cleanup
2023-08-20 13:21:11 +02:00
Leon Styhre 9e277ed1ff Improved the blur shaders to run faster at higher resolutions and to look identical regardless of display resolution
Also improved the blur shaders rendering quality when rotating the screen 90 or 270 degrees
2023-08-18 20:22:08 +02:00
Leon Styhre fd1da398ac The %STARTDIR% variable could not be combined with running ES-DE in the background while launching games on Linux and macOS 2023-08-16 23:02:38 +02:00
Leon Styhre 93b745063f Increased the default value for the ScraperSearchFileHashMaxSize setting from 128 to 192 MiB 2023-08-16 19:09:57 +02:00
Leon Styhre 4918c16a98 Added key repeat support to MediaViewer and PDFViewer 2023-08-15 19:52:53 +02:00
Leon Styhre 481e2869ec Changed the concept of 'theme set' to simply 'theme' everywhere in the code 2023-08-14 22:40:32 +02:00
Leon Styhre 88373f06ee Changed two FileSystemUtil functions to use std::filesystem facilities 2023-08-14 19:03:37 +02:00
Leon Styhre 706dd767f1 Added a 'Systems sorting' option to the Other settings menu 2023-08-13 21:32:54 +02:00
Leon Styhre d7c03e52fb Fixed an issue where the background was too dark when opening a menu with the dark menu color scheme and the option to blur the background was disabled 2023-08-13 18:27:23 +02:00
Leon Styhre 2aa74878bb Changed the sort types 'filename, ascending' and 'filename, descending' to 'name, ascending' and 'name, descending' 2023-08-13 18:19:25 +02:00
Leon Styhre c15aa73de2 Added 'iterationCount' and 'onIterationsDone' properties to the video element 2023-08-13 14:48:00 +02:00
Leon Styhre 89d94bc1b0 Fixed an issue where the video player would not play the last couple of frames for any videos 2023-08-13 12:25:43 +02:00
Leon Styhre fd955d5a6e Changed the 'path' property for the video element to consider the value set even if it points to a non-existing file 2023-08-13 11:17:59 +02:00
Leon Styhre 28ca932b65 Added the device serial number to the es_log.txt entries when adding or removing controllers 2023-08-12 18:43:15 +02:00
Leon Styhre 7ab8b82bcc The media viewer now only stops info popups if there is actually any media to display 2023-08-11 19:38:38 +02:00
Leon Styhre de4bd7341f Changed a number of stream operations to open files in binary mode to always get proper Unix line breaks 2023-08-10 23:02:36 +02:00
Leon Styhre 4a390fb8e0 Added a 'containerScrollGap' property to the text element 2023-08-10 19:22:46 +02:00
Leon Styhre f463ee7d7b Added a number of properties to allow horizontally scrolling text entries with GridComponent 2023-08-10 19:20:44 +02:00
Leon Styhre 98482f45c9 Added a textHorizontalScrollGap property to CarouselComponent and TextListComponent 2023-08-09 20:02:21 +02:00
Leon Styhre 6ae8c87864 Added a number of properties to allow horizontally scrolling text entries with CarouselComponent
Also added support for rotating horizontal scrollable containers
2023-08-09 18:57:23 +02:00
Leon Styhre 950541b261 TextComponent now sets rotation to zero if it's attempted to be combined with a horizontal container 2023-08-08 21:02:33 +02:00
Leon Styhre c164f3bfdc Minor code cleanup 2023-08-08 20:00:21 +02:00
Leon Styhre 274a95b28e Fixed some Clang compiler warnings 2023-08-08 19:43:40 +02:00
Leon Styhre 7999f89c5b Added new textHorizontalScrolling, textHorizontalScrollSpeed and textHorizontalScrollDelay textlist properties
Also removed the horizontal text scrolling code and did some general refactoring
2023-08-08 19:35:20 +02:00
Leon Styhre c30d035e3f Removed all horizontal text scrolling code from ComponentList (TextComponent is now used instead for this)
Also some general code cleanup and refactoring
2023-08-08 19:18:16 +02:00
Leon Styhre 3591c0f1ba Changed TextComponent to convert newlines to spaces instad of nulls when using horizontally scrolling containers 2023-08-07 23:48:02 +02:00
Leon Styhre e7ada6111b Added a 'containerType' property to the text element to select between vertical and horizontal containers 2023-08-07 22:58:35 +02:00
Leon Styhre 23749f16eb Fixed an issue where some theme loading warning messages for the gamelistinfo element were not formatted correctly 2023-08-07 22:04:29 +02:00
Leon Styhre a4ba7de722 Added a 'stationary' property to all secondary elements to set them as stationary during slide transitions
Also changed the view mode enum to an enum class
2023-08-06 23:51:53 +02:00
Leon Styhre 40d27ff772 Added MD5 file hash searching support to the scraper when using ScreenScraper 2023-08-03 20:48:54 +02:00
Leon Styhre 590591d0fb Added a check to MathUtil::md5Hash() to not attempt to hash directories 2023-08-03 20:14:04 +02:00
Leon Styhre 57fffd88b2 Added support to MathUtil::md5Hash() for streaming files in chunks 2023-08-02 20:34:32 +02:00
Leon Styhre c22bdae16e Changed most try/catch statements in FileSystemUtil to actually output the std::filesystem error messages 2023-08-02 20:28:29 +02:00
Leon Styhre 05cfbb55bd Added try/catch statements to a couple of std::filesystem functions in FileSystemUtil 2023-08-02 19:32:46 +02:00
Leon Styhre 5705672957 Added a getFileSize() function to FileSystemUtil
Also modernized createEmptyFile() to use std::filesystem::path
2023-08-02 19:20:50 +02:00
Leon Styhre d67252eefc (Windows) Fixed an MSVC compiler warning 2023-08-01 17:49:08 +02:00
Leon Styhre f91a87251d Added a download percentage indicator to the application updater together with some other minor improvements
Also cleaned up HttpReq in general and added a progress meter callback
2023-08-01 17:36:15 +02:00
Leon Styhre 4f3d66c45b Added support for downloading the Windows and macOS packages via the application updater 2023-07-31 19:25:54 +02:00
Leon Styhre 3472c6f852 Added a FileSystemUtil function to return the system home directory 2023-07-31 17:49:58 +02:00
Leon Styhre 66555101bf Added a FileSystemUtil function to create an empty file 2023-07-31 17:40:06 +02:00
Leon Styhre 0267a9db00 Some video code cleanup 2023-07-30 20:12:23 +02:00
Leon Styhre d8409da174 (Windows) Converted forward slashes to backslashes for a ThemeData log message 2023-07-30 18:36:38 +02:00
Leon Styhre ed1e11418b Completely removed support for legacy EmulationStation theme sets 2023-07-30 18:17:27 +02:00
Leon Styhre 40f258f0f4 Improved font rendering for BusyComponent and GuiInfoPopup 2023-07-29 20:27:36 +02:00
Leon Styhre 8a42b01165 Reverted a rounding change in ComponentGrid as it caused unforeseen issues 2023-07-29 20:26:27 +02:00
Leon Styhre c0ec753dc7 Replaced a number of homecooked functions in FileSystemUtil with those from the C++ standard library 2023-07-29 19:14:07 +02:00
Leon Styhre e5758d047e Improved menu system font rendering on GPUs without proper texture filtering support 2023-07-29 18:41:43 +02:00
Leon Styhre f39d09d6b7 Added a rounding when sizing BusyComponent to improve its rendering at low resolutions 2023-07-29 16:33:07 +02:00
Leon Styhre 772f2dea90 (macOS) Changed the minimum required OS version from 10.14 'Mojave' to 10.15 'Catalina'
Also completely removed support for the legacy OS build
2023-07-29 16:08:40 +02:00
Leon Styhre 2d151921db Fixed an issue where the camera offset in ComponentList was not correctly calculated when reaching the bottom of a list 2023-07-29 11:27:12 +02:00
Leon Styhre 0d18239893 Changed ComponentList to fixed row heights 2023-07-29 11:25:13 +02:00
Leon Styhre 768539e8e7 (Windows) Fixed an issue where attempting to capitalize multi-byte Unicode strings crashed the application if built using the MSVC compiler 2023-07-28 21:46:24 +02:00
Leon Styhre 3b62dc6ee7 (Windows) Fixed an issue where wide string conversions were not done correctly 2023-07-28 21:44:03 +02:00
Leon Styhre 69e46d96a5 Added a parameter for whether to resize ButtonComponent when calling setText() 2023-07-27 13:06:07 +02:00
Leon Styhre f797ade74f Fixed an issue where the textlist properties selectedBackgroundColor and selectedSecondaryBackgroundColor were not offset by selectorVerticalOffset 2023-07-25 00:06:00 +02:00
Leon Styhre 849ed7499b Some minor code cleanup 2023-07-24 16:53:24 +02:00
Leon Styhre 07d390ccda Added theme support for the 'manual' metadata type for the text element 2023-07-20 17:33:49 +02:00
Leon Styhre be2b761356 Fixed an issue where SDL_StartTextInput() was sometimes set when not actually inputting any text 2023-07-20 16:03:59 +02:00
Leon Styhre bd591a74cb Added support for pasting text into the application when a text input field is focused 2023-07-20 16:01:24 +02:00
Leon Styhre cfd4290e3f Removed parts of the buggy controller drivers crash prevention as it caused unforeseen issues 2023-07-15 23:59:52 +02:00
Leon Styhre 5e64694e3c Added support for a lot more emoji characters by bundling the Google Noto Emoji font 2023-07-15 22:23:13 +02:00
Leon Styhre 954492b1f4 Some more changes to make the dark menu color scheme the default choice 2023-07-13 17:46:06 +02:00
Leon Styhre 8e24c7b1d4 The textlist navigation sound will now always start playing immediately when scrolling a single entry 2023-07-13 14:26:11 +02:00
Leon Styhre 8b67782340 Enabled textlist fast-scrolling for the system view 2023-07-13 13:42:29 +02:00
Leon Styhre c06f598d80 (macOS) Suppressed a compiler warning 2023-07-07 18:32:11 +02:00
Leon Styhre 1c7a18830e Removed the entry counter from the media viewer and added an option for whether to display the media types 2023-07-05 23:19:57 +02:00
Leon Styhre 9af8031c0c Changed the order of some GuiComponent functions 2023-07-04 22:20:32 +02:00
Leon Styhre 728b4c7768 Popup notifications are now stopped when starting the media viewer 2023-07-04 18:09:10 +02:00
Leon Styhre 8a6611a6f5 Added a popup notification if PDF manual rendering failed
Also removed two unnecessary navigation scroll sounds on PDF rendering failure
2023-07-04 18:07:28 +02:00
Leon Styhre b60f86ae04 Added zoom support to the PDF viewer
Also increased page rasterization resolution when running at lower screen resolutions
2023-07-04 17:47:00 +02:00
Leon Styhre 47c321e434 Enabled linear interpolation support for ImageComponent::setRawImage() 2023-07-04 17:41:41 +02:00
Leon Styhre 19c8d5bb38 (Linux) The esBinary variable is now set correctly when running as an AppImage 2023-07-03 17:41:22 +02:00
Leon Styhre 15e5a8b305 Added a function to FileSystemUtil to return the ES-DE binary path
Also fixed an issue where the fallback to argv[0] in FileSystemUtil::setExePath() was not working correctly
2023-07-02 23:16:39 +02:00
Leon Styhre 923b6b2ed1 Changed the order of some NinePatchComponent functions 2023-07-02 11:58:59 +02:00
Leon Styhre 569bf22690 Set the menu color scheme to 'dark' by default 2023-07-01 22:05:30 +02:00
Leon Styhre 30ca0497aa Added options to the video and slideshow screensavers to only include favorite games 2023-07-01 15:57:29 +02:00
Leon Styhre 923240aac0 Added options to the miximage generator for how to fit screenshots that do not match the aspect ratio of the miximage frame 2023-07-01 11:15:43 +02:00
Leon Styhre d94249d67e Fixed an issue where the rating component was sometimes color shifted incorrectly 2023-06-29 21:04:44 +02:00
Leon Styhre 03bfac0a9b Added a game manual badge 2023-06-29 20:43:32 +02:00
Leon Styhre 1dca0673c5 (Windows) Fixed an issue where the log output time stamp was missing in es_log.txt when built using MinGW 2023-06-28 22:21:42 +02:00
Leon Styhre 87abe71316 Set scraping of game manuals as enabled by default 2023-06-28 20:42:51 +02:00
Leon Styhre 610da5d771 Added help prompts to the media viewer and PDF viewer
Also added trigger button support to the media viewer and fixed rendering of some PDF files with unusual orientations
2023-06-28 20:32:49 +02:00
Leon Styhre 974ae11461 (Windows) Added a check for whether OpenGL 3.3 is supported by the GPU driver 2023-06-26 22:43:52 +02:00
Leon Styhre 8ad3bd2afd Prevented the up and down buttons to quit the media viewer and PDF viewer 2023-06-25 13:36:57 +02:00
Leon Styhre a964d89b80 Added up and down button navigation to switch between the media viewer and the PDF viewer 2023-06-25 13:30:49 +02:00
Leon Styhre f9780e58d8 Improved PDF viewer integration
Also fixed a crash on shutdown caused by the PDF viewer
2023-06-22 22:15:59 +02:00
Leon Styhre 6bf8c5af46 Added Windows support for the PDF viewer 2023-06-22 21:15:35 +02:00
Leon Styhre 2fa71dfd0b Removed the PoDoFo dependency and replaced its functionality with the Poppler library 2023-06-22 11:34:03 +02:00
Leon Styhre 3d5a8aa08f Fixed an issue where TextureResource::initFromPixels() was not setting the source size correctly 2023-06-21 23:06:55 +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 177dd23b7c Added a setRawImage function to ImageComponent to load raw pixel data into textures 2023-06-21 22:52:25 +02:00
Leon Styhre e7e3db7f6d Minor change to a error log output in PlatformUtil 2023-06-21 22:44:29 +02:00
Leon Styhre 075ad393d0 Moved a #define in VideoFFmpegComponent 2023-06-21 20:35:19 +02:00
Leon Styhre d83374b38f Added an option to scrape game manuals using ScreenScraper
Also changed the scraper auto-retry functionality to not run on non-recoverable errors or duing manual scraping
2023-05-08 17:14:52 +02:00
Leon Styhre 7077a5c3ae Adjusted some colors for the dark menu color scheme 2023-05-07 23:25:52 +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 feae03375e Improved resilience to buggy controller drivers which would sometimes crash the application 2023-05-06 10:40:36 +02:00
Leon Styhre 8bc31e2fd8 Removed a lot of unnecessary NinePatchComponent::fitTo() function arguments 2023-04-30 16:49:51 +02:00
Leon Styhre 9a9ef0e97b Changed the default OpenGL version from 4.6 to 3.3 when building for RetroDECK 2023-04-28 21:00:03 +02:00
Leon Styhre 471d0ac63a Re-enabled support for using the default property without any imageType property for the image element 2023-04-21 18:28:47 +02:00
Leon Styhre ac272bc944 Fixed an image positioning issue in GridComponent when using the scaleInwards property 2023-04-13 22:43:31 +02:00
Leon Styhre 88df22cb61 Added a scaleInwards property to the grid element to contain scaling within the element boundaries 2023-04-12 23:06:13 +02:00
Leon Styhre 6cfa888b4d Fixed an issue where using the cropSize property could lead to a crash under very rare circumstances 2023-04-12 22:29:11 +02:00
Leon Styhre 499fecf100 Removed a small optimization that caused some issues under rare circumstances 2023-04-10 20:28:29 +02:00
Leon Styhre 0f0f24887e (Windows) Fixed a compile error 2023-04-10 20:21:38 +02:00
Leon Styhre 1697508393 Added a new gameOverridePath property to the image element to enable per-game static image overrides
Also fixed an issue where the default image element property could be used even if no imageType entries were defined
2023-04-10 20:16:19 +02:00
Leon Styhre dfe7469101 Added six new theme properties for sizing and placement of the helpsystem when a menu is open 2023-04-09 12:47:44 +02:00
Leon Styhre 0f3db2fbf1 Fixed a line wrapping issue for text with blank lines that was not displayed in a scrollable container 2023-04-08 15:35:56 +02:00
Leon Styhre 814029bb66 (Windows) Converted forward slashes to backslashes for a log message. 2023-04-06 11:50:18 +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 b30f8a48d3 Fixed an issue where FileSystemUtil::renameFile() did sometimes not provide a return value for if it actually succeeded or not 2023-04-02 21:01:28 +02:00
Leon Styhre 1953d42f92 Theme sets are now repopulated when there were new downloads or updates using GuiThemeDownloader 2023-03-31 22:12:31 +02:00