Commit graph

1436 commits

Author SHA1 Message Date
Leon Styhre 8361c4f15c Moved the Alignment enumerator from Font to GuiComponent. 2022-09-07 19:54:55 +02:00
Leon Styhre 503ff07d81 Fixed an issue where the rating stars would not display properly in the metadata editor and in the scraper.
Also fixed a minor rounding issue.
2022-09-07 19:29:56 +02:00
Leon Styhre feef706ba4 (Windows) Fixed an MSVC compiler warning. 2022-09-06 22:59:32 +02:00
Leon Styhre 487cbd84bc Fixed an excessive texture pop-in issue caused by a recent commit. 2022-09-06 22:39:28 +02:00
Leon Styhre b4b709b589 Added a tileSize property to the image element so that the size of each individual image in tiled textures can be defined. 2022-09-06 21:33:50 +02:00
Leon Styhre b6dc0bd72c Removed the font texture linear magnification support as it caused various rendering artifacts. 2022-09-06 00:51:16 +02:00
Leon Styhre 9d46625739 Added support for texture mipmapping with trilinear filtering. 2022-09-05 23:36:49 +02:00
Leon Styhre 1bbf32a6f5 Fixed some menu alignment issues. 2022-09-05 23:05:09 +02:00
Leon Styhre 311595ff62 Removed an unnecessary rounding in TextComponent. 2022-09-05 23:03:04 +02:00
Leon Styhre 01d410867c Moved back the wide SVG images size compensation from TextureData to ImageComponent. 2022-09-05 23:00:47 +02:00
Leon Styhre 5d78412b9d Fixed some pixel alignment issues for the carousel. 2022-09-05 22:39:26 +02:00
Leon Styhre b079421205 Changed it so that only fonts of a certain minimum size gets linear texture magnification applied. 2022-09-05 22:36:33 +02:00
Leon Styhre ff0e76332c Added rounding to various translations like camera movements. 2022-09-05 20:13:47 +02:00
Leon Styhre 881b602cb4 Fixed a rendering issue in ScrollableContainer. 2022-09-05 00:30:19 +02:00
Leon Styhre e8c74450a0 Enabled linear interpolation for all font rendering regardless of resolution. 2022-09-05 00:11:53 +02:00
Leon Styhre d36e64e23a Fixed a rendering issue in ButtonComponent. 2022-09-04 23:55:53 +02:00
Leon Styhre 77a2383683 Fixed a font rendering issue in TextListComponent. 2022-09-04 23:48:27 +02:00
Leon Styhre b9a2031cf6 Increased the maximum allowed size for the carousel for legacy themes only. 2022-09-04 22:36:50 +02:00
Leon Styhre dda63403fa Improved the renderer scaling accuracy. 2022-09-04 22:01:59 +02:00
Leon Styhre d242c84ea8 Set linear interpolation for the rating component in GuiMetaDataEd and GuiScraperSearch. 2022-09-03 21:43:36 +02:00
Leon Styhre 455b970a59 Reverted a removal of vertex rounding during the project matrix calculation. 2022-09-03 21:22:31 +02:00
Leon Styhre 947ab458ae Fixed some Clang compiler warnings. 2022-09-03 16:39:59 +02:00
Leon Styhre ce50c1121b Enabled linear interpolation for font texture magnification when running on display resolutions at or above approximately 1920x1080. 2022-09-02 21:30:16 +02:00
Leon Styhre 9b1fb95865 Enabled linear interpolation for font texture minifications. 2022-09-02 21:03:19 +02:00
Leon Styhre a1027c2580 Removed some projection matrix and vertices roundings which caused multiple pixel alignment issues. 2022-09-02 21:01:31 +02:00
Leon Styhre 4ade04d760 Some minor code cleanup. 2022-09-02 20:52:49 +02:00
Leon Styhre 039c27fa8e Added support for sizing SVG images arbitrarily (overriding the image aspect ratio by stretching and squashing). 2022-09-02 20:48:45 +02:00
Leon Styhre 3a9c7b92e3 Added support for arbitrary image aspect ratios to RatingComponent.
Also added an overlay property and fixed some potential crashes.
2022-09-01 17:40:29 +02:00
Leon Styhre 819d1b0341 Fixed some potential crashes in ImageComponent caused by invalid theme configuration. 2022-09-01 17:35:40 +02:00
Leon Styhre 6215ae8b57 Fixed two minor issues in RatingComponent. 2022-08-31 22:30:31 +02:00
Leon Styhre 54ded5cbb6 Changed RatingComponent to use shader-based clipping. 2022-08-31 21:19:09 +02:00
Leon Styhre 7b279a7c73 Made SVG rasterizations slightly more accurate. 2022-08-31 21:17:13 +02:00
Leon Styhre ed69e46b42 Fixed some issues where bundled SVG images would not get cached at the correct resolution. 2022-08-30 20:26:48 +02:00
Leon Styhre eced44934e Added clamping of 0.0 to 1.0 to the rotationOrigin property. 2022-08-30 19:56:38 +02:00
Leon Styhre 496b60fa7d Added support for clipping to the core GLSL shader. 2022-08-30 19:42:37 +02:00
Leon Styhre 6126016289 Cleaned up some font-related code. 2022-08-30 19:31:57 +02:00
Leon Styhre f61d0f1df8 Added a property to RatingComponent to set interpolation method (nearest or linear) when using raster images. 2022-08-28 20:45:04 +02:00
Leon Styhre 2c86e4f99e Removed the deprecated SVG force rasterization flag from the cache manager. 2022-08-28 20:21:58 +02:00
Leon Styhre 48a9571609 Refactored RatingComponent to improve rendering accuracy and performance. 2022-08-28 20:11:20 +02:00
Leon Styhre 0060cd48dc (Windows) Fixed a couple of MSVC compiler warnings. 2022-08-23 22:50:14 +02: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 5dae37f558 Added support for caching SVG images. 2022-08-23 22:24:24 +02:00
Leon Styhre 047d080346 Fixed a small text abbreviation issue. 2022-08-21 21:24:46 +02:00
Leon Styhre e2fb03dbf3 Fixed an issue where the tile property for the image element did not work correctly with SVG images. 2022-08-21 19:06:51 +02:00
Leon Styhre fca9e51844 Added support for the letterCase property when using the carousel in the gamelist view. 2022-08-21 18:15:06 +02:00
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