Commit graph

1391 commits

Author SHA1 Message Date
Leon Styhre 08d5e4eff0 Enabled vertical abbreviations of multiline text entries in TextComponent.
Also fixed an issue where the debug overlay would not get rendered correctly for scrollable containers.
2022-08-21 16:51:21 +02:00
Leon Styhre ce217c48a4 Added support for vertical abbreviations of multiline text entries. 2022-08-21 16:33:29 +02:00
Leon Styhre 67488467c3 (Linux) The data installation directory is now excluded for themes and resources when built as an AppImage. 2022-08-20 11:30:15 +02:00
Leon Styhre 15314fff84 Eliminated some incorrect and unnecessary cursor stops in IList.
Also got rid of some unnecessary cursor stops triggered by TextListComponent.
2022-08-19 17:17:34 +02:00
Leon Styhre fa81853127 Changed some theme loading issues log output from warning to error for DateTimeComponent and TextComponent. 2022-08-19 17:11:16 +02:00
Leon Styhre 0b34bd8991 Added checks for valid imageType property values to ImageComponent and VideoComponent. 2022-08-19 17:07:45 +02:00
Leon Styhre 9d2a9ed9d9 Fixed an issue where StringUtil::delimitedStringToVector could return empty elements. 2022-08-19 17:03:55 +02:00
Leon Styhre d24102db0e TextComponent now only accepts valid metadata and systemdata property values. 2022-08-18 23:44:22 +02:00
Leon Styhre 8c24d0a3b7 Fixed an issue where videos with no path set could sometimes get attempted to play. 2022-08-18 23:02:00 +02:00
Leon Styhre de5a642cf6 Added a metadataElement theme property to the image, video, animation and text element types to control fading and hiding of arbitrary elements. 2022-08-18 22:51:21 +02:00
Leon Styhre 389dc6ed79 Added mOpacity video fading support to VideoFFmpegComponent 2022-08-18 22:38:09 +02:00
Leon Styhre 93e0bfab5b Fixed an issue where text elements that had an opacity set to lower than FF via the color tag were faded in during gamelist scrolling. 2022-08-17 17:04:19 +02:00
Leon Styhre e6ae806c31 Added an itemInterpolation theme property to control the interpolation method for carousel items. 2022-08-17 00:26:47 +02:00
Leon Styhre 141f8aadf4 Fixed an issue where the video would not start playing immediately after closing the media viewer if the showSnapshotDelay property was not set. 2022-08-16 23:39:33 +02:00
Leon Styhre 640793ec0a Fixed an issue where the video player would delay playing even though the showSnapshotDelay property was not set. 2022-08-16 23:10:40 +02:00
Leon Styhre 225a602a74 If the same raster image is used with different interpolation methods then these are now cached separately. 2022-08-16 22:37:36 +02:00
Leon Styhre 967b98008b Fixed an issue where raster graphic images could get scaled incorrectly. 2022-08-16 21:04:39 +02:00
Leon Styhre 91d4c0b45a Changed the default selectorColor and selectorColorEnd property values for TextListComponent. 2022-08-16 19:10:58 +02:00
Leon Styhre 85ce3ef7f6 Allow maxLogoCount to be set to 0 for legacy themes. 2022-08-14 23:04:25 +02:00
Leon Styhre 899ace3eb6 Added a manualUnloadAll function to TextureResource.
Also converted some variables to static inline and cleand up some code.
2022-08-14 21:31:02 +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 5699988767 Added a workaround for legacy theme sets where the md_releasedate and md_lastplayed element types have incorrectly been defined as text instead of datetime. 2022-08-14 14:46:56 +02:00
Leon Styhre f6c109e3fc (Windows) Trigger emergency shutdown on wide string conversion errors to preserve data integrity at all times. 2022-08-13 16:27:44 +02:00
Leon Styhre f550ba7dfc (Windows) Added error handling to StringUtil::stringToWideString() and StringUtil::wideStringToString() to avoid crashes caused by invalid characters. 2022-08-01 19:51:25 +02:00
Leon Styhre 81268fb11c (Windows) Changed many logging entries to use backslashes instead of forward slashes as directory separators. 2022-07-01 16:39:18 +02:00
Leon Styhre 0d23719fe7 (Windows) Fixed an issue where file paths would get escaped with quotation marks even if they did not contain any spaces. 2022-07-01 16:32:31 +02:00
Leon Styhre ffed5dee2d Added connection and transfer timeout settings to the scraper (not configurable via the GUI). 2022-06-29 17:28:39 +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 b897b8a15d Merge branch 'threadsafe_logging' 2022-06-26 14:19:43 +02:00
Leon Styhre 25ac88c2f6 (Windows) Increased window size one pixel horizontally instead of decreasing it one pixel vertically on game launch. 2022-06-26 12:18:28 +02:00
Joseph Geumlek 517186bbe0 Make Log() instances only lock in ~Log(), and make the mutex non-recursive. 2022-06-23 14:20:48 -07:00
Joseph Geumlek fefd70b943 Make logging more thread-safe 2022-06-21 22:06:20 -07:00
Leon Styhre bded2bf31f Added a ScreenScraper option to fallback to additional regions to allow scraping of country-specific games and unofficial releases. 2022-06-16 19:56:41 +02:00
Leon Styhre c9eb9022db A dummy theme set is now created if no theme sets were found on startup. 2022-06-11 18:35:44 +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 0ef6a22248 Removed the 'Enable menu scroll indicators' menu option. 2022-06-10 19:54:29 +02:00
Leon Styhre c8cc7b7947 Fixed an issue where a virtual keyboard key repeat would sometimes continue to run when it shouldn't. 2022-06-10 19:30:21 +02:00
Leon Styhre cfc9d54068 Improved the behavior and consistency for the virtual keyboard when using non-standard keyboard mappings. 2022-06-10 19:28:01 +02:00
Leon Styhre d217a3315a Changed the SDL video initialization function from SDL_Init to SDL_InitSubSystem 2022-06-09 17:16:43 +02:00
Leon Styhre d96828f454 Suppressed MSVC compiler warnings C4251 caused by rlottie DLL interface exports. 2022-06-07 17:55:26 +02:00
Leon Styhre 9480f125bb Added support for the physicalmedia image type to the image, video and carousel elements. 2022-06-07 17:32:42 +02:00
Leon Styhre 2e3ac5bf0e Fixed an issue where using a text rating without a rating element in the gamelist view would crash the application. 2022-06-06 22:28:24 +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 c216f3804a Removed the RetroPie ES bug replication from TextListComponent for non-legacy theme sets. 2022-06-05 12:17:15 +02:00
Leon Styhre 0345fd8fa7 Fixed an issue where entering folders using the gamelist carousel could lead to a crash. 2022-06-04 17:44:00 +02:00
Leon Styhre 3ecb821c00 Added size restrictions to the 'size' and 'maxSize' theme properties for the image and video elements. 2022-06-04 17:25:36 +02:00
Leon Styhre 2ac706e0c5 Fixed an issue where large pixelated fonts sometimes displayed too many textlist rows. 2022-06-03 23:24:34 +02:00
Leon Styhre 269e2e8202 Added a wheelHorizontalAlignment property for aligning the carousel within the overall element area. 2022-06-03 20:53:15 +02:00
Leon Styhre 824089d703 Fixed an issue where the scroll indicators sometimes overlapped the menu titles. 2022-06-03 18:27:46 +02:00
Leon Styhre 765aaeb2df Changed the default quit shortcut to Alt + F4 and Command + Q.
Also renamed the setting 'Exit button combo' to 'Keyboard quit shortcut' and fixed an issue where the application sometimes quit when exiting an emulator using Alt + F4 while running in the background.
2022-05-31 22:06:47 +02:00
Leon Styhre d418c05614 Added scraper support for the platforms arcadia (Emerson Arcadia 2001) and crvision (VTech CreatiVision).
Also removed an unnecessary code comment.
2022-05-19 17:32: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 92c4ae3cdf Changed the execution order of some custom event scripts. 2022-05-18 23:01:32 +02:00
Leon Styhre fdf63a9ad0 Fixed an issue where the 'quit' custom event would not trigger on application shutdown. 2022-05-18 22:57:03 +02:00
Leon Styhre 5b63ecb828 Removed the last remnants of the PowerSaver. 2022-05-18 21:08:55 +02:00
Leon Styhre e50be3376b Added an Xbox Kinect controller badge icon. 2022-05-12 23:31:11 +02:00
Leon Styhre 53ad5a3152 Fixed an issue where the texture buffer sometimes couldn't fit Chinese characters. 2022-05-09 20:12:08 +02:00
Leon Styhre 595037b301 Fixed some minor function argument name mismatches. 2022-05-08 14:22:11 +02:00
Leon Styhre 9df3436d82 (Windows) Fixed an issue where symlinking media directories would crash the application. 2022-05-07 12:16:31 +02:00
Leon Styhre f990d91841 Reverted the previous commit. 2022-05-04 00:42:28 +02:00
Leon Styhre f86ab2ea89 Increased the font texture size slightly. 2022-05-03 23:35:47 +02:00
Leon Styhre 4d5364e9e4 (Windows) Fixed a MinGW compile error. 2022-04-30 21:19:15 +02:00
Leon Styhre 6caf4d193b Added support for a %STARTDIR% es_systems.xml variable. 2022-04-30 20:43:29 +02:00
Leon Styhre de48b69760 Prevented a potential endless loop in StringUtil::replace() 2022-04-30 18:31:53 +02:00
Leon Styhre 2f80d1e578 Removed some unnecessary log output when locating emulators when running as a Flatpak. 2022-04-27 18:57:17 +02:00
Leon Styhre 97da2df0a4 Found a better solution to the single-pixel alignment rendering issue. 2022-04-27 18:40:28 +02:00
Leon Styhre 7eecf6bb41 (Linux) Yet another ugly hack to detect installed emulators when running as a Flatpak. 2022-04-27 17:33:43 +02:00
Leon Styhre a9b17a7375 Removed some unreachable directories from the Flatpak path hack. 2022-04-26 23:20:47 +02:00
Leon Styhre b7d3b242fd (Linux) Ugly Flatpak PATH hack. 2022-04-26 21:26:25 +02:00
Leon Styhre a98ba7a42d A check is now done on game launch that emulator binaries are actually files or symlinks. 2022-04-24 11:17:51 +02:00
Leon Styhre 440e089847 Fixed some graphical glitches in NinePatchComponent and ButtonComponent. 2022-04-21 20:29:17 +02:00
Leon Styhre dbfab96e03 Added rudimentary on-demand texture loading to CarouselComponent. 2022-04-20 23:00:53 +02:00
Leon Styhre defbbfd13f Removed the setting 'Preload gamelists on startup'. 2022-04-20 22:39:27 +02:00
Leon Styhre 06f6840038 Carousel textures in the gamelist view now load dynamically. 2022-04-19 21:42:29 +02:00
Leon Styhre 7872f35d1b Fixed some compile errors when using old GCC versions. 2022-04-19 20:00:10 +02:00
Leon Styhre cad06bd841 Changed the RPi preprocessor name from _RPI_ to RASPBERRY_PI. 2022-04-19 17:29:29 +02:00
Leon Styhre 277a729a2d Cleaned up the CMake configuration. 2022-04-19 17:24:54 +02:00
Leon Styhre 1798b96cf8 Added reflections support to CarouselComponent. 2022-04-18 21:37:58 +02:00
Leon Styhre 79c61b2d8a Fixed a text artifact issue caused by a missing rounding in TextComponent.
Also forced vertical center alignment if the text field is smaller than the font height.
2022-04-18 13:47:22 +02:00
Leon Styhre 63e7b58ec0 Fixed a renderer heisenbug that caused multiple single-pixel alignment issues. 2022-04-18 10:17:05 +02:00
Leon Styhre fafca5c194 Added carousel theme support for setting the opacity for unfocused entries. 2022-04-17 13:08:28 +02:00
Leon Styhre 468d2b3635 Added a green debug mode rectangle for CarouselComponent.
Also changed the debug mode rectangle from blue to green for TextListComponent.
2022-04-17 11:08:08 +02:00
Leon Styhre a112fc035f Changed the variable names in CarouselComponent to use 'item' instead of 'logo'. 2022-04-17 10:40:18 +02:00
Leon Styhre 01c2d7ff17 Adjusted some theme log warnings in BadgeComponent. 2022-04-16 22:12:24 +02:00
Leon Styhre f463766497 Generalized the carousel property names and added support for setting media types for gamelist carousels. 2022-04-16 21:54:58 +02:00
Leon Styhre a149124252 Fixed an issue where two BadgeComponent default values were not always set. 2022-04-15 21:26:07 +02:00
Leon Styhre 7daf69092f Added theme support for controlling the TextListComponent collection indicators. 2022-04-15 21:20:43 +02:00
Leon Styhre 03e457516a Fixed an issue where the StringUtil::replace function did not remove repeating occurances. 2022-04-15 20:33:53 +02:00
Leon Styhre 2001a9f639 Added a collection badge to be shown when editing custom collections.
Also changed the default badge lines value from 2 to 3.
2022-04-15 19:27:38 +02:00
Leon Styhre aa4258a31a Removed the 'Use plain ASCII for special gamelist characters' menu option. 2022-04-15 17:13:51 +02:00
Leon Styhre 254e271392 Added theme support for controlling the TextListComponent indicators. 2022-04-15 17:06:33 +02:00
Leon Styhre d62bc17400 Renamed the default theme set from rbsimple-DE to slate-DE 2022-04-14 22:46:30 +02:00
Leon Styhre 30b02456c0 Added a folder badge including support for a folder link overlay. 2022-04-13 16:53:28 +02:00
Leon Styhre 45af7441e9 Added support for launching game files inside folders without having to enter the folder. 2022-04-11 23:28:18 +02:00
Leon Styhre 008fa23d5f Added a setting to define the OpenGL version to use. 2022-04-10 14:54:21 +02:00
Leon Styhre 91460495be Added size restrictions to fonts and textures to avoid crashes caused by invalid theme configuration. 2022-04-10 11:53:44 +02:00
Leon Styhre cb8596ab8a Prevented themes using the <resolution> tag from loading altogether. 2022-04-10 11:32:55 +02:00
Leon Styhre 3a8d19bad5 Added support for nested theme variables. 2022-04-10 11:24:15 +02:00
Leon Styhre 72ce3d33a8 Some code cleanup. 2022-04-09 16:32:47 +02:00
Leon Styhre 16955e5318 Fixed an issue where the theme sets were not always sorted correctly. 2022-04-09 15:57:37 +02:00