Commit graph

435 commits

Author SHA1 Message Date
Leon Styhre f1ceb1c2fe Fixed a crash when attempting to navigate multi-cell ComponentGrid entries. 2021-09-22 23:42:57 +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
Sophia Hadash 4959e72b35 fix when badges are shown (reverse) 2021-09-19 23:21:38 +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 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 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
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 db77b6d0df Merge branch '587-make-the-help-component-more-configurable-by-the-theme' 2021-09-04 19:51:09 +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
Sophia Hadash c1d7f37a07 reformat HelpComponent if-else. 2021-08-23 15:01:30 +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 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 91339bf1fa (Windows) Fixed a MinGW compiler error. 2021-08-18 18:52:41 +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 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 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 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 a62be38c85 Fixed an issue where fractional rating values were always rounded up. 2021-07-07 22:08:19 +02:00
Leon Styhre 23fdc00044 Formatted the es-core source tree using clang-format. 2021-07-07 20:31:46 +02:00
Leon Styhre 45d3bb9bad Small refactoring of VideoFFmpegComponent. 2021-07-04 11:36:16 +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 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
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 337f06b428 Added a CMake option to build with or without the VLC video player. 2021-06-23 00:24:15 +02:00
Leon Styhre badcfb0fe9 Fixed a glitch in VideoFFmpegComponent as the video texture was not properly reset. 2021-06-22 18:17:06 +02:00
Leon Styhre d1a30133d1 Fixed an issue where images were only scaled down but never up during cropping. 2021-06-14 19:56:21 +02:00
Leon Styhre dde840c5f8 Added a game launch screen. 2021-06-14 19:15:22 +02:00
Leon Styhre aeb74055d0 Added a function to ImageComponent to crop fully transparent areas around an image. 2021-06-12 21:08:35 +02:00
Leon Styhre 75430f210a Some cosmetic code cleanup. 2021-06-11 17:02:06 +02:00
Leon Styhre 653cf4c46f (Windows) Fixed an MSVC compiler warning. 2021-05-29 11:48:33 +02:00
Leon Styhre 5ee28ed8ec Fixed some compiler errors on Windows caused by an FFmpeg C macro. 2021-05-29 11:27:04 +02:00
Leon Styhre 77bbe0592c Updated VideoFFmpegComponent to use libavfilter for frame processing and conversion. 2021-05-29 10:58:51 +02:00
Leon Styhre 0d8f50f632 Added automatic retries to the scraper for ScreenScraper TLS errors. 2021-05-24 18:51:16 +02:00
Leon Styhre ccb4c19d78 Changed input type 'select' to 'back' to align with the SDL naming conventions. 2021-05-23 20:31:15 +02:00
Leon Styhre 4d4210a419 Added support for selecting between different controller types. 2021-05-23 19:12:31 +02:00
Leon Styhre d6eba6ae24 Adjusted the size and position of the various menus. 2021-05-23 10:40:11 +02:00
Leon Styhre 65e119cff9 The audio stream is now only cleared from a single location in VideoFFmpegComponent.
Also made the video player finish processing if the video is paused.
2021-05-19 19:52:58 +02:00
Leon Styhre 9d8cb889ac Reduced video stuttering in VideoFFmpegComponent.
Also did some other optimizations.
2021-05-19 19:47:40 +02:00
Leon Styhre 3ed17fbea2 Added a fullscreen game media viewer. 2021-05-16 13:12:31 +02:00
Leon Styhre 282d2fa445 Implemented a workaround for a potential crash when scaling frames in VideoFFmpegComponent. 2021-05-15 20:16:48 +02:00
Leon Styhre 4a42f929b3 (Windows) Fixed some MinGW and MSVC compiler errors and warnings for VideoFFmpegComponent. 2021-05-13 11:05:23 +02:00
Leon Styhre 4465342724 Added an audio buffer to VideoFFmpegComponent to avoid underflows and distortion. 2021-05-12 22:55:00 +02:00
Leon Styhre f3f86c6e20 Changed to unique_ptr for the threading in VideoFFmpegComponent and TextureDataManager. 2021-05-12 22:49:24 +02:00
Leon Styhre b1521c4c53 Fixed a stupid iterator issue in VideoFFmpegComponent. 2021-05-11 18:06:30 +02:00
Leon Styhre 84640c0dc5 Added multithreading to VideoFFmpegComponent. 2021-05-11 17:35:55 +02:00
Leon Styhre a1209dfc5d Fixed a video/audio synchronization issue in VideoFFmpegComponent. 2021-05-10 18:54:17 +02:00
Leon Styhre d9eda97ca6 Fixed an issue in VideoFFmpegComponent that could lead to a crash.
Also renamed a function in VideoFFmpegComponent.
2021-05-10 18:08:45 +02:00
Leon Styhre ef8b008d28 Added an experimental FFmpeg video player. 2021-05-09 22:52:26 +02:00
Leon Styhre fbbb6aece1 Improved the audio streaming in AudioManager. 2021-05-09 22:47:46 +02:00
Leon Styhre 837f781e04 Fixed an issue where the static video image would not be displayed after metadata changes. 2021-04-09 22:54:00 +02:00
Leon Styhre 0243b4bcf8 Changed to static loading of the help icons to avoid texture pop-in.
Also cleaned up some error logging for the help icon loading.
2021-04-05 13:26:25 +02:00
Leon Styhre 23903de1cf Minor cosmetic code cleanup. 2021-03-27 10:26:13 +01:00
Leon Styhre 12a7b18d05 Renamed controller input type 'analog' to 'thumbstick'. 2021-03-24 21:20:01 +01:00
Leon Styhre 4ab296d8bb Improved the video player pause function while running in background. 2021-03-24 20:15:17 +01:00
Leon Styhre 1338e4467b Added support for controller analog sticks click. 2021-03-24 19:35:51 +01:00
Leon Styhre cf2b9534e8 Some code cleanup. 2021-03-23 22:01:47 +01:00
Leon Styhre 28c66225c9 Fixed two memory leaks in VideoVlcComponent. 2021-03-22 18:12:25 +01:00
Leon Styhre e96f8b9c0a Added debug overlay support to ButtonComponent, DateTimeEditComponent and TextListComponent. 2021-03-22 18:07:15 +01:00
Leon Styhre acef76d791 Changed some debug overlay colors. 2021-03-22 17:56:38 +01:00
Leon Styhre d90f29b931 Added support to TextComponent to return the horizontal and vertical alignments. 2021-03-21 11:50:13 +01:00
Leon Styhre 3355d6f208 Added support for more imageSource types to the Grid view style. 2021-03-21 11:24:34 +01:00
Leon Styhre e3f67b26c3 Eliminated some unnecessary processing in DateTimeEditComponent if not right aligning. 2021-03-20 11:11:19 +01:00
Leon Styhre 552368d2f6 Left aligned DateTimeEditComponent in the scraper GUI. 2021-03-20 11:08:28 +01:00
Leon Styhre 9d9aaa30d7 Right aligned DateTimeEditComponent and made some minor adjustments in GuiMetaDataEd. 2021-03-20 10:26:18 +01:00
Leon Styhre 320f81ab4f Fixed a texture pop-in problem for some bundled graphic files. 2021-03-16 21:43:14 +01:00
Leon Styhre bd095a719a Fixed two uninitialized variables in GridTileComponent. 2021-03-16 20:53:53 +01:00
Leon Styhre 98395bc81d Slightly decreased the time needed to reach the highest scrolling tier. 2021-03-14 10:04:52 +01:00
Leon Styhre 6e58b5f2fa Fixed an issue in ScrollableContainer where the reset animation played when it shouldn't. 2021-03-14 09:49:26 +01:00
Leon Styhre 5099593d73 The gamelist description text no longer scrolls above the starting position. 2021-03-13 16:52:15 +01:00
Leon Styhre b12a68603d Fixed an issue where SVG rating components would not render immediately. 2021-03-13 11:46:19 +01:00
Leon Styhre 9ca7e58250 Fixed some minor warnings reported by the Clang static analyzer. 2021-03-01 19:40:23 +01:00
Leon Styhre 5bc19fc723 Fixed a Valgrind error in VideoVlcComponent. 2021-03-01 18:52:20 +01:00
Leon Styhre 0a9ae5b8ec Fixed a slight but annoying rendering issue for the menu selector bar. 2021-02-01 21:23:13 +01:00
Leon Styhre ae55eda233 Made the menus slightly wider to accomodate the new standard font. 2021-02-01 00:12:04 +01:00