Commit graph

1629 commits

Author SHA1 Message Date
Leon Styhre da4462c5a6 Made it possible to directly launch files inside directories that are interpreted as files. 2022-04-22 21:01:58 +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 8cda342ec3 Small update to the man page. 2022-04-19 17:31:07 +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 277a729a2d Cleaned up the CMake configuration. 2022-04-19 17:24:54 +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 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 7daf69092f Added theme support for controlling the TextListComponent collection indicators. 2022-04-15 21:20:43 +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 fd5e618296 (macOS) Updated FFmpeg to 5.0 and SDL to 2.0.20. 2022-04-15 11:30:41 +02:00
Leon Styhre 86c67ad256 (Windows) Updated FFmpeg to 5.0 and SDL to 2.0.20. 2022-04-15 11:13:15 +02:00
Leon Styhre f801538d3e Removed an implicit directory setting from the Flatpak manifest file. 2022-04-14 10:36:42 +02:00
Leon Styhre fa0895ed72 Removed some unnecessary cleanup from the Flatpak manifest file. 2022-04-14 09:41:40 +02:00
Leon Styhre 5585dd4f46 Removed some unnecessary libraries from the Flatpak manifest file. 2022-04-14 09:27:49 +02:00
Leon Styhre c094b118e0 Updated the Linux AppData file for the 1.2.2 release. 2022-04-13 20:15:16 +02:00
Leon Styhre d78f7d5d71 Updated the FFmpeg build flags and added some license files. 2022-04-13 19:31:12 +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 37e2564ff7 Fixed an issue where the slideshow screensaver with a single custom image would hang the application. 2022-04-12 20:47:25 +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 ea2c4444b0 Added platform and scraper support for PICO-8 game engine. 2022-04-10 12:50:03 +02:00
Leon Styhre 65c940f764 Added missing scraper entries for samcoupe and zx81 for TheGamesDB and zmachine for ScreenScraper. 2022-04-10 12:37:04 +02:00
Leon Styhre 4859f0c980 neogeocd is now scraped specifically as 'Neo Geo CD' instead of the more general 'Neo Geo'. 2022-04-10 12:13:35 +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 4e13739e58 Updated the download links and documentation for the 1.2.2 release. 2022-04-07 19:29:00 +02:00
Leon Styhre 9802538464 Changed a system loading log entry from warning to debug level. 2022-04-05 17:50:47 +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 90f3f6cb07 Fixed an issue where the folder metadata fields were not loaded correctly. 2022-04-05 17:21:47 +02:00
Leon Styhre f8bd60ceec Fixed an issue where the game systems were not sorted correctly. 2022-04-04 23:18:10 +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 960a23ddc3 Added a file pointing to the latest Steam Deck AppImage (used by www.emudeck.com). 2022-04-02 11:52:48 +02:00
Leon Styhre c70d2d6368 Added fallback for high resolution wheel image for ScreenScraper if no regular wheel image was found. 2022-04-01 18:07:21 +02:00
Leon Styhre 1026187278 Updated the Linux AppData file for the 1.2.1 release. 2022-03-30 17:01:55 +02:00
Leon Styhre 7e0df9063c Fixed a crash on startup if no games were found. 2022-03-28 17:47:34 +02:00
Leon Styhre 03c06bc306 Added a Flatpak manifest file. 2022-03-26 19:15:56 +01:00
Leon Styhre b96f6bc131 Fixed an issue where a default primary component was not set in GamelistView. 2022-03-25 21:50:50 +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 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 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 7bdce3f4a3 Reverted the dim value for the screensaver. 2022-03-15 00:09:58 +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 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 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 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 6ffd4b1740 Multiple improvements to the fade transitions in SystemView. 2022-03-11 23:20:27 +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 60213003b1 (Windows) Fixed some incomprehensible compiler errors. 2022-03-05 22:12:50 +01:00
Leon Styhre ecdbf6d3d5 Added GIF animation support to SystemView.
Also improved some rendering logic in SystemView.
2022-03-05 21:10:40 +01:00
Leon Styhre 46fd4ce5cc Added GIF animation support to GamelistView. 2022-03-05 21:04:22 +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 32349dc9a6 Renamed LottieComponent to LottieAnimComponent. 2022-02-23 21:54:57 +01:00
Leon Styhre a6b1a8844d Made the emulator wildcard support work on Windows. 2022-02-21 19:14:41 +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 d0b773a8ce The emulator name is now displayed if it's not found during game launch. 2022-02-20 21:28:23 +01:00
Leon Styhre b9f5b03005 Changed the version from 1.3.0-alpha to 2.0.0-alpha 2022-02-20 20:00:51 +01:00
Leon Styhre 46eec8ead6 (Windows) Fixed another compile error. 2022-02-20 18:54:38 +01:00
Leon Styhre c4843b3b1d (Windows) Fixed a compile error. 2022-02-20 18:49:35 +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 992c39d3a3 Added Lottie animation support to SystemView. 2022-02-19 22:46:52 +01:00
Leon Styhre c06dea5d2d Lottie animations are now paused during view transitions. 2022-02-19 22:44:02 +01:00
Leon Styhre 29514d4db9 Added video support to SystemView. 2022-02-19 21:22:46 +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 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 57a594225a Added initial game selector support to SystemView. 2022-02-13 22:30:03 +01:00
Leon Styhre 81b819a96a Fixed some incorrect debug log messages in GamelistFileParser. 2022-02-13 20:06:35 +01:00
Leon Styhre afa6221582 Fixed a potential crash in GamelistBase. 2022-02-13 20:05:32 +01:00
Leon Styhre cc8123f5a6 Added a GameSelectorComponent for displaying game media in SystemView. 2022-02-13 20:03:34 +01:00
Leon Styhre 0d799575ca Fixed an issue where the logo text was incorrectly displayed for legacy themes. 2022-02-13 12:39:17 +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 8103bef3b8 Fixed a minor animation glitch in the gamelist view.
Also removed the explicit setDisplayRelative() call which made it impossible to override this theme setting.
2022-02-12 17:50:44 +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 85cb10d71a Changed some string::compare functions to == operators.
Also removed an unused theme property.
2022-02-11 18:39:16 +01:00
Leon Styhre 28a3beb9ce ScrollableContainer parameters are now themeable. 2022-02-10 20:02:56 +01:00
Leon Styhre bdbc0580d2 Added two more theme system variables. 2022-02-09 23:10:45 +01:00
Leon Styhre 59f9791efe Added new theme system variables for differentiating between collections and non-collection systems. 2022-02-09 23:00:15 +01:00
Leon Styhre b9e9178169 Fixed multiple issues in CarouselComponent. 2022-02-09 18:22:06 +01:00
Leon Styhre 98e265413e Removed some unnecessary legacy gamelist code. 2022-02-09 18:19:01 +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 0bd38ba26c Updated SystemView for non-legacy carousel theming. 2022-02-06 20:36:06 +01:00
Leon Styhre 3ceecdc793 Added metadata property support for the SystemView text fields. 2022-02-06 20:13:53 +01:00
Leon Styhre 6d01e85885 Reshuffled some functions in SystemView. 2022-02-06 14:55:48 +01:00
Leon Styhre b5d49e9b43 Migrated the carousel code from SystemView to CarouselComponent. 2022-02-06 14:01:40 +01:00
Leon Styhre d564a234c1 Implemented a better legacy theme detection in GamelistView. 2022-02-06 13:58:50 +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 d414c3b845 Removed some unnecessary functions in SystemData. 2022-01-30 21:53:22 +01:00
Leon Styhre 872aaf6b48 Preliminary update to SystemView for the new theme engine. 2022-01-30 21:16:03 +01:00
Leon Styhre db05fb3800 Fixed an issue where an extra game image could be shown for legacy themes. 2022-01-30 20:00:49 +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 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 098cde5f98 Pointless change to silence a GCC compiler warning. 2022-01-22 21:50:42 +01:00
Leon Styhre 62d5c1e656 Rewrote the gamelist logic for the new theme engine.
Also split out all legacy mode (backward compatibility) functions to a separate header file.
2022-01-22 21:42:43 +01:00
Leon Styhre 7275f020f1 Fixed the gamelist fade-in animation which was too slow. 2022-01-19 19:30:11 +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 4e444c369c Made the new gamelist code work correctly for the detailed view style. 2022-01-18 21:09:06 +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 ec0a7ad2f1 Added the preliminary GamelistBase and GamelistView classes. 2022-01-18 17:14:17 +01:00
Leon Styhre 50db59a6f6 Updated the include guards for UIModeController. 2022-01-17 21:59:00 +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 2ebfb45bdf Some minor code cleanup. 2022-01-17 20:47:30 +01:00
Leon Styhre a6be6225d8 Renamed SystemScreensaver to Screensaver. 2022-01-17 18:43:29 +01:00
Leon Styhre acd18bd1f8 Very minor change to the command line --help output. 2022-01-17 18:35:03 +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 d343e785af Fixed an issue with scraping fan art images using ScreenScraper. 2022-01-15 18:14:11 +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 3fd060dc4f Fixed an issue where some media files were sometimes not removed when clearing games. 2022-01-14 21:17:00 +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 cd2ef3d179 Fixed an issue where custom collections could get the wrong sort order after metadata changes. 2022-01-14 17:27:42 +01:00
Leon Styhre 73beeeaeaf Fixed two Emscripten compiler warnings. 2022-01-13 20:07:04 +01:00
Leon Styhre 750ee07351 Improved the structure of main.cpp
Also partially added support for Emscripten.
2022-01-12 21:38:37 +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