Commit graph

850 commits

Author SHA1 Message Date
Leon Styhre 89c845b4d5 (Windows) Fixed a compiler error and two warnings. 2021-05-30 20:52:19 +02:00
Leon Styhre 4533409c65 Substantial code cleanup of various utility functions. 2021-05-30 20:46:17 +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 425d4b0937 Added an option to upscale the video frame rate to 60 FPS. 2021-05-29 10:55:40 +02:00
Leon Styhre c91662befa Implemented a stable solution to video stream muting and clearing. 2021-05-29 10:52:40 +02:00
Leon Styhre ce6eed6c3a Increased the maximum image size for the scraper and improved the scaling function. 2021-05-24 21:34:08 +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 d6fab23d46 Fixed some inconsistent signs for the debug logging for analog controller input. 2021-05-23 13:01:14 +02:00
Leon Styhre ecf8e50500 Added a setting to only accept input from the first controller. 2021-05-23 11:45:45 +02:00
Leon Styhre 958c16cb03 The quit menu is now disabled by default. 2021-05-23 10:56:49 +02:00
Leon Styhre d6eba6ae24 Adjusted the size and position of the various menus. 2021-05-23 10:40:11 +02:00
Leon Styhre 83b764cf1f Small cosmetic changes to the input device configuration screen. 2021-05-23 10:16:47 +02:00
Leon Styhre 0f00701c93 GuiInputConfig now also shows the controller device name during configuration. 2021-05-23 10:14:15 +02:00
Leon Styhre 28ff713d87 (Windows) Fixed an MSVC compiler error and two warnings. 2021-05-22 22:31:03 +02:00
Leon Styhre a21dd2c817 Some code cleanup in GuiInputConfig.
Also fixed a small cosmetic bug.
2021-05-22 22:22:08 +02:00
Leon Styhre 581eb6a055 Fixed an issue where GuiDetectDevice wouldn't detect analog controller inputs. 2021-05-22 22:19:56 +02:00
Leon Styhre 0bde8dc79d Migrated to the SDL2 GameController API. 2021-05-22 22:18:00 +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 2ea9d1b1c0 Fixed a heisenbug in AudioManager that led to random crashes. 2021-05-16 20:17:11 +02:00
Leon Styhre 4fd0423b07 Made 'dim' the fallback screensaver instead of 'black'.
Also set the default screensaver type to 'video' instead of 'dim'.
2021-05-16 18:02:07 +02:00
Leon Styhre bf39f10381 Optimized by skipping some unnecessary rendering when the media viewer is active. 2021-05-16 17:43:18 +02:00
Leon Styhre 564fa67684 Changed the random system or game button and made it possible to disable it altogether. 2021-05-16 14:03:13 +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 c4e542a7a4 Sorted the source files in the CMake configuration files. 2021-05-15 10:40:08 +02:00
Leon Styhre 1d0d5326a8 VideoFFmpegComponent is now the default video player and no longer marked as experimental. 2021-05-14 10:53:50 +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 c108387257 Added clearing of the audio stream at some appropriate places.
Also made a constant explicitly floating point.
2021-05-12 23:03:29 +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 398e47e2cc Fixed an audio mixing issue in AudioManager. 2021-05-12 22:45:01 +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 b87d7238fc Added menu option and integrations for VideoFFmpegComponent 2021-05-09 22:56:41 +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 bdb2d65db7 (macOS) Added support for new core location for RetroArch v1.9.2 2021-05-02 12:35:36 +02:00
Leon Styhre 08aefdb48e (macOS) Made the application work properly on high DPI displays. 2021-05-02 12:35:16 +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 e0e1a05f1e A transition now always takes place to the System view when changing theme sets.
Also fixed an issue where the camera would not move until after the menu was closed.
2021-04-05 10:05:08 +02:00
Leon Styhre 4ff95c4ddf (Unix) Changed the default installation prefix from /usr/local to /usr on Linux.
Also changed the prefix on NetBSD from /usr/local to /usr/pkg.
2021-04-02 12:12:49 +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 083e0a12e9 Improved launching of Steam games by keeping ES-DE running in the background. 2021-03-24 20:13:33 +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 980a23d083 Moved some function definitions from Window.h to Window.cpp 2021-03-21 16:10:09 +01:00
Leon Styhre 1ae88c93d7 Made the navigation sounds loading more robust to handle incomplete theme sets.
Also improved some log messages related to the navigation sounds.
2021-03-21 15:42:13 +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 330a539241 Made a Windows-specific fix for the white screen flashing during startup. 2021-03-20 08:52:08 +01:00
Leon Styhre cd19ef7b16 Properly fixed the white screen flash seen on application startup. 2021-03-19 20:05:34 +01:00
Leon Styhre 924b3ac033 Fixed a memory leak in Settings. 2021-03-19 18:40:37 +01:00
Leon Styhre b90ab39cb7 Fixed a memory leak related to the navigation sounds. 2021-03-19 18:37:56 +01:00
Leon Styhre 08e6f1b0dd Fixed some minor memory leaks in UIModeController, InputManager and Font. 2021-03-19 18:34:10 +01:00
Leon Styhre adaec71f5b Some minor code cleanup. 2021-03-19 18:25:37 +01:00
Leon Styhre 87e6837980 Complete overhaul of VolumeControl with fixes for some related bugs. 2021-03-18 21:55:56 +01:00
Leon Styhre 60ee29f2ea Fixed an issue where the fallback screensaver would not fade in correctly. 2021-03-18 20:07:07 +01:00
Leon Styhre 5f727f8c00 Improved the scaling of the scanline shader in relation to screen resolution. 2021-03-18 19:52:48 +01:00
Leon Styhre a46222030c Added an option to disable the blurring of the background when opening menus. 2021-03-18 19:46:45 +01:00
Leon Styhre ded5b1d29b Greatly improved the shader post processing code and fixed some related bugs. 2021-03-17 20:29:43 +01:00
Leon Styhre f08b434bc6 Fixed two regressions that could lead to crashes. 2021-03-17 20:16:22 +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 d041bda5cf (Windows) Fixed two MSVC compiler warnings. 2021-03-15 17:22:45 +01:00
Leon Styhre f35e3c2e65 (Windows) Fixed the symbolic link support. 2021-03-15 17:18:33 +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 79d9150f65 Very minor code cleanup. 2021-03-14 09:36:50 +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 dd851bee40 Added the ability to GuiMsgBox to change the text of an open dialog.
Also added an option for whether to delete the dialog when calling a function mapped to a button.
2021-03-09 17:30:50 +01:00
Leon Styhre 172182a4e8 Fixed an issue where long words would sometimes render partly outside the designated text area. 2021-03-09 17:19:26 +01:00
Leon Styhre 6a57a44df9 Improved the sizes of some menu GUI elements on 4:3 aspect ratio displays. 2021-03-09 17:17:33 +01:00
Leon Styhre 7f4179f327 Set the default controller button graphics to Xbox for the input configurator. 2021-03-02 17:34:10 +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 74c7254c6a Fixed an issue where MAME BIOSes and devices would sometimes not get filtered. 2021-02-28 16:36:42 +01:00
Leon Styhre b44a21dc5a (Unix) Added a menu option to enable or disable the desktop compositor. 2021-02-22 21:13:06 +01:00
Leon Styhre 3922fdd40a Improved the logging when there are issues with invalid theme XML files. 2021-02-08 20:53:39 +01:00
Leon Styhre 0fe853fcb8 Added the Ubuntu Condensed font to handle some rare special characters. 2021-02-07 14:29:54 +01:00
Leon Styhre 72fcef8428 Made the delimited string functions in StringUtil more general. 2021-02-06 09:30:05 +01:00
Leon Styhre b1b58fe90c Added some additional error logging. 2021-02-01 22:06:28 +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
Leon Styhre 392ca21adb Improved the knob position calculation for SliderComponent. 2021-02-01 00:07:15 +01:00
Leon Styhre 4556a0c71a The video player is now stopped before attempting to remove media files. 2021-01-31 20:51:24 +01:00
Leon Styhre 4305c211eb (Windows) Fixed an issue where directory deletions would be incorrectly reported as failed. 2021-01-31 20:30:43 +01:00
Leon Styhre c63fc39e8d Added a function to delete directories. 2021-01-31 19:55:57 +01:00
Leon Styhre 74ba7d0590 The 'Gamelist on startup' setting now shows the full system names. 2021-01-30 15:52:10 +01:00
Leon Styhre dc3a936595 Yet another attempt to get libVLC to reliably set the audio volume. 2021-01-29 21:46:48 +01:00
Leon Styhre 8f1108583c Fixed an issue where GuiMsgBox would not look correct on high resolution displays. 2021-01-29 19:55:27 +01:00
Leon Styhre 39e8e33733 Fixed a cosmetic menu scrolling alignment issue. 2021-01-29 17:59:05 +01:00
Leon Styhre f949d8dde0 Fixed a Clang compile error. 2021-01-28 21:16:03 +01:00
Leon Styhre cc22a1fa16 (Windows) Forward slashes are now converted to backslashes for the console log output. 2021-01-28 20:24:56 +01:00
Leon Styhre 0974e7b593 Replaced the main application font. 2021-01-28 20:06:12 +01:00
Leon Styhre 4d8b0deb9b Added support for converting two-byte Unicode characters to uppercase and lowercase. 2021-01-28 19:38:27 +01:00
Leon Styhre e482b45ca4 Added better support for RetroArch installed as Flatpak. 2021-01-25 18:17:55 +01:00
Leon Styhre 969be161d9 Some minor log output changes. 2021-01-25 18:15:01 +01:00
Leon Styhre ec5f1c1b5f Fixed the annoying white screen flashing when starting the application. 2021-01-25 18:11:18 +01:00
Leon Styhre 8f32be00b4 Some general code cleanup. 2021-01-25 18:07:11 +01:00
Leon Styhre 4d2ef89864 Added multi-monitor support. 2021-01-24 23:44:50 +01:00
Leon Styhre f7207edca5 (Windows) Fixed an issue with reliably launching games. 2021-01-24 13:51:40 +01:00
Leon Styhre 88235a0f06 Started to add support for multi-monitor setups. 2021-01-24 12:03:44 +01:00
Leon Styhre 38b30bf353 (Windows) Log output hack to indiscriminately replace forward slashes with backslashes. 2021-01-24 11:50:53 +01:00
Leon Styhre 632dcbfcd5 Removed log output only needed for testing purposes. 2021-01-23 20:52:25 +01:00
Leon Styhre c16a6d9bc4 Fixed an issue with flickering and potential crashes when starting to play gamelist videos. 2021-01-23 20:26:53 +01:00
Leon Styhre 0b5d9cfc52 Adjusted the time needed to reach the highest scrolling tier. 2021-01-23 16:42:58 +01:00
Leon Styhre 8173ccda80 Moved the first character extraction function to StringUtil. 2021-01-23 16:25:53 +01:00
Leon Styhre 0dfe52586c Fixed an issue with adjusting SliderComponent values using the controller D-pad. 2021-01-23 15:43:48 +01:00
Leon Styhre 97a6558472 (Windows) Made the application have the correct fullscreen size on high DPI displays. 2021-01-21 21:52:28 +01:00
Leon Styhre 5b31c9dedc Updates to the CMakeLists.txt files. 2021-01-21 21:44:51 +01:00
Leon Styhre e4f440ca9a Fixed a graphical glitch caused by inaccurate rounding. 2021-01-19 21:50:14 +01:00
Leon Styhre a68bdcec30 Fixed two MSVC compiler warnings. 2021-01-19 00:26:02 +01:00
Leon Styhre 66e1c4e897 Improved the speed consistency for ScrollableContainer. 2021-01-19 00:11:02 +01:00
Leon Styhre 90f4c29048 Changed a cast from C style to C++ style. 2021-01-18 00:19:27 +01:00
Leon Styhre 80d29978b8 Minor update to the ThemeData log output. 2021-01-17 22:33:02 +01:00
Leon Styhre e68c8f1db3 ScrollableContainer now takes the font size into consideration for adjusting the scrolling speed. 2021-01-17 22:02:22 +01:00
Leon Styhre 7b19b2cc6b Improved some log output in ThemeData. 2021-01-17 21:52:34 +01:00
Leon Styhre 6e4b26daae Multi-scraper no longer jumps to the main menu after finished scraping. 2021-01-17 12:21:33 +01:00
Leon Styhre 8b18022752 Adjusted the game description text scrolling parameters. 2021-01-17 10:17:41 +01:00
Leon Styhre b6e29d503c Changed the default VRAM limit to 256 MiB. 2021-01-17 10:15:17 +01:00
Leon Styhre 632d11e46f Minor code update. 2021-01-16 23:01:13 +01:00
Leon Styhre ef25c675f7 Fixed an issue where separator lines would not get rendered on lower resolutions. 2021-01-16 22:55:38 +01:00
Leon Styhre 9589778107 Fixed an issue where separator lines would not be rendered correctly. 2021-01-16 22:52:10 +01:00
Leon Styhre b5b70a4931 Increased the font texture buffers to avoid crashes when running at low resolutions. 2021-01-16 20:56:14 +01:00
Leon Styhre a3c2f831c8 Clamped the scale factor in NinePatchComponent to avoid artifacts for extreme screen resolutions. 2021-01-16 20:53:09 +01:00
Leon Styhre 3c0f62b1be Fixed a text string abbreviation issue in GuiComplexTextEditPopup. 2021-01-16 19:22:23 +01:00
Leon Styhre 69fa54f61a Fixed two MSVC compiler warnings. 2021-01-16 18:13:00 +01:00
Leon Styhre 09e5095a08 Fixed an issue where large text sizes at high resolutions would crash the application. 2021-01-16 18:05:48 +01:00
Leon Styhre 8dc23e2114 Made BusyComponent scale properly on high resolution displays. 2021-01-15 20:27:54 +01:00
Leon Styhre 755df0b10d Removed a deprecated function from NinePatchComponent. 2021-01-15 20:26:33 +01:00
Leon Styhre b0bd77eb7f Log output improvement for TextureData. 2021-01-15 20:09:01 +01:00
Leon Styhre f212a85b23 Fixed scaling of GridTileComponent on high resolution displays. 2021-01-15 19:25:44 +01:00
Leon Styhre db1a97dd85 Made SliderComponent scale properly on high resolution displays. 2021-01-15 19:06:53 +01:00