Leon Styhre
6fd47a5599
Fixed an issue where the video pillarboxes would not align precisely with the video content.
2022-09-16 23:30:51 +02:00
Leon Styhre
d203f4be27
Changed the location for a theme property.
2022-09-16 19:43:36 +02:00
Leon Styhre
3f9023885e
Prevented some unnecessary badge rendering.
2022-09-16 19:25:38 +02:00
Leon Styhre
4f88909eff
Fixed multiple issues where horizontally scrolling TextListComponent rows would not stop and reset correctly.
2022-09-16 19:22:19 +02:00
Leon Styhre
7e892a7855
Changed the order of some theme properties.
2022-09-16 18:51:36 +02:00
Leon Styhre
dca3a6d232
Fixed multiple issues in ScrollableContainer and added a new containerVerticalSnap property.
2022-09-16 18:49:39 +02:00
Leon Styhre
79a661b744
Changed the default vertical tile alignment from top to bottom.
2022-09-15 23:49:08 +02:00
Leon Styhre
16880028d7
Fixed an issue where ScrollableContainer would cause excessive stuttering with some legacy theme sets.
2022-09-15 23:31:51 +02:00
Leon Styhre
611824be18
Improved some invalid theme configuration warnings in ImageComponent.
2022-09-15 21:53:26 +02:00
Leon Styhre
47c8f5988d
Some very minor code cleanup.
2022-09-15 17:34:20 +02:00
Leon Styhre
3a41aa61c5
Fixed an issue where a legacy theme workaround for incorrect element types did not work as expected.
...
Also cleaned up a log warning message related to this.
2022-09-15 17:29:34 +02:00
Leon Styhre
59494b0a9b
Fixed an issue where videos without any static images would sometimes have a delayed start.
2022-09-15 17:25:27 +02:00
Leon Styhre
78cdc49200
Fixed an issue where static images for video elements would sometimes not fade out during gamelist fast-scrolling.
2022-09-15 17:22:26 +02:00
Leon Styhre
0aa1d3bdc7
Added checks for whether video files set using the 'path' and 'default' properties actually exist before attempting to use them in VideoComponent.
2022-09-15 17:19:50 +02:00
Leon Styhre
8e43138722
Made GameSelectorComponent not return the same game repeatedly in a row.
2022-09-12 19:48:11 +02:00
Leon Styhre
8d5dc46fc6
Some minor code cleanup.
2022-09-12 19:03:45 +02:00
Leon Styhre
2da2a86397
Adjusted the splash screen sizing to be more consistent across various screen aspect ratios.
2022-09-11 17:24:05 +02:00
Leon Styhre
a2eedde8d3
Fixed a small rounding error in TextComponent.
2022-09-10 20:05:58 +02:00
Leon Styhre
c50f39dd05
Updated the CMake configuration for the removed legacy theme engine code.
2022-09-10 11:58:52 +02:00
Leon Styhre
596bc5e8af
Removed a lot of deprecated theme engine code from the legacy engine.
2022-09-10 11:55:35 +02:00
Leon Styhre
f0fd5346c6
Changed the default origin from 0.5 0.5 to 0 0 for GIFAnimComponent and LottieAnimComponent.
2022-09-10 11:24:43 +02:00
Leon Styhre
8cc3d1aac5
Added some more workarounds for legacy theme sets with incorrectly defined element types.
2022-09-09 18:03:58 +02:00
Leon Styhre
807cf7b057
Fixed a rounding issue for the ImageComponent debug overlay.
2022-09-09 17:56:41 +02:00
Leon Styhre
2a4d9d334d
Gamelist fade animations are now cancelled on certain navigation actions.
2022-09-09 17:52:20 +02:00
Leon Styhre
a58153f08d
The badge overlay images are now retained in the texture cache.
2022-09-08 19:04:56 +02:00
Leon Styhre
b3148a7f74
Added a dummy RatingComponent object to SystemView to keep the cached texture entries from expiring.
2022-09-08 18:59:33 +02:00
Leon Styhre
2742424ca2
Some general code cleanup.
2022-09-08 18:56:02 +02:00
Leon Styhre
a2769b98d4
Added a workaround for playing broken video files with invalid PTS values.
2022-09-08 18:38:19 +02:00
Leon Styhre
b9303e5494
Mipmapping is now taken into consideration when calculating the VRAM usage.
2022-09-07 21:17:01 +02:00
Leon Styhre
406aecc6a9
Added two new properties tileHorizontalAlignment and tileVerticalAlignment to the image element.
2022-09-07 20:18:15 +02:00
Leon Styhre
d362f62b45
Added explicit sorting of the custom event scripts.
2022-09-07 20:01:04 +02:00
Leon Styhre
c537de51ef
Some general code cleanup.
2022-09-07 19:59:27 +02:00
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
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
Leon Styhre
21f21c20f5
Added a scraper setting to convert underscores _ to spaces when searching.
2022-04-09 15:14:48 +02:00
Leon Styhre
088237fe85
Set the interactive scraper as disabled by default.
2022-04-06 23:53:21 +02:00
Leon Styhre
acbbb0a630
Increased the default value for the MaxVRAM setting to 512 for the Steam Deck.
2022-04-03 13:37:41 +02:00
Leon Styhre
c4cae406e9
Fixed a font loading crash caused by an insufficient font texture size.
...
Also added a preventive measure for similar crashes in the future and made some general cleanup of the font code.
2022-04-02 11:59:52 +02:00
Leon Styhre
8ce820e001
Fixed an issue where carousel shoulder button navigation was a bit inconsistent.
2022-03-25 23:38:04 +01:00
Leon Styhre
e7aeb8e2b4
Removed the playing of some navigation sounds during textlist and carousel navigation.
2022-03-25 23:17:56 +01:00
Leon Styhre
fa4151a3d9
Fixed some GCC compiler warnings.
2022-03-24 23:32:28 +01:00
Leon Styhre
3a1c9d41ce
Fully generalized SystemView and GamelistView and rewrote CarouselComponent into a template class.
...
Also cleaned up some code and fixed an issue where navigation sounds would not play when using the shoulder buttons.
2022-03-24 23:05:23 +01:00
Leon Styhre
5625f44a0a
Added dimming support to RatingComponent.
2022-03-21 20:35:24 +01:00
Leon Styhre
3eacb27c3b
Changed the helpsystem properties entrySpacing and iconTextSpacing to relative values.
...
Also reverted the helpsystem horizontal alignment functionality as it's not needed.
2022-03-20 19:07:52 +01:00
Leon Styhre
07f151d906
Moved TextListComponent and CarouselComponent from es-core to es-app.
2022-03-19 09:55:05 +01:00
Leon Styhre
6f6f388257
Added RatingComponent support to the system view.
2022-03-18 22:16:53 +01:00
Leon Styhre
44fe2f8fe7
Standardized some theme warning log output.
2022-03-18 20:31:04 +01:00
Leon Styhre
a115b3f941
Added alignment support and separate dimming of gamelist and system views to the help system.
2022-03-18 20:14:51 +01:00
Leon Styhre
56d1b8f83d
Fixed an issue where multiple carousel logos were rendered when there was only a single system.
2022-03-17 21:52:55 +01:00
Leon Styhre
86ad917bc8
Set logo scaling to linear interpolation in CarouselComponent.
2022-03-17 19:34:41 +01:00
Leon Styhre
5de2855d60
Added theme support for defining color saturation for the image, video and animation components.
2022-03-17 19:33:09 +01:00
Leon Styhre
b6e38dcf67
Fixed multiple issues in CarouselComponent.
2022-03-17 00:02:16 +01:00
Leon Styhre
65d79edb54
Miniscule optimization in RendererOpenGL.
2022-03-16 20:26:13 +01:00
Leon Styhre
4b9f0c5d14
Removed the deprecated OpenGL ES 1.0 and 2.0 renderers.
2022-03-15 18:13:15 +01:00
Leon Styhre
02249ae6b9
(RPi) Fixed two compiler errors.
2022-03-15 18:02:19 +01:00
Leon Styhre
e5ed25ed5f
Removed an OpenGL initialization workaround that doesn't seem to be needed any longer.
2022-03-15 17:44:15 +01:00
Leon Styhre
2fe11bd827
A few fixes for the Emscripten WebAssembly build.
2022-03-15 17:17:56 +01:00
Leon Styhre
29501af68f
Changed some variables names and debug logging info for the OpenGL renderer.
...
Also simplified a pixel conversion in the core.glsl shader.
2022-03-15 17:14:55 +01:00
Leon Styhre
f859fd828d
Cleaned up the GLSL shader files and related code.
2022-03-15 00:14:06 +01:00
Leon Styhre
06a037d8cf
Shader flags are now sent as bit masks instead of via discreet values.
...
Also changed the shader flags to enums.
2022-03-14 22:30:24 +01:00
Leon Styhre
6b095bde05
(Windows) Fixed some compiler errors.
2022-03-14 20:29:25 +01:00
Leon Styhre
6ff0ff1c47
Renamed Renderer_GL21 and Shader_GL21 to RendererOpenGL and ShaderOpenGL.
2022-03-14 20:14:18 +01:00
Leon Styhre
f0c35d8509
Refactored the rendering code into proper classes.
2022-03-14 19:51:48 +01:00
Leon Styhre
a7db474a64
Unified the OpenGL and OpenGL ES renderers and removed the fixed function pipeline.
...
Also made some other rendering optimizations and cleaned up some code.
2022-03-13 23:52:32 +01:00
Leon Styhre
adb162e0d1
Another go at getting post-processing to work properly with all graphics drivers.
2022-03-12 17:57:59 +01:00
Leon Styhre
32251e0264
Fixed multiple issues with the shader post-processing.
...
Also removed an unnecessary parameter for the createTexture() function.
2022-03-12 14:22:27 +01:00
Leon Styhre
bebc9d58cf
Added debug overlay support to GIFAnimComponent.
2022-03-12 10:19:47 +01:00
Leon Styhre
8497967510
Disabled rlottie caching in debug mode so animations can be replaced on the fly.
2022-03-12 10:11:04 +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
755b2c9f50
Changed some render variables to more verbose names.
...
Also fixed an issue with fade transitions for legacy themes.
2022-03-11 23:51:41 +01:00
Leon Styhre
63af859618
Modernized the OpenGL renderer and replaced most fixed function pipeline code with shaders.
...
Also greatly improved the shader post processing performance and added component dimming support.
2022-03-11 23:17:04 +01:00
Leon Styhre
9867c3d595
Fixed an issue where gamelist scroll fade-in animations would continue to play after opening and closing a menu.
2022-03-06 23:31:32 +01:00
Leon Styhre
9e2c24ef79
Fixed an issue where videos would still play if the video theme configuration was broken.
2022-03-06 22:52:13 +01:00
Leon Styhre
2df8a867ad
Fixed some compiler errors when building with FFmpeg 5.0
2022-03-06 14:38:19 +01:00
Leon Styhre
cc05f778e4
(Windows) Made GIFAnimComponent work with filenames containing Unicode characters.
2022-03-06 12:53:20 +01:00
Leon Styhre
f9b2dfe037
(Windows) Made LottieAnimComponent work with filenames containing Unicode characters.
2022-03-06 11:36:19 +01:00
Leon Styhre
60213003b1
(Windows) Fixed some incomprehensible compiler errors.
2022-03-05 22:12:50 +01:00
Leon Styhre
73643eb8d9
(Windows) Fixed a compiler error.
2022-03-05 21:36:40 +01:00
Leon Styhre
978790956e
Removed Lottie animation support for legacy themes.
2022-03-05 21:16:33 +01:00
Leon Styhre
ed540359c5
Updated GIFAnimComponent to a fully working state.
2022-03-05 20:56:47 +01:00
Leon Styhre
f953e0d409
Fixed a Lottie animation issue where extra frames would play when alternating.
...
Also did some general code cleanup.
2022-03-05 20:40:13 +01:00
Leon Styhre
fec860f5d3
Merge branch 'master' into new-theme-engine-phase-four
2022-02-27 16:44:59 +01:00
Leon Styhre
c96ab29e95
Fixed a few GCC compiler warnings.
2022-02-27 15:23:33 +01:00
Leon Styhre
abb48e45e7
Added GIFAnimComponent skeleton.
2022-02-23 22:04:18 +01:00
Leon Styhre
32349dc9a6
Renamed LottieComponent to LottieAnimComponent.
2022-02-23 21:54:57 +01:00
Leon Styhre
d8b99b1dff
Escaped some characters needed to get emulator wildcards to work with certain directories.
2022-02-21 19:05:29 +01:00
Leon Styhre
1bca70820c
Removed an unused function declaration in AudioManager.
2022-02-21 19:04:07 +01:00
Leon Styhre
da802aec61
Added emulator filename wildcard support for es_systems.xml and es_find_rules.xml
2022-02-21 17:23:23 +01:00
Leon Styhre
fabc18a680
Updated the StringUtil::replace function to avoid potential endless loops.
2022-02-21 17:14:51 +01:00
Leon Styhre
c7a4449e36
Fixed a use-after-free in GameSelectorComponent.
2022-02-20 19:31:19 +01:00
Leon Styhre
5f4a26c38c
Set fan art scraping as enabled by default.
2022-02-20 17:49:57 +01:00
Leon Styhre
a97e86a6aa
Renamed the menu option to enable or disable audio playback for gamelist videos.
2022-02-20 16:07:27 +01:00
Leon Styhre
e92af0548c
Added DateTimeComponent support to SystemView.
2022-02-20 15:49:32 +01:00
Leon Styhre
73e0e59b8c
Fixed an issue where hidden videos would still play.
2022-02-20 15:04:05 +01:00
Leon Styhre
3795edb1b9
Removed the broken rotation support for video elements.
2022-02-20 15:03:31 +01:00
Leon Styhre
c06dea5d2d
Lottie animations are now paused during view transitions.
2022-02-19 22:44:02 +01:00
Leon Styhre
f803e23fd2
Added theme support for disabling audio playback for each defined video.
2022-02-19 21:45:31 +01:00
Leon Styhre
29514d4db9
Added video support to SystemView.
2022-02-19 21:22:46 +01:00
Leon Styhre
77beb39801
Fixed an issue where videos would not get centered if pillarboxes were enabled.
2022-02-19 20:31:54 +01:00
Leon Styhre
4b0d3a4ecb
Clamped the themeable origin values to 0.0 to 1.0
2022-02-19 20:24:25 +01:00
Leon Styhre
374a66dd76
Removed the 'Play videos immediately' setting.
2022-02-19 17:16:38 +01:00
Leon Styhre
c4eb1b8b97
Greatly simplified the video controls code.
...
Also fixed a cosmetic issue with carousel fade transitions.
2022-02-19 17:04:23 +01:00
Leon Styhre
ee1a0f7cd3
Added support for using the tilde symbol for ROM path tags in es_systems.xml
2022-02-16 19:32:02 +01:00
Leon Styhre
0266a6e7e6
Fixed a video fade-in issue when using the GLES renderer.
2022-02-15 22:34:26 +01:00
Leon Styhre
5ac6bcb902
Added opacity support to the scanline shader.
2022-02-15 22:13:11 +01:00
Leon Styhre
a9d1f6e307
Added support for setting the video fade-in time via the theme configuration.
2022-02-15 21:26:40 +01:00
Leon Styhre
4f019c3775
Added support for defining multiple imageType entries.
...
Also made some improvements to GameSelectorComponent and related logic.
2022-02-14 19:32:07 +01:00
Leon Styhre
eb3729a5fb
Fixed a few crashes related to GameSelectorComponent.
2022-02-13 23:15:43 +01:00
Leon Styhre
cc8123f5a6
Added a GameSelectorComponent for displaying game media in SystemView.
2022-02-13 20:03:34 +01:00
Leon Styhre
31c5b200d1
Added support for using unsigned integers for theme properties.
2022-02-13 15:01:55 +01:00
Leon Styhre
027265da67
Added themeable opacity support for the help system.
2022-02-13 12:18:33 +01:00
Leon Styhre
1bca9e185e
Changed to the more specific imageType and systemdata theme properties.
...
Also made it possible to set the image interpolation method from the theme, and added clamping to the lineSpacing property.
2022-02-13 11:45:06 +01:00
Leon Styhre
9f04d7aad8
Fixed an issue where marquee images would not show for legacy themes.
2022-02-13 11:23:41 +01:00
Leon Styhre
e0540ee03b
Video pillarboxes and scanline rendering can now be controlled from the theme configuration.
2022-02-12 17:46:31 +01:00
Leon Styhre
6572fa8f23
The displayRelative property can now be overridden for the md_lastplayed metadata type.
2022-02-12 17:43:20 +01:00
Leon Styhre
69c1a1259d
Added opacity support to the BGRA to RGBA shader.
2022-02-12 17:40:25 +01:00
Leon Styhre
f585f87497
Added support for setting component opacity from the theme configuration.
2022-02-12 17:38:55 +01:00
Leon Styhre
c24cf1e57a
Fixed an issue where RatingComponent outlines would not fade correctly.
2022-02-12 13:36:40 +01:00
Leon Styhre
35970dd95d
(Windows) Fixed a few MSVC compiler warnings.
2022-02-11 23:45:25 +01:00
Leon Styhre
a42d63e567
Code cleanup by moving a lot of casts to the appropriate getter functions.
2022-02-11 23:38:23 +01:00
Leon Styhre
ead1d5af9c
Fixed a small alignment issue in ComponentList.
2022-02-11 23:33:29 +01:00
Leon Styhre
2c2e624160
Changed the opacity data type and functions from unsigned char to float.
2022-02-11 22:10:25 +01:00
Leon Styhre
8fd05bb2a2
Fixed a flickering text issue in GuiDetectDevice.
2022-02-11 21:36:22 +01:00
Leon Styhre
89efdef39c
Fixed an issue where horizontal and vertical color gradients were mixed up.
...
Also added logging in case an invalid gradient type is used in a theme.
2022-02-11 18:44:24 +01:00
Leon Styhre
9a24423c82
Fixed an issue where transition animations could stop working after switching theme sets.
2022-02-11 18:40:39 +01:00
Leon Styhre
85cb10d71a
Changed some string::compare functions to == operators.
...
Also removed an unused theme property.
2022-02-11 18:39:16 +01:00
Leon Styhre
4eb763d816
Replaced the ambiguous alignment properties with specific horizontal and vertical properties.
2022-02-11 00:19:08 +01:00
Leon Styhre
e6d6f3252f
Improved the StringUtil::toCapitalized function.
2022-02-10 21:56:02 +01:00
Leon Styhre
28a3beb9ce
ScrollableContainer parameters are now themeable.
2022-02-10 20:02:56 +01:00
Leon Styhre
70eb937f85
Fixed a potential crash for legacy themes with broken configuration.
2022-02-09 23:12:12 +01:00
Leon Styhre
09bc9770f2
Changed the theme property forceUppercase to the more versatile letterCase property.
2022-02-09 22:06:34 +01:00
Leon Styhre
6db671de3d
Added support to TextComponent for lowercase and capitalized text conversions.
...
Also changed camelCase to capitalized and textStyle to letterCase in various places.
2022-02-09 20:44:22 +01:00
Leon Styhre
9856a3da1b
ThemeData now only prints debug messages for missing files set using variables.
2022-02-09 18:45:03 +01:00
Leon Styhre
b9e9178169
Fixed multiple issues in CarouselComponent.
2022-02-09 18:22:06 +01:00
Leon Styhre
027af497d5
Fixed an issue where VideoComponent static images were not fading out correctly in the gamelist view.
2022-02-09 18:16:15 +01:00
Leon Styhre
03f8e020c3
Fixed a reverse scrolling issue in CarouselComponent.
2022-02-09 00:05:06 +01:00
Leon Styhre
69b9b587d6
Added support for text entries to CarouselComponent.
...
Also fixed some issues with the carousel wheels and removed an unused function in ThemeData.
2022-02-07 21:05:56 +01:00
Leon Styhre
b5d49e9b43
Migrated the carousel code from SystemView to CarouselComponent.
2022-02-06 14:01:40 +01:00
Leon Styhre
afe249c5fc
Added CarouselComponent skeleton.
2022-02-04 21:42:08 +01:00
Leon Styhre
bc8c23d642
Enabled the video player audio by default.
2022-02-01 20:54:36 +01:00
Leon Styhre
c530373ddc
Improved the integration of the variant and aspect ratio options in the UI Settings menu.
...
Also reorganized the order of some settings.
2022-02-01 18:06:32 +01:00
Leon Styhre
36fe3c871c
Fixed an issue where corrupt textures could get rendered.
2022-02-01 17:51:00 +01:00
Leon Styhre
061974eddf
Added UI labels to the theme aspect ratios.
2022-01-31 23:22:42 +01:00
Leon Styhre
2bf5e6f3f1
Fixed two text color issues when resetting ScrollableContainer.
2022-01-31 22:53:21 +01:00
Leon Styhre
0e9e47e090
Fixed an issue where text transparencies would not work.
2022-01-31 22:37:10 +01:00
Leon Styhre
285d2a7bcc
Removed an unnecessary color opacity variable from GuiComponent.
2022-01-31 22:36:08 +01:00
Leon Styhre
d140804dad
Adjusted a few log warning messages in ThemeData.
2022-01-30 21:35:39 +01:00
Leon Styhre
1dd5e52760
Updated ThemeData to more strictly enforce the new theme engine format.
2022-01-30 21:13:49 +01:00
Leon Styhre
e96aa82dd3
Fixed an issue where some images would not get rendered.
2022-01-30 20:48:31 +01:00
Leon Styhre
f2c708bf79
Fixed two incorrect intializations in TextComponent.
2022-01-30 19:36:58 +01:00
Leon Styhre
bf222d7eb0
Fixed some missing initializations in TextComponent.
2022-01-30 19:31:53 +01:00
Leon Styhre
3bf46c3fb0
Added support for two new 'scrollFadeIn' and 'defaultImage' properties.
...
Also fixed some issues with theming ScrollableContainer.
2022-01-30 19:30:38 +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
0ca2b62edf
Some minor code cleanup.
2022-01-29 18:16:30 +01:00
Leon Styhre
336ff3ea7c
Added an extra assert macro to GuiComponent.
2022-01-29 18:12:30 +01:00
Leon Styhre
4b1138ebc7
Fixed an issue where ScrollableContainer could round its size to zero.
...
Also added a sizing check to prevent application hangs on zero-sized containers.
2022-01-29 11:06:58 +01:00
Leon Styhre
24f65a2560
Prevented ImageComponent from attempting to render an empty texture.
2022-01-25 18:18:16 +01:00
Leon Styhre
dc20a9e21b
Cleaned up ThemeData a bit.
2022-01-23 20:03:50 +01:00
Leon Styhre
644f79ebec
Improved the theme loading error logging.
...
Also cleaned up the code a bit.
2022-01-23 17:50:51 +01:00
Leon Styhre
a147c87cea
Added a new getRatingValue function to RatingComponent.
2022-01-22 21:25:35 +01:00
Leon Styhre
487422454e
Added support for the 'metadata' element to TextComponent and DateTimeComponent.
2022-01-22 21:24:19 +01:00
Leon Styhre
6229592c74
Added two new 'metadata' and 'scrollHide' elements to ThemeData.
2022-01-22 21:21:13 +01:00
Leon Styhre
d04a49957c
Added a metadata field to GuiComponent.
...
Also did some general code cleanup of GuiComponent.
2022-01-22 21:17:28 +01:00
Leon Styhre
2aabe2eef3
Reduced CPU usage significantly when a menu is open.
2022-01-19 19:31:27 +01:00
Leon Styhre
a443f86235
Removed a huge amount of unnecessary Window* function arguments.
2022-01-19 18:01:54 +01:00
Leon Styhre
dfeddebc66
Removed a lot of unnecessary combinations of the virtual and override keywords.
2022-01-18 17:40:47 +01:00
Leon Styhre
1a2920c5fc
Some minor code cleanup in TextListComponent.h
2022-01-17 21:35:59 +01:00
Leon Styhre
2ebfb45bdf
Some minor code cleanup.
2022-01-17 20:47:30 +01:00
Leon Styhre
0c8efee8ad
General refactoring and code cleanup.
2022-01-16 18:18:28 +01:00
Leon Styhre
8a6652552f
Set the clang-format option SpaceBeforeCpp11BracedList to true.
2022-01-16 12:09:55 +01:00
Leon Styhre
5f2f439fc3
Moved the fan art scrape menu option to the bottom and set it as disabled by default.
2022-01-16 10:43:12 +01:00
Leon Styhre
89cf82b88e
When multi-scraping and scrolling a long name, the start position would sometimes not reset correctly.
2022-01-15 19:28:41 +01:00
Leon Styhre
c7964b7ebc
Renamed GameList to Gamelist throughout the codebase.
2022-01-15 13:38:09 +01:00
Leon Styhre
92f5284bf3
Added support for scraping fan art images.
...
Also added scraping of box back covers when using TheGamesDB.
2022-01-15 13:16:23 +01:00
Leon Styhre
dde456cbc8
Removed the unnecessary Renderer::getWindowFlags() function.
2022-01-14 18:23:51 +01:00
Leon Styhre
73beeeaeaf
Fixed two Emscripten compiler warnings.
2022-01-13 20:07:04 +01:00
Leon Styhre
8596aca68c
Added an OpenGL ES 2.0 renderer.
2022-01-13 19:39:49 +01:00
Leon Styhre
90fa63f91c
Removed support for supplying a separate format than internalFormat when creating OpenGL textures.
2022-01-12 22:25:41 +01:00
Leon Styhre
d85c966e49
Added logging of the display refresh rate on startup.
2022-01-12 21:26:43 +01:00
Leon Styhre
a233b96c2a
Removed some unnecessary typedefs and replaced the remaining ones with the more modern 'using' keyword.
...
Also harmonized the names of some user defined types and made some other minor cleanup.
2022-01-11 21:57:00 +01:00
Leon Styhre
d45a67eeab
(Windows) Fixed a few compiler errors and warnings.
2022-01-10 19:53:23 +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
5a085c585e
Fixed a frame caching issue in LottieComponent.
2022-01-10 17:42:01 +01:00
Leon Styhre
c3dbdd431c
Fixed some potential segfaults on emergency shutdown.
2022-01-10 17:41:08 +01:00
Leon Styhre
f80658696c
Removed some unnecessary time measurement constants.
2022-01-09 23:50:08 +01:00
Leon Styhre
aeb0292a3e
Changed a variable to inline static in BadgeComponent.
2022-01-09 23:41:56 +01:00
Leon Styhre
5c07e29101
Fixed an issue where the cached background would sometimes miss some GUI elements.
2022-01-09 19:50:11 +01:00
Leon Styhre
f66bb91496
Decreased the background caching invalidation delay from 50 to 25 ms.
2022-01-09 19:48:29 +01:00
Leon Styhre
6ff91e89ca
Disabled debug mode in LottieComponent and fixed a small bug.
2022-01-09 19:26:42 +01:00
Leon Styhre
cd7cfe36ce
Added play direction support to LottieComponent.
...
Also fixed some bugs and cleaned up the code a bit.
2022-01-09 18:17:23 +01:00
Leon Styhre
e730d24da0
Added a small delay to the cached background invalidation to give components some time to render.
2022-01-09 17:56:17 +01:00
Leon Styhre
a1abaa7112
Increased the default per-file maximum Lottie cache size from 100 to 150 MiB.
2022-01-09 13:45:44 +01:00
Leon Styhre
b16ea29088
Added theme support and proper application integration for LottieComponent.
2022-01-09 13:43:42 +01:00
Leon Styhre
d45c690586
Some CMake configuration changes for building with rlottie.
2022-01-08 16:23:23 +01:00
Leon Styhre
b3421823a7
Added rudimentary frame caching support to LottieComponent.
2022-01-08 15:04:10 +01:00
Leon Styhre
3f629b6c1e
Created proper program structure for LottieComponent.
2022-01-08 11:25:29 +01:00
Leon Styhre
3ee4e4cb35
Added threading support and proper frame pacing to LottieComponent.
2022-01-07 19:09:07 +01:00
Leon Styhre
0c552dd8fb
Added a GLSL shader to convert the color model BGRA to RGBA.
...
Also added support for specifying a separate format as compared to internalFormat when creating textures, although the shader should be used primarily as this is not really supported by the OpenGL standard.
2022-01-07 18:54:52 +01:00
Leon Styhre
0021bee104
(Windows) Fixed two compiler warnings.
2022-01-07 00:30:31 +01:00
Leon Styhre
19147eee66
(Windows) CMake configuration changes to make rlottie build correctly.
2022-01-07 00:29:31 +01:00
Leon Styhre
998830181f
Added CMake configuration for the Lottie animation support.
2022-01-06 23:19:37 +01:00
Leon Styhre
f56d7cc67b
Added a preliminary Lottie animation component.
...
Also added two temporary test animations.
2022-01-06 23:15:29 +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
87ace0b8cb
Changed some shared_ptr return values to use values instead of references.
2022-01-04 22:36:15 +01:00
Leon Styhre
0cbcb7a516
Changed Settings::getInstance() from returning a smart_ptr to returning a regular pointer.
2022-01-04 21:54:55 +01:00
Leon Styhre
5d79c3d77e
Fixed a compile error when building with the bundled TLS/SSL certificates.
2022-01-04 21:38:46 +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
f36245886f
Set the 'Scrape actual folders' option as enabled by default.
...
Also moved it higher up in the scraper options menu.
2022-01-03 18:20:49 +01:00
Leon Styhre
6431804ee7
Removed the deprecated VideoVlcComponent.
2022-01-02 13:13:01 +01:00
Leon Styhre
fa993a0489
Fixed a texture corruption issue caused by too aggressive optimizations.
2021-12-27 21:24:34 +01:00
Leon Styhre
796951bf44
Fixed an issue in TextEditComponent when clearing really long strings.
2021-12-27 19:52:45 +01:00
Leon Styhre
c63e5e4529
Fixed an additional issue in the ROM selection dialog.
2021-12-27 19:26:42 +01:00
Leon Styhre
7f314d0108
Fixed a few cosmetic issues in the ROM selection dialog.
2021-12-27 19:00:22 +01:00
Leon Styhre
246e9ae8be
Fixed a cosmetic issue with the ROM directory setup dialog caused by an optimization.
2021-12-26 17:07:57 +01:00
Leon Styhre
2d8d1e6831
(macOS) Reduced the CPU usage significantly while running in the background.
2021-12-14 18:17:46 +01:00
Leon Styhre
08bba3cbaf
(macOS) Removed the Monterey VSync workaround as Apple has patched its OS.
2021-12-14 17:15:04 +01:00
Leon Styhre
ab92a4135a
Fixed an issue where using fallback fonts at very low resolutions could lead to a crash.
2021-12-14 17:12:39 +01:00
Leon Styhre
5fd2c86c7d
Fixed an issue where corrupt Unicode strings could crash the application.
2021-12-14 17:08:37 +01:00
Leon Styhre
55316365d8
Fixed an issue where buggy controller drivers could crash the application.
2021-12-10 16:51:41 +01:00
Leon Styhre
045e56ae3f
(Windows) Changed the fullscreen mode to SDL_WINDOW_BORDERLESS.
...
Also removed the 'AMD and Intel GPU game launch workaround' menu option.
2021-12-09 18:53:22 +01:00
Leon Styhre
0978c697a2
(macOS) Updated a code comment as the issue described was resolved with SDL 2.0.18
2021-12-08 21:19:24 +01:00
Leon Styhre
5019d8c065
Moved the ScreenScraper account toggle to the bottom of the scraper account screen.
2021-12-06 20:21:32 +01:00
Leon Styhre
4227a609a2
Made the window corners slightly more rounded.
2021-12-06 18:58:51 +01:00
Leon Styhre
7e8d1f6434
(Windows) Improved game launching with the AMD and Intel GPU workaround setting enabled.
2021-12-06 18:51:50 +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
6e24c8d77b
Increased the amount of custom event arguments from two to four.
2021-12-05 11:25:11 +01:00
Leon Styhre
f5ff480fc4
Fixed a GCC compiler warning.
2021-12-02 17:40:45 +01:00
Leon Styhre
0fdd169835
Fixed a compile error on BSD Unix.
2021-12-01 19:10:17 +01:00
Leon Styhre
3516ee7a26
(macOS) Set the Monterey VSync workaround setting as enabled by default.
2021-12-01 18:05:43 +01:00
Leon Styhre
a2253113f7
(macOS) Some fixes to make the legacy build work again.
2021-12-01 17:57:23 +01:00
Leon Styhre
8373d59e29
(macOS) All dependencies are now built in-tree.
2021-11-30 22:14:18 +01:00
Leon Styhre
a4f8fe78e1
Fixed a time zone issue related to the Unix epoch.
2021-11-26 20:55:54 +01:00
Leon Styhre
5482950689
Updated a code comment regarding the use of bundled TLS certificates.
2021-11-25 18:56:30 +01:00
Leon Styhre
360be460a2
Added a CMake option to use the bundled TLS certificates with cURL.
2021-11-25 17:34:34 +01:00
Leon Styhre
7ebf895613
Fixed a ScrollableContainer sizing issue while running in the background when games are launched.
2021-11-22 19:46:05 +01:00
Leon Styhre
2bbbab7d70
Small optimization in VideoFFmpegComponent.
2021-11-18 17:25:09 +01:00
Leon Styhre
0314b2d439
Fixed a performance regression caused by excessive mutex locks.
2021-11-18 17:20:59 +01:00
Leon Styhre
e91e23a053
Small code simplification in Settings.
2021-11-18 17:19:30 +01:00
Leon Styhre
bd1fa04e79
(RPi) Fixed a compiler error.
2021-11-17 21:38:27 +01:00
Leon Styhre
445b914379
Completely refactored MameNames.
2021-11-17 21:32:40 +01:00
Leon Styhre
af52d9b0ac
Changed most increment and decrement operators from postfix to prefix for es-core.
2021-11-17 17:48:49 +01:00
Leon Styhre
4c6bfb8b78
Fixed a few issues reported by UBSan.
2021-11-16 22:03:34 +01:00
Leon Styhre
9937476e18
Replaced some mutex locks with atomic variables.
...
Also removed an SDL audio issue workaround from AudioManager.
2021-11-16 17:49:05 +01:00
Leon Styhre
a5e10a6434
(Windows) Fixed a compiler error.
2021-11-15 23:45:17 +01:00
Leon Styhre
999b9a6c04
Improved thread safety in TextureData and TextureDataManager.
2021-11-15 23:33:16 +01:00
Leon Styhre
7b06e9fb8b
Fixed some thread safety issues in Sound.
2021-11-15 23:27:02 +01:00
Leon Styhre
81d6f0fd30
Improved thread safety for Settings.
...
Also moved some data from the global namespace to an anonymous namespace.
2021-11-15 22:53:21 +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
b742951dc0
Removed some unnecessary includes of AudioManager.h
2021-11-15 20:52:36 +01:00
Leon Styhre
57d172bb14
Some code cleanup in the logger.
2021-11-15 20:47:00 +01:00
Leon Styhre
f8c10c539d
Added two asserts to ComponentGrid to check for invalid grid layouts.
2021-11-13 15:33:42 +01:00
Leon Styhre
4cf291798a
Fixed a grid layout issue for the virtual keyboard.
2021-11-13 15:31:44 +01:00
Leon Styhre
36b7146d7f
Made the video player shut down slightly faster under some circumstances.
2021-11-12 23:48:12 +01:00
Leon Styhre
1005dfcdb7
(macOS) Added a Monterey VSync bug workaround.
2021-11-12 19:49:24 +01:00
Leon Styhre
043db7e05e
(RPi) Fixed a crash by null terminating the Unicode lookup tables.
2021-11-11 22:41:13 +01:00
Leon Styhre
3e59a451c9
Improved the padding consistency for OptionListComponent arrows across different screen resolutions.
2021-11-11 19:54:10 +01:00
Leon Styhre
b68640939a
Improved consistency of sizing and padding for buttons across different screen resolutions.
2021-11-11 19:51:42 +01:00
Leon Styhre
22200c3025
Fixed an issue where TextListComponent would not correctly handle the forceUppercase theme property.
2021-11-11 19:49:46 +01:00
Leon Styhre
6a7f002a94
Improved the sizing of screen corners in NinePatchComponent.
2021-11-11 19:47:59 +01:00
Leon Styhre
c4fb3eafbe
Fixed a small alignment issue in SliderComponent.
2021-11-11 19:45:44 +01:00
Leon Styhre
99d0f17e6b
Fixed a small alignment issue in ComponentList.
2021-11-11 19:43:58 +01:00
Leon Styhre
fd980d7e4a
The alternative emulator badges and filters are now disabled if the per-game setting has been disabled.
2021-11-10 22:38:25 +01:00
Leon Styhre
39926abc41
Some very small optimizations in CImgUtil.
2021-11-09 22:57:15 +01:00
Leon Styhre
3e12fcb420
General refactoring and minor optimizations throughout the codebase.
2021-11-09 22:40:08 +01:00
Leon Styhre
d3b135e387
Set the FFmpeg video player HW decoding as disabled by default.
2021-11-08 17:58:36 +01:00
Leon Styhre
ac4710a18e
Added proper support for the Raspberry Pi 4.
2021-11-07 23:54:52 +01:00
Leon Styhre
c642848081
Reverted the last commit as the issue does not seem to be in the code.
2021-11-07 22:49:23 +01:00
Leon Styhre
433c77261f
Fixed a small issue with the sizing of the badges.
2021-11-07 22:22:34 +01:00
Leon Styhre
c136f87a9f
Small optimization when opening the menu.
2021-11-07 19:21:01 +01:00
Leon Styhre
14e1b800fa
Made two optimizations in TextureData.
2021-11-07 18:18:41 +01:00
Leon Styhre
c5a1555de3
Added proper frame drop support to the FFmpeg video player.
...
Also made multiple large optimizations.
2021-11-07 18:14:38 +01:00
Leon Styhre
b4492abccd
Removed the copying of es_settings.cfg to es_settings.xml on startup.
2021-11-06 21:43:32 +01:00
Leon Styhre
cdf0227ad4
Fixed a small alignment issue in the scraper GUI and removed an ugly hack.
2021-11-05 20:31:24 +01:00
Leon Styhre
8b5386df79
Fixed an issue where corrupt SVG graphics could crash the application.
2021-11-03 17:26:19 +01:00
Leon Styhre
f7643e96a4
Added support for two more controller icons.
2021-11-02 19:01:00 +01:00
Leon Styhre
7606e9cad6
Added the physical media images to the miximages.
...
Also added an option to rotate horizontally oriented game boxes and size options for the box and physical media files.
2021-10-30 19:01:58 +02:00
Leon Styhre
2f09c21d3f
Reversed a previous change that caused multiple texturing issues.
2021-10-30 17:05:04 +02:00
Leon Styhre
190b3ba054
Fixed an issue where rasterized window corners would look excessively pixelated.
2021-10-30 13:07:07 +02:00
Leon Styhre
ee80792e0f
(Windows) Fixed two MSVC compiler warnings.
2021-10-29 20:10:43 +02:00
Leon Styhre
1c79723894
Improved the NinePatchComponent corner sizing for screens in portrait orientation.
2021-10-29 20:10:15 +02:00
Leon Styhre
28f0f8549c
Fixed an issue where the OptionList arrows would not get correctly centered vertically.
2021-10-29 19:45:46 +02:00
Leon Styhre
59839546a5
Fixed an issue where ComponentList elements would not get correctly centered vertically.
2021-10-29 19:44:27 +02:00
Leon Styhre
0dc6f1e17a
Removed the deprecated SVG scaleDuringLoad functionality.
2021-10-29 19:43:07 +02:00
Leon Styhre
a6f72ff934
Replaced a hack in NinePatchComponent with a proper solution.
2021-10-29 19:38:45 +02:00
Leon Styhre
d5fa6bc82c
Added support for scraping title screens, box back covers and physical media images.
2021-10-28 21:00:23 +02:00
Leon Styhre
5ca4b85549
Added scraping of controller metadata (arcade systems only).
2021-10-27 19:23:57 +02:00
Leon Styhre
c4a7380d40
Added a few more controller types and icons.
...
Also fixed an incorrect name for one controller and made some other name changes.
2021-10-27 19:10:48 +02:00
Sophia Hadash
ac84716273
Merge branch 'master' into 653-properly-apply-z-index-in-the-system-view
2021-10-26 21:56:45 +02:00
Leon Styhre
a979c6d0e5
Made the menu texture render correctly when running really low on texture memory.
2021-10-26 18:29:30 +02:00
Leon Styhre
fbb974de03
Removed an unnecessary force load setter from ImageComponent.
2021-10-26 18:28:21 +02:00
Leon Styhre
4e02ce230b
Disabled dynamic loading of images in BadgeComponent.
2021-10-26 18:27:30 +02:00
Leon Styhre
4f9737cd23
Fixed a compiler warning when building with the GLES renderer.
2021-10-26 18:26:00 +02:00
Leon Styhre
58345863b3
Changed an RGBA vector getter from copy to reference to reduce CPU usage.
2021-10-26 18:23:52 +02:00
Leon Styhre
3d3d951842
Renamed alwaysRasterize to forceRasterization.
...
Also removed an unnecessary function call in ImageComponent.
2021-10-26 18:22:41 +02:00
Leon Styhre
848e0a1a94
Fixed an SVG graphics corruption issue.
2021-10-26 18:13:31 +02:00
Leon Styhre
f32c3dc6f4
Reintroduced column mode for BadgeComponent.
...
Also fixed an issue with direction in FlexboxComponent when using column mode.
2021-10-25 19:13:54 +02:00
Leon Styhre
7ed0267f5b
Made a large optimization to the SVG rasterization logic.
2021-10-25 18:39:58 +02:00
Leon Styhre
270a2e3857
Added an option to preload gamelists on startup.
2021-10-25 17:56:17 +02:00
Leon Styhre
960f6e56be
Fixed an incorrect text debug overlay color in SliderComponent.
2021-10-24 14:53:53 +02:00
Leon Styhre
b83db7d33e
Added text debug overlay to SliderComponent.
...
Also changed a variable name to align with the standard naming conventions.
2021-10-24 14:48:42 +02:00
Leon Styhre
71b5c50b85
Made the SliderComponent width consistent across different screen aspect ratios.
2021-10-24 14:17:43 +02:00
Leon Styhre
5247a9f5fe
Fixed an issue where the wrong scroll indicator could be shown.
2021-10-24 12:10:38 +02:00
Leon Styhre
f2c787e769
Moved the resources/help directory to resources/graphics/help
2021-10-23 20:49:00 +02:00
Leon Styhre
1aa360598d
Renamed BadgesComponent to BadgeComponent.
2021-10-23 20:28:07 +02:00
Leon Styhre
b5a61a0617
Renamed 'controller types' to 'game controllers' (code) and simply 'controllers' (metadata editor).
2021-10-23 20:14:17 +02:00
Leon Styhre
84514f67d0
Added support for controller types.
2021-10-23 19:08:32 +02:00
Leon Styhre
edc11e6255
Added a setter to ImageComponent for mForceLoad.
2021-10-23 17:36:13 +02:00
Leon Styhre
89aefab54c
Small simplification in ImageComponent.
2021-10-23 17:35:23 +02:00
shadash
3070a66e2c
introduce 'legacyZIndexMode' tag in carousel
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-23 17:34:20 +02:00
Leon Styhre
dd94aeec96
Fixed two casting issues.
2021-10-23 15:53:31 +02:00
Leon Styhre
6cee6d2732
Fixed multiple image scaling and rasterization issues.
2021-10-23 15:45:44 +02:00
Leon Styhre
bd62f2af14
Fixed an issue where the bar and knob in SliderComponent were not correctly aligned vertically.
2021-10-23 15:36:16 +02:00
Leon Styhre
022f8c7e8b
Fixed an issue where resizing in SwitchComponent would not reposition the image.
2021-10-23 15:30:35 +02:00
Leon Styhre
114c91679e
Increased the start delay slightly for the scraper GUI game name scrolling.
2021-10-18 19:58:04 +02:00
Leon Styhre
484606fb6f
Added horizontal scrolling of long game names to the scraper GUI.
2021-10-18 19:24:47 +02:00
Leon Styhre
ccc3cae46b
Fixed some small rounding issues in TextListComponent.h
2021-10-18 19:15:50 +02:00
Leon Styhre
c3c9e8408c
Adjusted the colors for the alt and shift keys on the virtual keyboard.
2021-10-18 18:13:21 +02:00
Leon Styhre
94c825e3a3
Changed the 'marquee' variable names to 'loop' in TextListComponent.h
2021-10-18 18:07:20 +02:00
Leon Styhre
1166539466
Fixed a general ImageComponent scaling issue caused by incorrect rounding.
2021-10-17 21:51:21 +02:00
Leon Styhre
975ff0eb69
Fixed a potential rounding issue.
2021-10-17 21:20:17 +02:00
Leon Styhre
62d327b071
Merge branch '655-fix-the-left-and-right-alignment-in-badgescomponent'
2021-10-17 18:45:52 +02:00
Leon Styhre
af1d1b3109
Fixed some rounding issues and the right-alignment in FlexboxComponent.
2021-10-17 18:45:21 +02:00
Leon Styhre
11ca17fc91
Fixed an issue where the wrong scroll indicators could be displayed.
2021-10-17 16:14:28 +02:00
shadash
8fd05fcd77
bugfix, simplification
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-17 01:11:01 +02:00
Leon Styhre
690083a123
The scroll indicators don't fade in and out any longer if quick jumping in a list.
2021-10-16 13:21:52 +02:00
Leon Styhre
aa8b68f2a9
Set the menu scroll indicators as enabled by default.
2021-10-15 22:35:57 +02:00
Sophia Hadash
1c93ca2c07
fix right align
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-15 21:33:34 +02:00
shadash
c68f78f3d1
fix right align
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-15 21:28:12 +02:00
Leon Styhre
3683866062
Improved the layout of the scraper GUIs.
...
Also added the scroll indicators and replaced a text margin hack with a proper solution.
2021-10-15 20:58:40 +02:00
Leon Styhre
050dccb6b8
Fixed an issue with international characters getting clipped in ScrollableContainer.
2021-10-15 20:31:51 +02:00
Leon Styhre
7311a49f82
Removed an unnecessary column from MenuComponent and adjusted the scroll indicators.
2021-10-14 22:38:30 +02:00
Leon Styhre
10e284c929
Text in ScrollableContainer now mostly stays within the initial area.
2021-10-14 21:59:09 +02:00
Leon Styhre
a1ed59553f
Made it possible to set a 'a/select' help prompt for TextComponent.
2021-10-14 21:29:23 +02:00
Leon Styhre
eb611d12db
Fixed some issues in FlexboxComponent.
...
Also added some sanity checks and size restrictions to BadgeComponent and FlexboxComponent.
2021-10-13 18:18:23 +02:00
Leon Styhre
b9b4bd120d
Fixed multiple issues where ComponentGrid would display incorrect help prompts.
2021-10-12 23:32:26 +02:00
Leon Styhre
48db23691d
Merged BadgeComponent code into master branch.
2021-10-12 23:13:38 +02:00
Leon Styhre
ae96cb4c54
Further improvements to the badges code.
2021-10-12 22:53:02 +02:00
Leon Styhre
848277141a
Optimized the badges code.
...
Also made a small adjustment to the alternative emulator badge.
2021-10-11 21:28:37 +02:00
Leon Styhre
76ef1629c0
Added a simple static scroll indicator and set this as the default.
...
Also made some minor adjustments to the scroll indicator placement.
2021-10-10 20:07:44 +02:00
Leon Styhre
33d3df9db4
(Windows) Fixed some MSVC compiler warnings.
2021-10-10 18:28:00 +02:00
Leon Styhre
261ad3735a
Very minor code consistency fix.
2021-10-10 18:21:42 +02:00
Leon Styhre
bef997420d
Added menu scroll indicators.
2021-10-10 18:15:37 +02:00
shadash
a93b975ca0
bug fixes, adjust theme badge proportions
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-10 13:29:26 +02:00
shadash
123e50cf17
change dimension constraints to use container size.
...
make margins proportional to screen size.
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-09 17:04:04 +02:00
Leon Styhre
8c9b664bb1
If the currently configured theme set is missing, attempt to load rbsimple-DE as fallback.
...
Also added a warning log entry when the selected theme set is missing.
2021-10-09 13:12:06 +02:00
Leon Styhre
20760c1b43
Added support to OptionListComponent to abbreviate non-multiselect entries.
2021-10-09 13:06:04 +02:00
Leon Styhre
33792baa53
Replaced an alignment hack with a proper fix in OptionListComponent.
...
Also fixed an issue where the number of selected OptionListComponent entries would not get displayed.
2021-10-08 22:50:37 +02:00
Leon Styhre
9c20498339
The OptionListComponent key repeat parameters are now configurable.
2021-10-08 21:11:38 +02:00
Leon Styhre
ce593686a5
Added key repeat support to DateTimeEditComponent.
...
Also made some other improvements and cleaned up the code.
2021-10-08 19:38:14 +02:00
Leon Styhre
a4d2b87ede
Added support for key repeat to OptionListComponent.
2021-10-08 19:13:37 +02:00
Leon Styhre
be6782d340
Info popups are now hidden from both the screensaver and media viewer.
2021-10-07 19:03:43 +02:00
Leon Styhre
087cde4700
Fixed a cursor placement issue in GuiTextEditKeyboardPopup.
2021-10-07 18:33:57 +02:00
Leon Styhre
3669d2320c
Added info popups when adding and removing input devices.
2021-10-07 18:33:13 +02:00
Leon Styhre
93950cf4de
Simplified the code for info popups.
2021-10-07 18:31:40 +02:00
Leon Styhre
019c764d93
Fixed a compiler warning on BSD Unix.
2021-10-06 18:47:30 +02:00
Leon Styhre
08888e00af
Clarified the use of bundled include files.
2021-10-06 18:41:21 +02:00
Leon Styhre
42cd0c1ad7
Disabled text scrolling when running media player or screensaver or when running in the background.
2021-10-06 17:24:25 +02:00
Leon Styhre
766e04c0b8
Fixed an issue where the last TextListComponent row would sometimes be partially rendered.
...
Also fixed another related linespacing issue in TextListComponent.
2021-10-06 17:14:25 +02:00
Leon Styhre
0e90db382c
Changed the CEC device name to 'ES-DE'.
2021-10-06 17:08:57 +02:00
Leon Styhre
3ff5f90f36
Fixed a sizing issue in FlexboxComponent.
2021-10-05 17:59:44 +02:00
shadash
95b729dadf
replace badges svgs
...
minimize svgs
fix bug in flexbox component
adjust theme for new badges style
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-02 22:31:37 +02:00
shadash
20d14ca71f
remove redundant virtual keyword
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-02 22:00:54 +02:00
shadash
dbc9ffb99e
remove unused imports
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-02 22:00:05 +02:00
shadash
519644f66c
make direction and align an enum.
...
more in line defaults in constructor.
getter/setter in header
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-02 21:58:04 +02:00
shadash
9d23d124d4
change casts to c++ style
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-02 21:34:38 +02:00
Sophia Hadash
f37d915653
remove old code
2021-10-02 21:30:10 +02:00
shadash
33f0b01c55
move to avoid unnecessary copies.
2021-10-02 21:29:27 +02:00
Leon Styhre
590f080897
(Windows) Fixed an MSVC compiler warning.
2021-09-30 20:18:15 +02:00
Leon Styhre
6ee33634fb
Improved the scrolling consistency in ScrollableContainer.
...
Also fixed an issue where a fractional last text line would sometimes get rendered.
2021-09-30 20:11:56 +02:00
Leon Styhre
c78386e648
Fixed an issue where defining a really small font size would crash the application.
2021-09-30 19:49:18 +02:00
Leon Styhre
5366af6999
Fixed a sizing issue in OptionListComponent.
2021-09-28 23:02:27 +02:00
Leon Styhre
0077e334b7
Made multiple optimizations to the GUI components.
2021-09-28 21:46:45 +02:00
Leon Styhre
91f1a0a47d
Improved the speed of the badges code.
...
Also made some other adjustments to the badges and flexbox logic.
2021-09-27 22:18:19 +02:00
Leon Styhre
7321bf8f36
Reverted the SVG caching logic.
2021-09-27 21:41:22 +02:00
Leon Styhre
50f2af0077
Manual merges to align with master branch.
2021-09-27 21:27:07 +02:00
Leon Styhre
e8956512dc
Merged the master branch.
2021-09-27 21:19:11 +02:00
Leon Styhre
c51ad4a432
Removed some noexcept operators.
2021-09-27 21:16:05 +02:00
Leon Styhre
f6dd49071e
Fixed lots of code formatting issues.
2021-09-27 21:06:07 +02:00
Leon Styhre
87d6207c51
Removed lots of unnecessary help component texture resizing.
2021-09-27 21:03:53 +02:00
Leon Styhre
081fbc5665
Made an optimization for SVG graphics to avoid a lot of unnecessary re-rasterizations.
2021-09-27 20:59:33 +02:00
Sophia Hadash
a928142d5b
make slots configurable by theme (fix)
2021-09-27 01:50:45 +02:00
Sophia Hadash
593b6d94ee
remove obtrusive static image component and add svg caching
2021-09-27 00:41:53 +02:00
Sophia Hadash
39f67cfcdf
finally properly implemented destructor
2021-09-26 23:58:23 +02:00
Sophia Hadash
2b8c95d2ef
fix segfault in badge destructor
2021-09-26 23:04:09 +02:00
Sophia Hadash
e2c1d2d0ef
fix segfault in badge destructor
...
fix margins
2021-09-26 22:59:14 +02:00
Sophia Hadash
a4d4493d3e
fix segfault on application exit
2021-09-26 22:45:10 +02:00
Sophia Hadash
0587b220cc
add alternative emulator badge
2021-09-26 22:26:47 +02:00
Sophia Hadash
87735cd915
fix the startup slowdown
2021-09-26 20:02:03 +02:00
Sophia Hadash
edc761c4f9
fix the startup slowdown
2021-09-26 19:45:05 +02:00
Sophia Hadash
97067ae40b
remove flexbox padding when item margins are set
2021-09-26 02:17:07 +02:00
Leon Styhre
3d6628f084
Massive ~2500% speed improvement for OptionListComponent.
2021-09-25 19:22:59 +02:00
Leon Styhre
3233288a8c
Improved the string trim function and replaced some inlined occurrences.
2021-09-25 18:01:41 +02:00
Leon Styhre
3649684501
Added support for multi-select total count and exclusive multi-select to OptionListComponent.
2021-09-25 10:47:59 +02:00
Sophia Hadash
7820a94442
Implement origin.
2021-09-24 00:26:41 +02:00
Sophia Hadash
af50921d4b
merge master
2021-09-24 00:05:32 +02:00
Sophia Hadash
dbf76f92e6
merge master
2021-09-23 23:28:19 +02:00
Leon Styhre
be62e8fc5d
Proper fix for the last commit.
2021-09-23 17:54:27 +02:00
Leon Styhre
1d07879868
Fixed a compiler warning.
2021-09-23 17:49:59 +02:00
Leon Styhre
f1ceb1c2fe
Fixed a crash when attempting to navigate multi-cell ComponentGrid entries.
2021-09-22 23:42:57 +02:00
Leon Styhre
db5fb48cf8
OCD commit to fix some spelling inconsistencies.
2021-09-21 22:53:08 +02:00
Leon Styhre
fc08a83fa0
TextEditComponent will now return an empty string if only whitespace characters were entered.
2021-09-21 22:18:18 +02:00
Leon Styhre
d1ffdfca35
Removed an unused preprocessor directive.
2021-09-21 17:19:56 +02:00
Sophia Hadash
4959e72b35
fix when badges are shown (reverse)
2021-09-19 23:21:38 +02:00
Leon Styhre
372a92baa5
The navigation key repeat now stops when selecting a key on the virtual keyboard.
2021-09-19 23:08:12 +02:00
Leon Styhre
00e304f09a
Fixed an issue where navigation in menus would behave weirdly under some circumstances.
2021-09-19 23:07:04 +02:00
Leon Styhre
fad326c3bd
Miscellaneous code cleanup.
2021-09-19 19:46:59 +02:00
Leon Styhre
fc78f8ee18
General cleanup of the CMake configuration files.
2021-09-19 18:53:20 +02:00
Leon Styhre
dd8f5afdf4
(Windows) Fixed some compiler errors and a compiler warning.
2021-09-19 14:57:54 +02:00
Leon Styhre
63767347f2
Fixed numerous compiler warnings reported by the -Wall and -Wpedantic flags.
2021-09-19 14:37:10 +02:00
Leon Styhre
c7d815a125
Fixed multiple compiler warnings related to virtual functions.
2021-09-18 11:49:39 +02:00
Leon Styhre
0b6d987263
Fixed lots of compiler warnings reported by the -Wall and -Wpedantic flags.
2021-09-18 09:53:26 +02:00
Leon Styhre
9ae62cca4d
Fixed two Clang warnings.
2021-09-18 00:26:39 +02:00
Leon Styhre
f840e93fc9
Fixed an issue where closing an entry in the metadata editor could lead to a crash.
2021-09-17 22:53:00 +02:00
Leon Styhre
c4e6d3cac1
Added a virtual keyboard.
2021-09-17 22:23:41 +02:00
Leon Styhre
bbaf2739d4
Added a blinking cursor to TextEditComponent.
...
Also fixed a text field sizing bug and made a small padding adjustment.
2021-09-17 21:40:48 +02:00
Leon Styhre
08790ed1f3
Added support for correctly navigating arbitrarily sized ComponentGrid entries.
...
Also added a callback for handling navigation attempts beyond the grid boundary as well as a function to move to an absolute cursor position.
2021-09-17 21:35:37 +02:00
Leon Styhre
db4fb1ab92
Added support for a new type of 'flat style' buttons to ButtonComponent.
...
Also did some general code cleanup.
2021-09-17 21:25:21 +02:00
Leon Styhre
13abaf6734
Added support for including the left and right trigger buttons in the help prompts.
2021-09-17 21:14:43 +02:00
Leon Styhre
42458a7d76
Very minor code cleanup.
2021-09-17 21:10:16 +02:00
Sophia Hadash
f230b0de0e
replace png badges by svg
2021-09-14 02:44:47 +02:00
Sophia Hadash
aaf5d0209b
Implement flexbox and badges.
2021-09-14 01:01:46 +02:00
Sophia Hadash
efe928852f
Separate flexbox functionality in it's own component.
2021-09-07 17:21:54 +02:00
Sophia Hadash
fe413bb68f
Initial implementation, including flexbox layout for badges.
2021-09-05 03:40:23 +02:00
Leon Styhre
58fd5b8f10
Fixed an issue with the help prompts text color when the menu was opened.
2021-09-04 21:47:42 +02:00
Sophia Hadash
6b727e3883
add badges definition to theme interpreter
2021-09-04 21:15:14 +02:00
Leon Styhre
db77b6d0df
Merge branch '587-make-the-help-component-more-configurable-by-the-theme'
2021-09-04 19:51:09 +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
Sophia Hadash
24f34df66b
invalidate icon cache when an icon is replaced
2021-08-30 14:29:43 +02:00
Leon Styhre
db1e595d11
Fixed an issue where text coloring in menus would sometimes not get rendered correctly.
2021-08-25 21:36:35 +02:00
Leon Styhre
abf8759f75
Added headers to the CMake configuration files.
2021-08-24 18:32:15 +02:00
Sophia Hadash
41375c6f6e
remove brackets.
2021-08-23 20:57:11 +02:00
Sophia Hadash
b9b3e35e09
reformat toCamelCase.
2021-08-23 15:02:56 +02:00
Sophia Hadash
c1d7f37a07
reformat HelpComponent if-else.
2021-08-23 15:01:30 +02:00
Sophia Hadash
b8ce3d95e8
rewrite custom button icon tags into customButtonIcon node with attribute.
2021-08-23 12:58:06 +02:00
Sophia Hadash
0826ebb2af
Bump theme xml version from 6 to 7.
2021-08-23 12:58:06 +02:00
Sophia Hadash
76a25d2204
Implement theme customizable button icons.
2021-08-23 12:58:06 +02:00
Sophia Hadash
54df6a5520
remove debug logs
2021-08-23 12:58:06 +02:00
Sophia Hadash
c2042e66e2
Add help component theme options textColorDimmed
and iconColorDimmed
.
2021-08-23 12:58:06 +02:00
Sophia Hadash
dfffd1057d
Add help component theme options textStyle
.
2021-08-23 12:58:06 +02:00
Sophia Hadash
6672fd1ec8
Add help component theme options entrySpacing
and iconTextSpacing
.
2021-08-23 12:58:06 +02:00
Leon Styhre
5381f38231
Added support for defining and choosing between alternative emulators.
2021-08-22 15:26:38 +02:00
Leon Styhre
a0c2c21a99
Reorganized the UI Settings and Other Settings menus a bit.
2021-08-22 14:29:43 +02:00
Leon Styhre
5580de74b1
Bundled the bold font version of Fontfabric Akrobat.
2021-08-22 14:08:24 +02:00
Leon Styhre
9d4deefdf4
Fixed an issue when entering a submenu before the parent menu was scaled up.
2021-08-19 22:28:31 +02:00
Leon Styhre
655340a94c
OCD commit.
2021-08-19 21:51:42 +02:00
Leon Styhre
91879c9b4a
Cleaned up some rendering code.
2021-08-19 21:39:01 +02:00
Leon Styhre
4676cee4fa
Fixed a small cosmetic issue introduced by a previous commit.
2021-08-19 20:30:04 +02:00
Leon Styhre
6e882dd564
Added support for upscaling bitmap images using linear filtering.
2021-08-19 20:16:42 +02:00
Leon Styhre
70a1e4612a
Fixed an issue where menu rows would not align properly during navigation.
2021-08-19 19:53:05 +02:00
Leon Styhre
192bec6f5c
Added a function to generate MD5 hashes.
2021-08-18 21:03:25 +02:00
Leon Styhre
816d79c32f
(Windows) Silenced some MSVC compiler warnings related to the C++17 language standard.
2021-08-18 18:58:43 +02:00
Leon Styhre
91339bf1fa
(Windows) Fixed a MinGW compiler error.
2021-08-18 18:52:41 +02:00
Leon Styhre
b6b431f0fd
Fixed two debug messages that contained incorrect function names.
2021-08-17 22:51:28 +02:00
Leon Styhre
83c0bc5ca6
Moved MoveCameraAnimation.h from es-app to es-core.
2021-08-17 22:23:42 +02:00
Leon Styhre
12c853bc31
Moved the remaining math functions to a math utility namespace.
2021-08-17 22:11:16 +02:00
Leon Styhre
74e21e8c03
Replaced some internal math functions with equivalents from the GLM library.
2021-08-17 20:55:29 +02:00
Leon Styhre
71d0e14a77
Removed the deprecated built-in matrix and vector code.
2021-08-17 19:27:08 +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
1fb0ccef0d
Replaced the internal Vector2f data type and functions with the GLM library equivalent.
2021-08-16 18:25:01 +02:00
Leon Styhre
64a7b8e54a
Replaced the internal Vector3f and Vector4f data types and functions with the GLM library equivalents.
2021-08-15 22:03:17 +02:00
Leon Styhre
722468129e
Replaced all internal matrix data types and functions with the GLM library equivalents.
...
Also changed some vectors.
2021-08-15 19:30:31 +02:00
Leon Styhre
18949d375c
Minor cosmetic code cleanup.
2021-08-11 12:09:58 +02:00
Leon Styhre
d596c96181
Merge branch '517-make-the-application-quit-shortcut-configurable-e-g-f4-alt-f4-alt-q-command-q'
2021-08-11 12:01:42 +02:00
Leon Styhre
c958a94ca6
(Windows) Hiding of console windows during game launches can now be configured via the %HIDEWINDOW% variable.
2021-07-16 17:56:16 +02:00
Leon Styhre
82f81f89a6
(Windows) Fixed an issue where the console window was displayed when launching scripts.
2021-07-16 17:17:19 +02:00
SophiaHadash
75bf7781e3
update from master
2021-07-16 10:10:55 +02:00
Leon Styhre
b4d85c5b34
Fixed a heisenbug in AudioManager that was actually caused by a bug in SDL_AudioStreamAvailable().
2021-07-15 18:07:01 +02:00
Leon Styhre
977ab5e683
(RPi) Fixed an issue where the window focus would sometimes get lost when returning from a game.
2021-07-14 19:19:45 +02:00
Leon Styhre
9bbba93edf
Added experimental hardware decoding support to VideoFFmpegComponent.
...
Also fixed some memory leaks and removed the video frame skipping code as it caused more harm than good.
2021-07-14 19:13:25 +02:00
Leon Styhre
1cee40f291
Some minor changes proposed by the static analyzer.
2021-07-09 19:58:21 +02:00
Leon Styhre
3b4bb74ac0
VideoFFmpegComponent now prioritizes audio by dropping video frames if the computer can't keep up.
2021-07-09 19:47:33 +02:00
Leon Styhre
7ea91f08af
Removed the deprecated VideoOmxComponent.
2021-07-08 18:26:01 +02:00
Leon Styhre
1d706ec7f3
Removed some obsolete audio settings.
...
Also set VLC as the default video player on Raspberry Pi.
2021-07-08 18:18:59 +02:00
Leon Styhre
1c31a8a49e
Hack to be able to build on Raspberry Pi.
2021-07-08 18:08:43 +02:00
Leon Styhre
a62be38c85
Fixed an issue where fractional rating values were always rounded up.
2021-07-07 22:08:19 +02:00
Leon Styhre
b030ab5b8b
(Windows) Fixed a MinGW compiler warning.
2021-07-07 20:48:38 +02:00
Leon Styhre
23fdc00044
Formatted the es-core source tree using clang-format.
2021-07-07 20:31:46 +02:00
SophiaHadash
e24c92effe
code style and comments style
2021-07-07 14:31:32 +02:00
SophiaHadash
ba2ef814de
code-words for options
2021-07-07 14:24:15 +02:00
SophiaHadash
17d28ea88b
remove exit combo ESC, add combo Alt+Q
2021-07-07 14:13:46 +02:00
Leon Styhre
aa67020326
(Windows) Fixed an MSVC compiler warning.
2021-07-04 21:34:21 +02:00
Leon Styhre
483311f7f2
Switched the order of the Back and Start buttons in the input configurator.
...
Also removed some legacy code.
2021-07-04 15:03:22 +02:00
Leon Styhre
45d3bb9bad
Small refactoring of VideoFFmpegComponent.
2021-07-04 11:36:16 +02:00
Leon Styhre
f59223927e
Added a message to GuiDetectDevice if only accepting input from the first controller.
2021-07-03 12:25:36 +02:00
Leon Styhre
52e12da55a
Fixed an issue where the joystick counter would not decrease when removing a controller.
2021-07-03 12:24:23 +02:00
Leon Styhre
651b7a4d02
Fixed an issue with an endless loop when attempting to load a corrupt image file.
2021-07-02 20:33:50 +02:00
Leon Styhre
b59f2da3e3
Now skipping missing font file checks for bundled fonts.
2021-07-02 18:51:01 +02:00
Leon Styhre
a277b9693b
Fixed an issue where missing theme font files would crash the application.
2021-07-02 18:34:04 +02:00
Leon Styhre
6178830504
Improved scaling relative to the screen aspect ratio for various GUI components.
2021-07-02 17:57:52 +02:00
Leon Styhre
6e28300a5a
The ComponentList padding is now scaled properly to the screen aspect ratio and resolution.
2021-07-02 17:44:27 +02:00
Leon Styhre
e957e96e20
Window corner sizes are now calculated based on the screen height instead of the screen width.
2021-07-02 17:36:05 +02:00
Leon Styhre
3dea4bc8ec
Minimal code cleanup of HelpComponent.
2021-07-02 17:32:55 +02:00
Leon Styhre
4a3b24e770
Removed a ComponentGrid assert that prevented portrait orientation to work at all.
2021-07-02 17:31:35 +02:00
Sophia Hadash
7a072674d3
Merge branch 'quit-button-config' into '517-make-the-application-quit-shortcut-configurable-e-g-f4-alt-f4-alt-q-command-q'
...
Added a menu option in 'other options' for setting the exit button combo.
See merge request leonstyhre/emulationstation-de!3
2021-07-01 15:55:08 +00:00
SophiaHadash
2ecb105c5c
Added a menu option in 'other options' for setting the exit button combo.
...
Added 4 button combos including Apple and Windows key combos.
2021-07-01 17:46:03 +02:00
Leon Styhre
3185083ca5
Added separate controller deadzone values for the triggers and thumbsticks.
2021-07-01 17:39:08 +02:00
Leon Styhre
0b47a90b3e
(Windows) Added game launch workaround for an AMD and Intel GPU issue.
2021-06-30 18:08:13 +02:00
Leon Styhre
1478bbf550
Enabled the option on all operating systems to run ES-DE in the background while a game is launched.
2021-06-30 17:19:57 +02:00
Leon Styhre
e19f0beace
(Windows) Removed a log output hack that was a genuinely bad idea.
2021-06-29 18:20:55 +02:00
Leon Styhre
c30fab0919
Added an option to use plain ASCII for some special gamelist characters.
2021-06-28 22:05:24 +02:00
Leon Styhre
817ee4122a
Fixed an issue where horizontally scrolling game names would sometimes flicker.
...
Also cleaned up some code.
2021-06-28 20:45:58 +02:00
Leon Styhre
0eba1795a4
Set the random game or system button to disabled by default.
2021-06-27 12:21:18 +02:00
Leon Styhre
e0e1cff787
Removed controllers are now logged to es_log.txt in the same manner as added controllers.
...
Also renamed two functions and changed a variable that had an incorrect and confusing name.
2021-06-26 22:54:30 +02:00
Leon Styhre
73ea38008f
The audio stream is no longer freed on shutdown which avoids a random SDL crash bug.
2021-06-26 22:47:21 +02:00
Leon Styhre
36be8019a9
Removed the legacy support for placing game media in the ROM directory.
2021-06-24 21:11:24 +02:00
Leon Styhre
337f06b428
Added a CMake option to build with or without the VLC video player.
2021-06-23 00:24:15 +02:00