Commit graph

775 commits

Author SHA1 Message Date
Leon Styhre b335901ee6 Disabled non-blurred backgrounds when rotating screen 90 or 270 degrees. 2023-02-21 18:39:56 +01:00
Leon Styhre c2790f5c2f Added a dummy entry for prerelease update checks if running a prerelease. 2023-02-21 18:26:53 +01:00
Leon Styhre 0d128a919c Fixed a memory leak in GuiMenu. 2023-02-20 17:49:46 +01:00
Leon Styhre 270351b033 Added an application updater that checks for new releases on startup. 2023-02-18 12:42:19 +01:00
Leon Styhre 43a18146d5 (Windows) Fixed some MSVC compiler warnings. 2023-02-18 11:55:36 +01:00
Leon Styhre 14ac905e09 Avoided some SVG rasterization attempts before the image size was set for some built-in assets. 2023-02-15 23:58:50 +01:00
Leon Styhre ed94a5b45b Added a menu option to retain extra MAME name information for unscraped game names. 2023-02-14 17:28:43 +01:00
Leon Styhre efe1f97e8e Added a GuiThemeDownloader skeleton. 2023-02-13 20:38:23 +01:00
Leon Styhre 8242fe1345 Fixed a Clang compiler warning. 2023-02-12 22:19:41 +01:00
Leon Styhre 7f70196f65 Changed a scraper log message from error to info. 2023-02-12 22:16:29 +01:00
Leon Styhre 260c1da574 Fixed some minor layout issues in GuiMetaDataEd when running on a vertically oriented screen. 2023-02-11 13:22:08 +01:00
Leon Styhre 3cb0b6a644 Added the ability to set the scraper retry count and timer settings from the user interface. 2023-02-11 12:32:51 +01:00
Leon Styhre 4dc4b9ef02 Made some improvements to the layout when running on a vertically oriented screen. 2023-02-10 17:29:48 +01:00
Leon Styhre e663a717f0 Added support to the scraper for automatically retrying on errors. 2023-02-10 17:24:50 +01:00
Leon Styhre a2e400dd2b Multiple layout improvements when running in vertical screen orientation.
Also cleaned up some code.
2023-02-10 00:25:22 +01:00
Leon Styhre 33bca1b0d3 Made many improvements to GUI sizing and positioning when running in vertical screen resolutions. 2023-02-07 18:51:04 +01:00
Leon Styhre b33c7603bb Added support for rotating the application screen contents 0, 90, 180 or 270 degrees.
Also improved post processing shader rendering when running in vertical orientation.
2023-02-06 23:38:35 +01:00
Leon Styhre 864d88ec8a Removed an unnecessary reload when switching theme sets.
Also removed a leftover debug message.
2023-02-03 19:50:50 +01:00
Leon Styhre 9dab1557ca The theme transitions menu entry is now grayed out if there are no transitions to choose between. 2023-02-01 20:00:36 +01:00
Leon Styhre 26860cd5cc Added a menu option to enable or disable theme variant triggers. 2023-01-31 19:26:39 +01:00
Leon Styhre b17b7194a6 Fixed a small vertical positioning issue for the main menu. 2023-01-24 18:30:04 +01:00
Leon Styhre 071c4d22ce Fixed an issue where the gamelist options menu entry to add/remove games was included when it shouldn't. 2023-01-24 18:25:56 +01:00
Leon Styhre bc4c9120d6 Fixed multiple issues where gamelist filtering didn't work correctly when applied to folders. 2023-01-24 18:23:35 +01:00
Leon Styhre 65dd65029b Fixed an issue where folder metadata was sometimes included in the filter index. 2023-01-24 18:20:05 +01:00
Leon Styhre 7196ed9088 Fixed a use after free issue in GuiScraperMulti. 2023-01-23 21:30:09 +01:00
Leon Styhre d15927c156 Removed some unnecessary help prompt reload logic. 2023-01-22 18:16:49 +01:00
Leon Styhre a982dce328 Changed the PlayStation 3 controller type to PlayStation 1/2/3 2023-01-21 13:45:54 +01:00
Leon Styhre 480263160d Added a Switch Pro controller type. 2023-01-21 12:58:16 +01:00
Leon Styhre c5507f5f80 Added a PlayStation 3 controller type. 2023-01-21 11:02:32 +01:00
Leon Styhre 623540dd35 Added support for specifying a theme name in the capabilities.xml file. 2023-01-20 18:37:32 +01:00
Leon Styhre 8273cb5a8f Changed 'Theme transition animations' to 'Theme transitions'. 2023-01-16 22:43:56 +01:00
Leon Styhre 9f5b64f58d Fixed an issue reported by UndefinedBehaviorSanitizer. 2023-01-16 17:24:51 +01:00
Leon Styhre a483a34ff2 Fixed an issue where the custom collections editing mode would not end when switching UI modes.
Also removed some unused code in GuiMenu.
2023-01-14 20:09:52 +01:00
Leon Styhre 3bbc761c8f Added the ability to control the system name suffix from the theme configuration.
Also removed the corresponding 'Show system names in collections' menu option.
2023-01-14 14:05:24 +01:00
Leon Styhre 648252f639 Changed the menu entry name for the textlist quick scrolling overlay option. 2023-01-13 13:30:30 +01:00
Leon Styhre 918ffd9b9e Fixed an issue where the gamelist view would sometimes not render after changing collection settings.
Also fixed some other glitches with the cached background not getting invalidated on collection changes.
2023-01-12 20:54:12 +01:00
Leon Styhre 0329bd77c2 Added support for mixed case custom collection names as well as the option to always group custom collections.
Also reversed an optimization in CollectionSystemsManager which caused some issues.
2023-01-12 19:45:54 +01:00
Leon Styhre 688697e334 Fixed a Clang compiler warning. 2023-01-10 22:11:38 +01:00
Leon Styhre 6d3d2ddb34 Added support for 2x and 4x MSAA anti-aliasing (OpenGL renderer only). 2023-01-09 17:55:54 +01:00
Leon Styhre 656c3661ea Renamed suppressedTransitionEntries to suppressedTransitionProfiles. 2023-01-08 19:30:16 +01:00
Leon Styhre 71b4fc947a Added support for theme-controlled transition animations. 2023-01-08 17:00:36 +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 715c143324 Updated some log output text when deleting files from the metadata editor. 2022-12-14 17:44:44 +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 6bae602a81 Changed the help system text in the scraper menu from 'start' to 'start scraper'. 2022-12-05 21:40:33 +01:00
Leon Styhre fe1f408355 Changed the menu header for the gamelist options menu from 'Options' to 'Gamelist options'. 2022-12-05 21:10:26 +01:00
Leon Styhre b4338a3fb7 Refactored some image resizing functions. 2022-11-07 23:58:22 +01:00
Leon Styhre 8df54bd80e Added support for color schemes. 2022-10-31 19:32:13 +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 97a9347d67 Improved font sizing for the launch screen, scraper and help system. 2022-10-25 01:06:02 +02:00
Leon Styhre c5098a62d5 Added some error checking when downloading thumbnails in the scraper GUI. 2022-10-25 00:19:02 +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 15e30bc0ca Increased the minimum VRAM limit from 80 MiB to 128 MiB. 2022-09-27 17:43:27 +02:00
Leon Styhre 123f29aa43 Fixed multiple issues with carousel on-demand texture loading.
Also cleaned up some code.
2022-09-25 19:38:24 +02:00
Leon Styhre 748969e34d Fixed an issue where the game description would start to scroll too late when running the multi-scraper in semi-automatic mode. 2022-09-24 23:24:33 +02:00
Leon Styhre d6df68e310 Fixed an issue where the game description would not scroll in the scraper GUI. 2022-09-24 23:20:28 +02:00
Leon Styhre 9d0b3b911f Changed the argument order for the TextComponent constructor. 2022-09-24 21:37:00 +02:00
Leon Styhre 02aba10a08 Added a ScreenScraper option to remove dots from game name searches when using the automatic scraper. 2022-09-20 22:45:32 +02:00
Leon Styhre a8062de9ff Fixed an issue where a struct member variable was not initialized. 2022-09-19 23:43:47 +02:00
Leon Styhre da343c49aa Added an 'Ignore keyboard input' option to the input device settings menu. 2022-09-19 19:05:06 +02:00
Leon Styhre 0d6c4e02a6 Fixed an issue where an invalid screensaver type entry in es_settings.xml could crash the application.
Also cleaned up and modernized the overall screensaver code.
2022-09-16 19:18:43 +02:00
Leon Styhre ee2e9463a2 Fixed an issue where the rating component would be incorrectly sized in the scraper GUI at certain vertical resolutions. 2022-09-10 19:49:48 +02:00
Leon Styhre 9e9fa58cd0 Sorted the folder link selection list. 2022-09-08 21:49:57 +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 bb68e809f5 Temporarily removed greying out of the menu option 'Legacy transition style'. 2022-09-03 12:48:00 +02:00
Leon Styhre 2a83f616e6 Code cleanup of various GUIs. 2022-09-03 12:44:49 +02:00
Leon Styhre 4ade04d760 Some minor code cleanup. 2022-09-02 20:52:49 +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 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 351daf55a8 OCD update to change cURL to curl in code comments and documentation. 2022-06-29 17:22:50 +02: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 0ef6a22248 Removed the 'Enable menu scroll indicators' menu option. 2022-06-10 19:54:29 +02:00
Leon Styhre b12d9f4692 Changed the sorting in the Alternative emulators interface to use short system names instead of full system names.
Also increased the window width slightly when displaying long system names.
2022-06-03 18:32:37 +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 67023f428b Fixed a minor rounding issue which sometimes led to a slight positioning error for the menu scroll indicators. 2022-05-21 19:59:05 +02:00
Leon Styhre c1fe919e4d Fixed an issue with incorrect scroll indicators in the Alternative Emulators screen. 2022-05-21 19:52:05 +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 7b07ccb44d Fixed an issue where the 'Jump to..' quick selector wouldn't work correctly for multi-byte Unicode characters. 2022-05-09 20:21:39 +02:00
Leon Styhre defbbfd13f Removed the setting 'Preload gamelists on startup'. 2022-04-20 22:39:27 +02:00
Leon Styhre 954f1aa4f8 Added the build date to to main menu for alpha and dev builds. 2022-04-19 17:27:04 +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 963834afec Renamed 'launch file' to 'folder link'. 2022-04-12 18:35:57 +02:00
Leon Styhre 4d4ceae6c9 (Windows) Fixed a MinGW compiler warning. 2022-04-12 00:18:51 +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 b987dd9cff Fixed a row positioning issue in GuiAlternativeEmulators. 2022-04-09 20:18:53 +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 aed9c4abe5 Made ScreenScraper searches in automatic mode faster and more accurate. 2022-04-05 17:48:47 +02:00
Leon Styhre 4a511f3f4a Fixed an issue where the help system would not update properly during scraping. 2022-04-03 17:32:09 +02: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 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 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 60213003b1 (Windows) Fixed some incomprehensible compiler errors. 2022-03-05 22:12:50 +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 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 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 1cba6e202e Disabled the pillarboxes and scanline rendering menu options if using a non-legacy theme set. 2022-02-12 17:47:59 +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 2c2e624160 Changed the opacity data type and functions from unsigned char to float. 2022-02-11 22:10:25 +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 17d8f8eb5b Fixed a camera animation issue when changing theme variant or aspect ratio. 2022-02-01 00:06:40 +01:00
Leon Styhre d4f572d78d Added preliminary menu options for changing theme variants and aspect ratios. 2022-01-31 23:53:32 +01:00
Leon Styhre dc20a9e21b Cleaned up ThemeData a bit. 2022-01-23 20:03:50 +01:00
Leon Styhre a443f86235 Removed a huge amount of unnecessary Window* function arguments. 2022-01-19 18:01:54 +01:00
Leon Styhre 21b167ed9b Added support to the new gamelist classes for changing view styles.
Also removed the deprecated 'grid' view style and corresponding menu option.
2022-01-18 22:04:05 +01:00
Leon Styhre 51578903ff Replaced the legacy gamelist code with rudimentary support for GamelistBase and GamelistView. 2022-01-18 20:42:50 +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 e6c36e88c5 Moved UIModeController.cpp from the es-app/views directory to es-app 2022-01-17 21:53:23 +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 e64976d4bc Renamed GuiGameScraper to GuiScraperSingle. 2022-01-16 11:10:32 +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 c2619fd520 Added media type checks for fan art and TheGamesDB box back covers to the multi-scraper. 2022-01-15 18:29:38 +01:00
Leon Styhre 97e08922a0 Renamed GamelistFileParse to GamelistFileParser and moved it to its own namespace. 2022-01-15 14:12:56 +01:00
Leon Styhre b43c991a9d Renamed Gamelist.cpp/Gamelist.h to GamelistFileParse. 2022-01-15 13:57:08 +01:00
Leon Styhre 7323dd5dfd Renamed some GAME_LIST constants to GAMELIST. 2022-01-15 13:49:14 +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 a135edb02e Fixed multiple issues with scraping and saving metadata in GuiMetaDataEd. 2022-01-15 13:02:45 +01:00
Leon Styhre 65702b6689 Added the ability to set a sortname specifically for custom collections. 2022-01-15 11:50:51 +01:00
Leon Styhre 6ca4d6b96e Removed an unused constructor parameter for GuiMetaDataEd. 2022-01-14 23:42:52 +01:00
Leon Styhre 1fc3dfda8c Fixed an issue when changing the grouping setting for custom collections. 2022-01-14 17:29:20 +01:00
Leon Styhre 73beeeaeaf Fixed two Emscripten compiler warnings. 2022-01-13 20:07:04 +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 87ace0b8cb Changed some shared_ptr return values to use values instead of references. 2022-01-04 22:36:15 +01:00
Leon Styhre 119dfc90f8 Changed ViewController::get() to ViewController::getInstance() 2022-01-04 21:49:22 +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 2a4e7d22b8 Fixed an issue where the busy indicator would not get displayed during multi-scraping. 2022-01-03 18:44:19 +01:00
Leon Styhre 5bb009e604 Added scraper support for displaying the returned platform if it does not match the game platform. 2022-01-03 18:37:43 +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 daf66c4b60 Added proper support for interpreting directories as files. 2021-12-17 20:18:47 +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 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 de45f3d298 Fixed an issue where the launch screen would contain text rendering artifacts. 2021-12-08 19:58:50 +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 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 42c07ee4c5 Another go at fixing a crash after scraping. 2021-12-02 19:28:10 +01:00
Leon Styhre c75ce3c8b0 Fixed a missed code path for a previous crash fix. 2021-12-02 18:35:02 +01:00
Leon Styhre a794c717b6 Fixed an issue where the multi-scraper would sometimes not reload the gamelists. 2021-12-02 17:36:00 +01:00
Leon Styhre 654dc2a546 Fixed a crash that could occur when aborting the single-scraper followed by a re-scrape. 2021-12-02 17:34:30 +01:00
Leon Styhre 6e479dac74 Fixed an issue where the first scraper result row was focused when it shouldn't. 2021-11-27 11:49:56 +01:00
Leon Styhre 775674a77f The 'Custom game collections' menu entry is now grayed out if there are no custom collections. 2021-11-27 00:26:01 +01:00