Leon Styhre
d631435864
Fixed a compiler warning regarding an unsecure function in MathUtil.
2023-01-06 14:49:11 +01:00
Leon Styhre
6c75d0fc88
Fixed some Clang compiler warnings.
2023-01-06 13:48:59 +01:00
Leon Styhre
bcc74db584
Added a selectedItemMargins property to CarouselComponent.
2023-01-05 22:10:45 +01:00
Leon Styhre
52ebc9098b
Replaced a deprecated function if building with curl 7.85.0 or newer.
2023-01-05 19:37:23 +01:00
Leon Styhre
60a6776b53
Fixed an issue where defining the same sound file for multiple navigation sounds would log an error to es_log.txt on theme change.
2023-01-05 11:17:34 +01:00
Leon Styhre
ad973e1ffa
Removed support for all deprecated theme properties.
2023-01-04 21:36:22 +01:00
Leon Styhre
fa67018b72
Added variant trigger support.
2023-01-04 19:01:41 +01:00
Leon Styhre
549d78dfed
(Windows) Changed a debug output entry in VideoFFmpegComponent to convert forward slashes to backslashes.
2023-01-01 19:59:08 +01:00
Leon Styhre
8b33fceb8a
Added checks for nonexistent navigation sounds in the theme configuration with fallback to the default sounds.
...
Also did some minor code cleanup.
2022-12-22 17:15:15 +01:00
Leon Styhre
1c83c762a8
Fixed an issue where the video element static image would not get displayed for legacy theme sets.
2022-12-21 20:02:12 +01:00
Leon Styhre
251e826589
The defaultImage property can now be used to display a static image in case no video file was found.
...
Also fixed a bug where the static image would not get displayed in the grouped custom collections view if there was no game found for the system and the previously selected entry already had it's video playing when navigating away from it.
2022-12-21 19:53:03 +01:00
Leon Styhre
3b9ced603c
Fixed an issue where the wrong help prompt was shown for the 'A' button when editing multi-line text fields.
2022-12-20 21:54:49 +01:00
Leon Styhre
aa33558952
Some code cleanup.
2022-12-20 21:52:48 +01:00
Leon Styhre
1bbed6cc04
gamelist.xml files are no longer loaded from the ROMs/system directories.
2022-12-20 20:20:02 +01:00
Leon Styhre
a54d6a5568
(Windows) Converted forward slashes to backslashes for some log output entries involving file names.
...
Also made some minor general log output changes in GamelistFileParser.
2022-12-19 20:38:41 +01:00
Leon Styhre
8f2065e491
Fixed a cosmetic text sizing issue in DateTimeEditComponent.
2022-12-18 15:53:12 +01:00
Leon Styhre
354da078a3
Fixed multiple issues where the wrong navigation sound would play.
2022-12-18 12:24:12 +01:00
Leon Styhre
a7005f22e9
Renamed the textlist property selectorOffsetY to selectorVerticalOffset and added a selectorHorizontalOffset property.
...
Also enforced minimum and maximum values for a few textlist properties.
2022-12-18 12:02:50 +01:00
Leon Styhre
ae52489b6b
Added support for up to two imageType values for CarouselComponent and GridComponent.
2022-12-17 22:20:29 +01:00
Leon Styhre
17597ab144
Renamed an incorrectly named static variable in ImageComponent.
2022-12-17 22:15:19 +01:00
Leon Styhre
aaa96cd8dd
An automatic aspect ratio menu entry is now added even for themes that only have a single aspect ratio defined.
2022-12-17 19:47:37 +01:00
Leon Styhre
5581103642
Adjusted the system view and carousel transition animation times slightly.
2022-12-16 17:25:57 +01:00
Leon Styhre
cdc553d75f
Added an arcade twin stick controller badge icon.
2022-12-15 18:30:48 +01:00
Leon Styhre
6d4086639a
Disabled ScreenScraper controller scraping as they have ruined that functionality.
2022-12-15 18:27:45 +01:00
Leon Styhre
ae6c062984
Added gameselectorEntry properties to a number of elements.
2022-12-15 18:23:48 +01:00
Leon Styhre
da3fb9a825
Improved the random game selection functionality in GameSelectorComponent.
2022-12-15 18:11:33 +01:00
Leon Styhre
f4d4abb33b
Added theme support for defining relative brightness for images, videos and animations.
2022-12-14 20:17:41 +01:00
Leon Styhre
ab31eafaca
Some code cleanup.
2022-12-14 17:30:34 +01:00
Leon Styhre
c260c929b5
Added itemSaturation properties to CarouselComponent and GridComponent.
2022-12-13 21:35:21 +01:00
Leon Styhre
6037e80bf1
Added color shift support to VideoComponent.
2022-12-12 21:51:27 +01:00
Leon Styhre
46a1e28aa2
Fixed an issue where the shader postprocessing function did not set the shader premultiplied flag.
2022-12-12 20:42:54 +01:00
Leon Styhre
19111a9c24
Added an itemStacking property to CarouselComponent.
2022-12-12 17:45:07 +01:00
Leon Styhre
a5b08e3da2
Moved the position of one GridComponent property.
2022-12-11 17:48:56 +01:00
Leon Styhre
8b33c43dba
Added support to GridComponent for flushing cached background and selector images on reload when in debug mode.
2022-12-11 16:40:47 +01:00
Leon Styhre
abcd3e5bac
Fixed an issue in CarouselComponent and GridComponent where the default image was rendered when it shouldn't.
...
Also moved a property position in GridComponent.
2022-12-11 12:10:08 +01:00
Leon Styhre
0b5419316d
Changed a number of property names in CarouselComponent and GridComponent.
2022-12-11 11:22:08 +01:00
Leon Styhre
7ba596775d
Fixed a GridComponent navigation issue when there was only a single column.
2022-12-10 20:36:52 +01:00
Leon Styhre
23438cd101
Updated ThemeData with the new itemFit grid property.
2022-12-10 20:27:05 +01:00
Leon Styhre
c394e4ae8d
Added an itemFit property to GridComponent.
2022-12-10 20:25:49 +01:00
Leon Styhre
c6981084e0
Added cover fit cropping support to ImageComponent.
2022-12-10 20:20:45 +01:00
Leon Styhre
f0e3addee6
Added support for setting one of the itemSize property axes to -1 to get square GridComponent items.
2022-12-10 14:31:04 +01:00
Leon Styhre
cb4f78b763
Added color shift support to CarouselComponent items.
2022-12-09 19:27:48 +01:00
Leon Styhre
3c2dc7b551
Added a number of properties and corresponding functionality to GridComponent.
2022-12-09 18:49:32 +01:00
Leon Styhre
56b33c5371
Added text theming support to GridComponent.
2022-12-07 19:46:41 +01:00
Leon Styhre
304d304727
Added support for linear interpolation for font texture magnifications.
2022-12-07 18:24:00 +01:00
Leon Styhre
2799974938
Expanded the quick system select menu option from a simple on/off entry to a selection of different button combinations.
...
Also did some minor code cleanup in GuiMenu.
2022-12-07 18:09:05 +01:00
Leon Styhre
9e0a6df760
Added support for a left/right trigger help system button.
2022-12-07 17:34:07 +01:00
Leon Styhre
f6c8921132
GridComponent item opacity is now adjusted for hidden entries and entries marked as not being games.
2022-12-07 17:26:35 +01:00
Leon Styhre
5a18b593f4
Fixed a SystemView navigation rendering glitch when using GridComponent.
2022-12-05 23:12:41 +01:00
Leon Styhre
56c8a43b36
Changed the order of the A, B, X and Y help system buttons.
...
Also changed the gamelist help text from 'enter' and 'launch' to 'select' for the gamelist view.
2022-12-05 21:37:21 +01:00
Leon Styhre
b9e6cdd9da
Fixed some GridComponent animation glitches when marking games as favorites.
2022-12-05 21:15:15 +01:00
Leon Styhre
da93533aed
Fixed multiple navigation issues.
2022-12-04 15:56:59 +01:00
Leon Styhre
4b03c90bf3
Fixed an issue where using the trigger buttons did not reset any currently held buttons.
2022-12-03 15:15:53 +01:00
Leon Styhre
825d220be0
Animations in GridComponent are now finished on menu opening, game launch etc.
2022-12-03 14:29:17 +01:00
Leon Styhre
b67ce99a0e
Added navigation sound support to GridComponent.
2022-12-03 14:19:22 +01:00
Leon Styhre
48d86ccea7
Made two member functions in TextListComponent private instead of protected.
2022-12-03 14:18:30 +01:00
Leon Styhre
0a2a6d1907
Added a rowTransitions property to GridComponent.
2022-12-03 14:12:14 +01:00
Leon Styhre
3ec8ec14ca
Fixed multiple navigation issues in GridComponent.
2022-12-03 14:01:17 +01:00
Leon Styhre
1631cbd30f
Added automatic layout and dynamic rendering to GridComponent.
...
Also fixed multiple navigation issues.
2022-12-02 18:08:48 +01:00
Leon Styhre
dfcf041efc
Fixed a GridComponent slide transition issue when used in the system view.
...
Also fixed a general navigation issue.
2022-11-25 22:35:35 +01:00
Leon Styhre
0cd814a4d1
Added on-demand texture loading to GridComponent.
2022-11-25 22:07:36 +01:00
Leon Styhre
99df997833
Added scrolling support to GridComponent.
...
Also changed the names of two properties.
2022-11-25 18:59:08 +01:00
Leon Styhre
be903c0a86
Changed a value for the itemTransitions property for the carousel and grid components.
...
Also changed the position of a grid property and set the minimum columns value to 1.
2022-11-13 23:04:48 +01:00
Leon Styhre
9013faf445
Added proper item spacing, item offsets and element boundary clipping to GridComponent.
2022-11-13 22:31:41 +01:00
Leon Styhre
75ebd839b9
Placed the primary elements first in the ThemeData element map.
2022-11-13 19:59:26 +01:00
Leon Styhre
5ec0fda3a2
Implemented correct item rendering order in GridComponent.
2022-11-13 19:32:29 +01:00
Leon Styhre
8062ebaf3a
GridComponent now sets its default position and size if this is not defined by the theme configuration.
2022-11-13 12:25:46 +01:00
Leon Styhre
ed6b23a2c6
Fixed an issue where the default textlist size and position properties were not set for the system view.
...
Also moved some default value assignments to the TextListComponent itself.
2022-11-13 11:56:18 +01:00
Leon Styhre
48111ce5e4
Added basic GridComponent functionality and integration.
2022-11-12 14:08:53 +01:00
Leon Styhre
12f2142c03
Improved the animation interpolation in CarouselComponent and TextListComponent.
...
Also eliminated an unnecessary cursor stop function call.
2022-11-11 18:16:51 +01:00
Leon Styhre
74ac8393e3
Small refactoring of AnimationController.
2022-11-11 18:11:31 +01:00
Leon Styhre
3fd18ec2ee
Changed a function name in FlexboxComponent.
2022-11-11 18:05:59 +01:00
Leon Styhre
319992a0f7
Changed the include guard names for the primary components.
2022-11-08 21:44:42 +01:00
Leon Styhre
b4338a3fb7
Refactored some image resizing functions.
2022-11-07 23:58:22 +01:00
Leon Styhre
c73ff02012
Updated the file header comments for CarouselComponent and TextListComponent.
2022-11-06 21:35:36 +01:00
Leon Styhre
4e54508e45
Added a GridComponent skeleton.
2022-11-06 21:34:03 +01:00
Leon Styhre
5bedb7a8fa
Small refactoring of CarouselComponent and TextListComponent.
2022-11-06 21:28:15 +01:00
Leon Styhre
645b41afa4
Fixed multiple issues with text rendering for legacy themes.
2022-11-06 00:02:48 +01:00
Leon Styhre
10d0a89a47
Disabled carousel item mipmapping for legacy themes.
2022-11-05 20:42:54 +01:00
Leon Styhre
486942c792
The cache manager now differentiates between mipmapped and non-mipmapped images.
2022-11-05 20:41:17 +01:00
Leon Styhre
ad0cfdba8b
Tidied up an if statement in GameSelectorComponent.
2022-11-05 15:50:03 +01:00
Leon Styhre
4894ead7e7
Fixed an issue where the gameselector element configuration could lead to a crash.
2022-11-05 13:39:41 +01:00
Leon Styhre
8b5bb18357
Fixed a small font rendering issue in BusyComponent on some devices at low resolutions.
2022-11-04 13:32:10 +01:00
Leon Styhre
502fb69b87
Removed some code comments.
2022-11-04 12:55:00 +01:00
Leon Styhre
b4d2babf01
Added a selectedSecondaryColor property to TextListComponent.
2022-11-03 23:24:11 +01:00
Leon Styhre
b91daa113d
Fixed an uninitialized variable in ThemeData.
2022-11-03 23:19:25 +01:00
Leon Styhre
6b90326574
Removed a lot of pointless setter functions from TextListComponent.
2022-11-03 21:20:35 +01:00
Leon Styhre
246fd307b6
Changed a number of theme properties to be read by reference instead of via copy.
2022-11-03 16:03:21 +01:00
Leon Styhre
cfd2f7e4e5
Removed the unnecessary applyTheme function from NinePatchComponent.
2022-11-03 15:44:52 +01:00
Leon Styhre
b43c8cdd55
Improved some theme warning messages in TextListComponent.
...
Also changed some theme values to be read by reference instead of by copy in CarouselComponent.
2022-11-03 15:36:43 +01:00
Leon Styhre
412a19275d
Added two letterCaseCollections and letterCaseGroupedCollections properties to TextListComponent and CarouselComponent.
...
Also refactored the letterCase logic overall in these two components.
2022-11-03 12:31:42 +01:00
Leon Styhre
b426473ec0
The text cache is now always reset on text changes.
2022-11-03 12:09:19 +01:00
Leon Styhre
3ead13ad29
Added missing file error checking to BadgeComponent for custom badges and controller images.
2022-11-02 21:18:17 +01:00
Leon Styhre
71b8eba9ce
Fixed an issue where the helpsystem would be incorrectly positioned when right-aligned.
2022-11-02 21:15:24 +01:00
Leon Styhre
7c02db291e
Fixed a minor log formatting issue in ThemeData.
2022-11-01 23:11:06 +01:00
Leon Styhre
9584c1bcc7
Added support for placing aspectRatio tags inside variant tags and variables and colorScheme tags inside aspectRatio tags.
2022-11-01 17:13:37 +01:00
Leon Styhre
98d9ce42d2
Added support for automatic theme aspect ratio detection.
2022-11-01 17:08:51 +01:00
Leon Styhre
0d7468e9b4
Moved the color scheme parsing even earlier to prevent potential issues.
2022-10-31 21:50:54 +01:00
Leon Styhre
f1bd530963
Fixed an issue where the color scheme configuration was parsed after the variant configuration.
2022-10-31 21:02:53 +01:00
Leon Styhre
4e84707e3a
Changed the order of two theme properties to improve consistency.
2022-10-31 20:12:42 +01:00
Leon Styhre
8df54bd80e
Added support for color schemes.
2022-10-31 19:32:13 +01:00
Leon Styhre
bebb345936
Replaced the checkerboard pattern for the default blank texture with a truly blank texture.
2022-10-30 09:16:14 +01:00
Leon Styhre
b17c78bc42
Increased the default VRAM limit from 256 to 512 MiB and increased the maximum limit from 1024 to 2048 MiB.
...
Also increased the default VRAM limit for the Raspberry Pi from 184 to 192 MiB.
2022-10-30 09:11:59 +01:00
Leon Styhre
941835977f
Fixed a carousel item sizing issue when logoScale was set to lower than 1.0 for legacy theme sets.
2022-10-29 15:24:46 +02:00
Leon Styhre
c870664615
Missing theme files defined using variables now only trigger debug messages instead of errors or warnings.
...
Also added two DebugSkipMissingThemeFiles and DebugSkipMissingThemeFilesCustomCollections settings.
2022-10-29 13:04:00 +02:00
Leon Styhre
03a9dc8e05
Improved some theme warning messages in BadgeComponent.
2022-10-29 12:54:52 +02:00
Leon Styhre
126d93709e
Updated the CImg functions and miximage generator for BGRA instead of RGBA pixel format.
2022-10-28 21:39:57 +02:00
Leon Styhre
e1d911f401
Fixed an issue where text caches would not get cleared if the text was set to a blank value.
2022-10-28 21:31:40 +02:00
Leon Styhre
27936131f3
Added a special 'all' shortcut variant.
2022-10-28 21:08:44 +02:00
Leon Styhre
b1a2b3f5ca
Added support for overriding variables and to define them inside the variants tags.
2022-10-28 21:06:01 +02:00
Leon Styhre
7e2818c854
Fixed an issue where the wrong system name would show up on the carousel if the theme configuration was invalid.
2022-10-28 21:00:49 +02:00
Leon Styhre
3c82bb4dfb
Changed the renderer pixel format from RGBA to BGRA.
...
Also implemented premultiplied alpha for all images, animations and videos and improved the carousel reflection falloff logic.
2022-10-28 00:08:41 +02:00
Leon Styhre
c96696fb96
OCD commit.
2022-10-27 19:11:23 +02:00
Leon Styhre
e36041669d
Fixed an issue where DateTimeEditComponent would not center vertically.
2022-10-27 19:09:45 +02:00
Leon Styhre
e4f4f29198
Merged the master branch into new-svg-renderer.
2022-10-26 19:52:01 +02:00
Leon Styhre
2fd5580e13
Fixed a small font offset problem mostly seen at really low resolutions.
2022-10-26 18:42:42 +02:00
Leon Styhre
cbea006a70
Removed support for setting logoScale to lower than 1.0 for legacy themes as it introduced backward compatibility issues.
2022-10-25 22:58:03 +02:00
Leon Styhre
3252f8fa1b
Reintroduced a transformation rounding in GuiComponent as some GPU drivers went crazy without it.
2022-10-25 21:11:16 +02:00
Leon Styhre
7c1a48ec5c
Removed two unnecessary roundings from OptionListComponent.
2022-10-25 20:49:22 +02:00
Leon Styhre
c50b6b35f4
Removed some unnecessary roundings.
2022-10-25 20:39:12 +02:00
Leon Styhre
18bbd97433
Fixed an issue where the textlist selector would not get sized correctly.
2022-10-25 20:34:58 +02:00
Leon Styhre
a8d1c4a2e1
Fixed an issue in CarouselComponent where setting itemScale to less than 1.0 did not work as expected.
...
Also fixed a problem where carousel text entries did not get multiplied by itemScale.
2022-10-25 20:33:12 +02:00
Leon Styhre
4513b20339
Some minor font sizing improvements.
...
Also fixed a few implicit casts.
2022-10-25 01:20:31 +02:00
Leon Styhre
97a9347d67
Improved font sizing for the launch screen, scraper and help system.
2022-10-25 01:06:02 +02:00
Leon Styhre
3de8275db6
Fixed multiple minor pixel alignment issues.
2022-10-25 00:43:27 +02:00
Leon Styhre
84f019680d
Greatly improved text sizing and rendering.
2022-10-25 00:39:40 +02:00
Leon Styhre
103e59b54d
Fixed an issue where mutually exclusive system variables could lead to theme loading errors.
2022-10-17 22:21:52 +02:00
Leon Styhre
45fa3d2c37
Added a pillarboxThreshold property to control these values for the video element.
2022-10-16 16:40:52 +02:00
Leon Styhre
0f327582c1
Fixed an issue where ScrollableContainer would reset too early.
2022-10-16 15:00:38 +02:00
Leon Styhre
6599c12554
Fixed an issue where ScrollableContainer would sometimes fade in text that had not been scrolled.
2022-10-16 13:51:22 +02:00
Leon Styhre
16c4fb6d17
Fixed some alignment issues in CarouselComponent.
2022-10-14 18:14:15 +02:00
Leon Styhre
5f6bd48022
One more try to fix a rounding issue in TextComponent.
2022-10-14 18:12:23 +02:00
Leon Styhre
7f5ed1c41d
Fixed a minor graphical glitch in CarouselComponent.
2022-10-11 21:31:05 +02:00
Leon Styhre
8bbaec229f
Fixed a rounding issue in TextComponent.
2022-10-11 19:37:35 +02:00
Leon Styhre
7e923cb9b6
Some refactoring of the OpenGL renderer and TextureDataManager.
2022-10-11 18:11:36 +02:00
Leon Styhre
11b035affa
Fixed a rounding issue in TextComponent.
2022-10-11 18:08:57 +02:00
Leon Styhre
d74966a3c4
Fixed a heisenbug where letters would sometimes get rendered with ugly edge artifacts.
2022-10-11 18:07:56 +02:00
Leon Styhre
241a0119ef
Fixed a crash in the Font::wrapText function.
2022-10-10 21:12:49 +02:00
Leon Styhre
1c82228a9c
Fixed two small logical errors.
2022-10-10 20:52:55 +02:00
Leon Styhre
39c9bd2cbc
Added font size overflow restrictions to TextComponent and DateTimeComponent.
...
Also fixed a crash that could occur in TextComponent when blank/dummy fonts were used.
2022-10-10 20:37:04 +02:00
Leon Styhre
610ac9adb3
Implemented dynamic texture allocation to the font handling.
2022-10-10 20:32:35 +02:00
Leon Styhre
6af1f76be8
Fixed an issue where the help system was rendered on top of the menus.
2022-10-10 20:07:40 +02:00
Leon Styhre
0232635504
Refactoring/cleanup.
2022-10-09 19:13:54 +02:00
Leon Styhre
0757156caf
Improved error handling for unloadable font files.
2022-10-09 18:01:30 +02:00
Leon Styhre
50832a5b64
Some code cleanup.
2022-10-09 17:59:27 +02:00
Leon Styhre
fdcd4a4a9d
(Windows) Fixed an MSVC compiler warning.
2022-10-08 11:22:46 +02:00
Leon Styhre
d927135034
Fixed an issue where line breaks were included in single-line text entries.
2022-10-08 10:00:40 +02:00
Leon Styhre
508ea87963
Rewrite of the text wrapping code to work with languages which generally lack spaces, like Japanese.
...
Also implemented massive performance improvements to the text wrapping code.
2022-10-08 09:33:57 +02:00
Leon Styhre
d2ca019a75
Avoided unnecessary SVG file parsing for images previously found to be invalid.
2022-10-06 20:20:48 +02:00
Leon Styhre
bbe9666f69
Removed the use of a deprecated LunaSVG function that is no longer required.
2022-10-03 21:38:01 +02:00