Commit graph

496 commits

Author SHA1 Message Date
Leon Styhre 145cbf8df7 Enabling and disabling collections is now handled better. 2021-01-02 12:33:27 +01:00
Leon Styhre c431e5a233 Fixed an issue where the screen would go partly black during slide transitions. 2021-01-01 22:37:21 +01:00
Leon Styhre fe4e94a827 Collections are now properly initialized when enabled. 2021-01-01 17:18:04 +01:00
Leon Styhre 5e7480bfab Made re-enabling of custom collection entries work on Windows with UTF-16 support. 2021-01-01 10:28:42 +01:00
Leon Styhre 128056667d Custom collection entries are now re-enabled when changing a game to be counted as a game. 2020-12-31 21:54:32 +01:00
Leon Styhre 4dded3306c Fixed an issue where clearing a game would not update its collection entries. 2020-12-31 19:58:51 +01:00
Leon Styhre 1a4c2fc4ae Fixed an issue where flagging a game not to be counted could lead to a crash. 2020-12-31 19:44:24 +01:00
Leon Styhre 7992e39b0f Slight change of the description for the setting for audio for gamelist videos. 2020-12-31 17:56:53 +01:00
Leon Styhre 70eca0fd79 Fixed a semi-cosmetic issue when finish editing custom collections from the main menu. 2020-12-31 16:40:08 +01:00
Leon Styhre c95334756d Fixed a lot of MSVC compiler warnings. 2020-12-29 12:54:24 +01:00
Leon Styhre 963f93e0f8 Replaced the custom math functions with standard C++ functions. 2020-12-28 11:29:32 +01:00
Leon Styhre f4233db66e Small cosmetic change to the game options menu. 2020-12-25 22:50:20 +01:00
Leon Styhre 50d8c7eb30 Changed the name of the quit entry if the quit menu has been deactivated. 2020-12-25 22:49:40 +01:00
Leon Styhre 65c1e9880e Set Slide transitions as the first entry in GuiMenu. 2020-12-25 17:25:23 +01:00
Leon Styhre b249a1e9a3 Added folder indication icon when scraping a folder. 2020-12-25 15:28:19 +01:00
Leon Styhre 327676d7d7 Renamed CollectionSystemManager to CollectionSystemsManager. 2020-12-23 18:06:30 +01:00
Leon Styhre 214a7861f9 Modernized the audio handling code a bit. 2020-12-21 00:23:22 +01:00
Leon Styhre 46c178af1d Added volume controls for navigation sounds and the video player. 2020-12-20 16:41:58 +01:00
Leon Styhre b0b12591e0 (Windows) Added the %COREPATH% variable logic. 2020-12-20 14:30:31 +01:00
Leon Styhre bb3cc4d4a1 Added logic and menu option for handling invalid media files during scraping.
Also added a shortcut for defining the scraper searches and fixed an issue where games were automatically selected after refining the search.
2020-12-18 16:35:19 +01:00
Leon Styhre defb16b6da Fixed multiple issues with the UI modes (full/kiosk/kid).
Also improved the quit menu.
2020-12-17 23:45:29 +01:00
Leon Styhre ade0160ffe Made the switches slightly smaller in the metadata editor.
Also made the value 'unknown' be set for some entries when clearing them individually in the metadata editor.
2020-12-17 20:49:20 +01:00
Leon Styhre debf072a0e Rewrote some code from C to C++ 2020-12-16 23:59:00 +01:00
Leon Styhre 605aa4ba8e Moved the favorite and folder character constants to a more logical location. 2020-12-16 21:19:48 +01:00
Leon Styhre ab2b29f398 Scraping using ScreenScraper now always shows the ratings in the GUI. 2020-12-16 19:03:05 +01:00
Leon Styhre e6f16be221 Fixed an issue with refining ScreenScraper searches for arcade games.
Also did a tiny cosmetic code change in Window.cpp.
2020-12-16 18:46:38 +01:00
Leon Styhre 29abe2dc8c Removed the deprecated PowerSaver. 2020-12-16 17:57:10 +01:00
Leon Styhre 0c7e02e6f4 The scraper filter setting is now retained throughout the program session. 2020-12-16 17:35:23 +01:00
Leon Styhre 98d99ef8bb Added support for graying out menu entries via switch callbacks. 2020-12-15 18:49:43 +01:00
Leon Styhre 024e073e86 Added support for %COREPATH% variable and reverted to a single Unix es_systems.cfg template file. 2020-12-15 18:42:38 +01:00
Leon Styhre e752904ab1 Added logic to retrieve default setting values. 2020-12-14 17:25:41 +01:00
Leon Styhre 0b6dce687e Changed to C++ casts throughout the application. 2020-11-17 23:06:54 +01:00
Leon Styhre 635e7d2cdd Added a menu option to enable and disable video pillarboxes.
Also did some general code cleanup of VideoVlcComponent.
2020-11-17 17:20:25 +01:00
Leon Styhre 2220787c3b Fixed multiple issues with view transitions. 2020-11-16 17:44:33 +01:00
Leon Styhre 858b20bcc1 Fixed some weird camera movements when using the slide transition style. 2020-11-15 22:54:39 +01:00
Leon Styhre 0a6e1f280f Improved transitions for SystemView. 2020-11-15 20:06:33 +01:00
Leon Styhre 4fb12a4801 Fixed an issue where the wrong thumbnail could be displayed in the scraper. 2020-11-14 20:46:08 +01:00
Leon Styhre 2b189f9d19 Fixed an issue where the game image would sometimes not refresh after scraping. 2020-11-14 17:18:00 +01:00
Leon Styhre e5fcb51f57 Added support for multiple search results for ScreenScraper.
Also fixed some other scraping issues and added some additional scraper logging.
2020-11-14 15:30:49 +01:00
Leon Styhre 53cacd5eac Renamed VideoPlayerComponent to VideoOmxComponent. 2020-11-12 17:40:06 +01:00
Leon Styhre 00ba2e78ab Improvements to the screensaver and game overlay.
Also added functionality to jump to a game from the screensaver (without launching it).
2020-11-12 17:13:24 +01:00
Leon Styhre 9bea6bb17e Added a game info overlay to the screensaver.
Also refactored Window and SystemScreensaver and added a fade-in effect for the shaded background when opening menus.
2020-11-12 00:46:59 +01:00
Leon Styhre bbb2aa5217 Overhaul of the screensaver. 2020-11-10 22:18:20 +01:00
Leon Styhre 7b30e0172b Single byte commit. 2020-11-10 00:02:09 +01:00
Leon Styhre db94f5daee Fixed multiple issues with filters and the gamelistInfo field. 2020-11-09 23:41:27 +01:00
Leon Styhre f17bf43d4f Added a menu entry and functionality to delete custom collections. 2020-11-09 17:50:02 +01:00
Leon Styhre 3aa10177cf Fixed multiple issues with hidden games. 2020-11-08 18:33:28 +01:00
Leon Styhre cfad51fdb4 Added the ability to filter on game names. 2020-11-08 16:34:33 +01:00
Leon Styhre 61998ac1a3 Added a shortcut to the scraper in the metadata editor. 2020-11-08 13:24:34 +01:00
Leon Styhre f1f0596fe1 Added support for user accounts for ScreenScraper. 2020-11-07 15:34:15 +01:00
Leon Styhre 9f747e161d Rewrote collection settings to the new settings logic. 2020-11-06 20:27:41 +01:00
Leon Styhre 72a077d6f2 Renamed GuiGeneralScreensaverOptions to GuiScreensaverOptions. 2020-11-05 18:35:08 +01:00
Leon Styhre bbe85b2707 Removed deprecated GuiScreensaverOptions, GuiSlideshowScreensaverOptions and GuiVideoScreensaverOptions. 2020-11-05 18:25:05 +01:00
Leon Styhre 1a6bec2e3b Overhaul of settings code. 2020-11-05 18:18:11 +01:00
Leon Styhre 893dee2bab Added option to disable the favorite game toggling shortcut.
Also modified some setting descriptions and updated the corresponding documentation.
2020-10-31 10:01:19 +01:00
Leon Styhre 005952addf Rewrote and moved the quick selector letter index generation. 2020-10-30 18:34:05 +01:00
Leon Styhre 07efcd19d0 Simplified the detection of grouped custom collections. 2020-10-30 10:12:15 +01:00
Leon Styhre b9301f08da Added indication icons when editing custom collection to show what games are already part of the collection. 2020-10-28 17:49:50 +01:00
Leon Styhre df0c88d1b1 Simplified the onFileChanged() function and made some related optimizations. 2020-10-27 19:07:35 +01:00
Leon Styhre 15a9f73375 Fixed an issue where it was impossible to reset the gamelist filters. 2020-10-27 18:51:31 +01:00
Leon Styhre f9ceeb0753 Fixed an issue with changing settings while editing a custom collection. 2020-10-26 18:39:27 +01:00
Leon Styhre 8ec7301f4b Fixed an incorrect menu entry when editing custom collections. 2020-10-26 18:35:52 +01:00
Leon Styhre 01cf401d8f Added menu options to disable the favorite star markings. 2020-10-25 21:29:54 +01:00
Leon Styhre e51c7ddf8c Made filters applicable per custom collection (if grouped). 2020-10-25 18:55:01 +01:00
Leon Styhre 127d900212 Changed to case insensitive sorting of the custom collections. 2020-10-22 21:23:16 +02:00
Leon Styhre 1a0b2f8bb7 Multiple improvements to the handling of custom collections.
Also improved the random game and random system functions.
2020-10-21 21:56:31 +02:00
Leon Styhre eb99e3edeb Removed an incorrect help entry for the scraper error dialog. 2020-10-20 21:43:01 +02:00
Leon Styhre 4831279543 Fixed an issue where changing view style did not invalidate the cached background. 2020-10-20 21:10:23 +02:00
Leon Styhre 87bd205a3f Multiple improvements and bugfixes to the custom collections handling. 2020-10-20 21:01:24 +02:00
Leon Styhre e310066f34 Changed the order of two entries in GuiScraperMenu. 2020-10-19 21:05:04 +02:00
Leon Styhre 46520202f7 Changes to custom collections are now immediately written to disk. 2020-10-19 20:58:00 +02:00
Leon Styhre c9cc8494c9 Fixed an issue where gamelist changes would sometimes not be written to disk. 2020-10-19 17:16:57 +02:00
Leon Styhre 82759fb2ce Fixed a race condition for the libcurl cleanup which led to a memory leak. 2020-10-18 11:41:36 +02:00
Leon Styhre 923d1df479 Fixed a libcurl memory leak in the scraper. 2020-10-18 11:01:56 +02:00
Leon Styhre 35c7c7ec09 Removed deprecated code for handling video subtitles. 2020-10-17 16:06:48 +02:00
Leon Styhre 930bdce576 Fixed multiple issues reported by the Clang static analyzer. 2020-10-17 14:05:41 +02:00
Leon Styhre 2768380446 Fixed several errors reported by Valgrind. 2020-10-11 18:57:37 +02:00
Leon Styhre eb51877aab Fixed an issue where the cached background would sometimes not be updated. 2020-10-11 10:07:38 +02:00
Leon Styhre 70f7382680 Fixed a memory leak for GuiInfoPopup notifications. 2020-10-11 09:59:49 +02:00
Leon Styhre 96da134f7d Added option to scrape based on the metadata name. 2020-10-10 13:05:12 +02:00
Leon Styhre 965f96bbc8 Fixed a sorting issue when clearing game metadata.
Also a small documentation update and a file permission change.
2020-09-27 18:37:43 +02:00
Leon Styhre 6e2c8d4f32 Fixed an issue with the quick selector when folders were sorted on top. 2020-09-27 13:39:37 +02:00
Leon Styhre 4e9c1361be Fixed two additional instances where video would start playing when it shouldn't. 2020-09-27 13:14:50 +02:00
Leon Styhre 54ea153d93 Game systems are now sorted by their full names. 2020-09-27 12:49:14 +02:00
Leon Styhre 926d730bd2 Fixed an issue where videos would start playing with the menu open after scraping. 2020-09-27 12:01:43 +02:00
Leon Styhre c00374419b Fixed an issue where the gamelist would sometimes not reload after media files updates. 2020-09-27 11:41:53 +02:00
Leon Styhre 90f5d7fad4 Fixed additional issue with folder updates and gamelist sorting. 2020-09-27 11:19:55 +02:00
Leon Styhre cc6b4eb47d Fixed an issue where the gamelist was not sorted after folder metadata updates. 2020-09-27 10:51:50 +02:00
Leon Styhre 0946988fdb Added a clear button to the metadata editor. 2020-09-27 10:41:00 +02:00
Leon Styhre 304526e4c6 Added filter to scrape folders only. 2020-09-26 14:03:17 +02:00
Leon Styhre e6b43288a7 Fixed an issue where the gamelists were not sorted after multi-scraping. 2020-09-26 13:05:07 +02:00
Leon Styhre 707850b339 Added a system sorting function to SystemData. 2020-09-26 13:03:14 +02:00
Leon Styhre 8db04c5fcb Added SPDX license identifiers to all source files. 2020-09-21 19:17:34 +02:00
Leon Styhre e56fdf3df6 Improved handling and sorting of folders. 2020-09-20 20:25:32 +02:00
Leon Styhre 2b82770e43 Fixed an issue where the quick selector couldn't find out if a game was a favorite. 2020-09-20 12:36:51 +02:00
Leon Styhre d4e614c0c1 Added jump to folder to the quick selector and improved the folder sorting. 2020-09-20 12:17:38 +02:00
Leon Styhre 14e2ede448 Moved a sorting function to the proper location inside the correct class. 2020-09-17 22:18:13 +02:00
Leon Styhre ae7c9dabb8 Decreased CPU usage dramatically and fixed multiple UI navigation glitches.
Also did some code cleanup.
2020-09-15 22:57:54 +02:00
Leon Styhre d787f06c63 The cached gamelist background is now updated when using the metadata editor. 2020-09-13 19:20:30 +02:00
Leon Styhre 02c9b4fb28 Several small improvements to the video view style.
Also partly rearranged the UI menu.
2020-09-13 14:28:06 +02:00
Leon Styhre 7dea5fb7df Renamed the setting 'Open menu effect' to 'Menu opening effect'. 2020-09-13 13:46:34 +02:00
Leon Styhre 66829b4ffa Added multiple animations and effects (mostly using shaders). 2020-09-13 13:21:38 +02:00
Leon Styhre 0c1edae531 Re-enabled the back button for the video screensaver confirmation dialog. 2020-09-04 19:47:35 +02:00
Leon Styhre feb6577dbc Changed to full system name sorting for the system view and scraper selector. 2020-08-24 18:51:55 +02:00
Leon Styhre b7678007fa (macOS) Disabled reboot and power off menu entries as these require root privileges. 2020-08-23 19:17:06 +02:00
Leon Styhre 88a5962926 Changed '#ifdef' to '#if defined()' throughout the code. 2020-08-23 17:04:30 +02:00
Leon Styhre af5a48ed10 Removed unnecessary #ifdefs for the SDL2 include files. 2020-08-23 16:15:06 +02:00
Leon Styhre b0624f2bc9 Updates to make the application work correctly (more or less) on macOS. 2020-08-18 17:48:21 +02:00
Leon Styhre 7383322bac Changed scraper to always display the game name.
Some minor cosmetic changes as well.
2020-08-16 16:53:49 +02:00
Leon Styhre 1d2b9f113b Added the ability to change the ROM directory if no game files were found on startup. 2020-08-15 10:12:19 +02:00
Leon Styhre 885bf61df0 Tweaked the description and setting name for the GPU statistics overlay. 2020-08-15 09:33:08 +02:00
Leon Styhre d3d57ae69a Fixed the VRAM statistics overlay that was using megabytes instad of mebibytes. 2020-08-08 22:33:27 +02:00
Leon Styhre c9a3dbc82e Several changes related to VRAM usage and GPU statistics. 2020-08-08 15:14:33 +02:00
Leon Styhre bd57d23bce Added metadata setting to hide metadata fields from the gamelist view. 2020-08-08 11:36:43 +02:00
Leon Styhre 3ca9f5478a Fixed an issue where detection of folder-only views was not working. 2020-08-07 23:33:05 +02:00
Leon Styhre 11727a1392 Fixed an issue where the screensaver would start when it shouldn't.
Also changed so that the screensaver is reactivated after scraping only after the user has confirmed the scraping results.
2020-08-07 13:07:36 +02:00
Leon Styhre 3a59c77d3e Games marked not to be counted are now also excluded from the 'Recent' and 'Favorites' collections.
Also fixed a crash when opening the game options menu when a placeholder was selected.
2020-08-06 22:12:19 +02:00
Leon Styhre 22ed97c6d8 Fixed an issue where hiding a folder was not immediately reflected in the gamelist.
Improved the debug logging for hidden games as well and adjusted the hidden text opacity slightly.
2020-08-06 18:16:31 +02:00
Leon Styhre 408be5120c Multi-scraper folder scraping and folder scraper exclusions added.
A quick-skip shortcut was added to the multi-scraper as well and some minor changes were done to the ScreenScraper debug logging.
2020-08-06 15:12:04 +02:00
Leon Styhre 9f240394ed Added option to exclude files from the multi-scraper.
Two new scraper filters were added as well, 'Favorite games' and 'No game video'.
2020-08-06 11:27:16 +02:00
Leon Styhre c3de18dd96 Added support for scraping videos using ScreenScraper. 2020-08-05 22:38:44 +02:00
Leon Styhre 2c6bc918d6 Scraping options not supported by TheGamesDB are now grayed out in the menu.
This required some general logic to be added to disable GUI components, and this functionality could hopefully be useful elsewhere.
2020-08-05 19:31:59 +02:00
Leon Styhre 2efc5aed93 Added system name in square brackets after game file name in metadata editor. 2020-08-05 15:27:03 +02:00
Leon Styhre 939f3389d5 Improved the ScreenScraper error reporting. 2020-08-05 10:51:02 +02:00
Leon Styhre 1550c48187 Improved the input configuration logic.
Also added a command line option to force the input configuration even if a es_input.cfg file exists.
2020-08-03 11:39:04 +02:00
Leon Styhre 3ae0726d1a Improvements to the date and time handling. 2020-08-02 15:56:32 +02:00
Leon Styhre 101bdf4bfc Changed the scraped file display name from upper case to original case. 2020-08-02 12:44:33 +02:00
Leon Styhre 3f8e5a001b Changed the handling of blank game name entries in the metadata editor. 2020-08-02 11:45:59 +02:00
Leon Styhre 317719b678 Fixed an issue with the scraper error dialog. 2020-07-31 14:24:14 +02:00
Leon Styhre 8233e2704e Added metadata editor button to delete media files from games and folders. 2020-07-30 20:05:57 +02:00
Leon Styhre bd7e0e5820 Some cosmetic improvements to the scraper. 2020-07-30 16:29:38 +02:00
Leon Styhre 2371ef51bc Fixed a scraper issue where escaped HTML quotation marks were not expanded for the game description. 2020-07-30 14:54:52 +02:00
Leon Styhre 0985867d0f Fixed an issue where the quick selector would jump to the wrong folder for folder-only gamelists. 2020-07-30 13:43:04 +02:00
Leon Styhre afe5d98c39 Enabled scraping for folders and changed file info to lowercase. 2020-07-28 21:08:17 +02:00
Leon Styhre b60c86e40f Added option to sort folders on top of the gamelists. 2020-07-28 19:44:17 +02:00
Leon Styhre ce9d5c2599 Fixed the screensaver random function so it does not show the same game twice in a row.
Also fixed a bug related to audio playing for the video screensaver and changed its name from 'random video' to simply 'video'.
2020-07-28 11:10:14 +02:00
Leon Styhre 1d2901ac33 Disabled broken subtitle overlay for the video screensaver. 2020-07-27 21:41:10 +02:00
Leon Styhre 6090ff3df8 Improved handling of audio settings for video files. 2020-07-27 21:31:02 +02:00
Leon Styhre 9f0e587b1a Harmonized some screensaver options. 2020-07-27 20:38:22 +02:00
Leon Styhre 58ba42ed54 Removed scaling and CaptionsCompatibility option for the video screensaver. 2020-07-27 20:20:58 +02:00
Leon Styhre c906881957 Fixed the screensaver controls.
It's now possible to start a game directly from the slideshow screensaver. Also fixed toggling of the video screensaver which was not working as expected.
2020-07-27 16:53:54 +02:00
Leon Styhre bad9e772e9 Changed most setting values to lowercase in es_settings.cfg
Audio devices apparently need to be case sensitive.
2020-07-27 12:11:30 +02:00
Leon Styhre 329a8da441 Properly implemented hiding of games.
Also added a flag to force the Full UI mode from the command line.
2020-07-26 22:19:29 +02:00
Leon Styhre 47523ba627 Fixed an issue where entering a blank game name in the metadata editor would crash the application. 2020-07-26 15:50:40 +02:00
Leon Styhre e2bd5d05b1 Fixed an issue where hidden files would still show up if they had a gamelist.xml entry. 2020-07-26 13:58:49 +02:00
Leon Styhre a90fb33cc7 (Windows) Fixed an issue where the date was shown as unknown during scraping. 2020-07-20 10:19:15 +02:00
Leon Styhre 0a410863cb (Windows) Added a menu option to run ES in the background while a game is launched.
Suspending ES while launching a game has proven unreliable on Windows, but on some installations it works so it makes sense to let the user select it. It makes for a better and more seamless experience if it works as intended.
2020-07-19 22:08:14 +02:00
Leon Styhre 8fcb56cfb3 Made game launching on Windows much more seamless.
Also added an option to hide the taskbar.
2020-07-18 13:21:44 +02:00
Leon Styhre 10420eaac2 Removed unnecessary settings file saving when changing the default sort order. 2020-07-16 12:19:11 +02:00
Leon Styhre 2ff3dda5c8 Added configuration menu entries for the game media directory and the default sort order. 2020-07-15 18:02:11 +02:00
Leon Styhre 70d0057295 Both user changes and scraper changes are now color marked in the metadata editor.
User changes are marked with blue and scraper changes with red.
2020-07-15 17:44:27 +02:00
Leon Styhre 57d6dab2cc Some cosmetic code changes. 2020-07-13 20:58:25 +02:00
Leon Styhre 6199f7371d Made the automatic gamelist view style work with the new media handling logic. 2020-07-13 20:10:09 +02:00
Leon Styhre 472a973f66 Added %ESPATH% variable support and fixed some other minor issues with the launch command. 2020-07-10 20:58:53 +02:00
Leon Styhre 9ba4f01a29 Deactivated the audio device settings and added a new setting for custom scripts.
Also changed some other setting names.
2020-07-09 19:24:20 +02:00
Leon Styhre d1f8c3e385 Changed 'launch string' to 'launch command' and the setting 'EnableSounds' to 'EnableNavigationSounds'. 2020-07-08 17:06:34 +02:00
Leon Styhre 76aa239855 Initial update to make the application build and run on Windows.
Much more work will be needed to get the Windows port working properly.
2020-07-03 20:23:51 +02:00
Leon Styhre e4fdd1e20d Code cleanup and code documentation update.
As of this commit, the initial code cleanup and code documentation has been completed for the entire application.
2020-06-28 18:39:18 +02:00
Leon Styhre eeae8033bd Use SDL2 include files instead of those for SDL version 1.
This resolves an irritating issue in the code editor where SDL2-specific functions could't be found. Not entirely sure about the SDL include file logic for other operating systems than Linux so the #ifdef directives may need to be updated further at a later date.
2020-06-26 18:03:55 +02:00
Leon Styhre 0387d515fb Update to fully support Clang/LLVM.
Also a general cleanup of CMakeLists.txt and many small code changes to satisfy Clang that complained quite a lot and actually wouldn't compile the binary at all at first.
2020-06-25 19:52:38 +02:00
Leon Styhre 6b62065595 Large code cleanup and code documentation update.
The initial code cleanup of es-app is now complete as of this commit.
2020-06-23 20:07:00 +02:00
Leon Styhre 672026632d Code cleanup and code documentation 2020-06-22 17:27:53 +02:00
Leon Styhre 8fefc9232c Reorganized all resources to a subdirectory structure and added the CMake install prefix to the resource search path.
CMAKE_INSTALL_PREFIX and CMAKE_INSTALL_DATAROOTDIR are now used to resolve the resource path. As of this commit, there are only two paths where resources are searched, under the user home directory and under this install prefix directory (which defaults to /usr/local/share/emulationstation/resources but can be set to for instance /opt/share/emulationstation/resources using the appropriate CMake flags).
2020-06-21 19:35:43 +02:00
Leon Styhre 67aa6b3dbd Huge code cleanup and code documentation update.
Includes lots of conversions from tabs to spaces. Only cosmetic code changes in this commit.
2020-06-21 14:25:28 +02:00
Leon Styhre 49161df0e6 Renamed platform.cpp/platform.h to Platform.cpp/Platform.h
The naming convention for the rest of the application is to start the file names with a capital letter.
2020-06-21 12:26:21 +02:00
Leon Styhre 5caabcff12 Changed confirmation messages for the GuiMetaDataEd text edit popups. 2020-06-18 19:54:13 +02:00
Leon Styhre fd6fc9653b Removed deprecated GuiFastSelect. 2020-06-13 22:26:11 +02:00
Leon Styhre 4098c64468 Implemented shoulder- and triggerbutton navigation to TextEditComponent (i.e. text edit quickjumps). 2020-06-13 21:55:58 +02:00
Leon Styhre 8492160a80 Added semi-automatic scraping mode, fixed some scraping bugs and improved folder metadata editing. 2020-06-13 16:47:12 +02:00
Leon Styhre b01bccc8d6 Added Apply and Cancel buttons to the game options menu. 2020-06-13 10:48:46 +02:00
Leon Styhre f1f82ac29f Added support for jumping to the beginning and end of gamelists and menus using the left and right trigger buttons. Also fixed some navigation bugs. 2020-06-13 10:25:09 +02:00
Leon Styhre 7cefe6a2bd Moved quick selector letter index generation to gamelist sorting loop. This increases (non-optimized) sort time with around 1,5 - 4,5% but the game option GUI opens way faster now due to the caching of the letter index. Also made the quick selector more intuitive. 2020-06-11 21:08:48 +02:00
Leon Styhre 4c67dae788 Added color marking to GuiMetaDataEd for newly scraped data. 2020-06-10 19:54:37 +02:00
Leon Styhre 4a38271f6a Expanded the help system to (hopefully) the whole application, removed the completely broken command line scraper and fixed some bugs related to the game collections. 2020-06-09 20:03:31 +02:00
Leon Styhre c5e70385dd Expanded support for help system theming to entire application, as before it was only partially implemented. 2020-06-07 20:09:02 +02:00
Leon Styhre b7d4274c6e Added save confirmation dialogs to the text edit components, reorganized the scraper menu slightly and fixed a bug when toggling the screensaver. 2020-06-07 10:57:49 +02:00
Leon Styhre f5376defe0 Changed to ISO 8601 date format and tidied up the scraper search screen. 2020-06-06 22:04:05 +02:00
Leon Styhre b7feedd287 Moved all components into es-core and renamed ScraperSearchComponent to GuiScraperSearch as it's a GUI and not a component. 2020-06-06 14:14:13 +02:00
Leon Styhre 90735d44e3 Major update to scraper including support for new media handling logic, ability to download more media file types (screenshot, cover, marquee, 3D box) and an improved scraper GUI. As well a rewrite of the navigation sound code. 2020-06-06 13:10:33 +02:00
Leon Styhre fd7da08bf9 Large code cleanup and code documentation update, mostly related to the scraper. Only cosmetic changes in this commit. 2020-05-26 18:34:33 +02:00
Leon Styhre da946279de Some code cleanup and code documentation. Improvements to handling of command line arguments. 2020-05-25 21:34:42 +02:00
Leon Styhre 76c8b5f121 Reorganized the main menu. 2020-05-24 20:57:07 +02:00
Leon Styhre 810b41bdc9 A few small optimizations, some operations will be way faster now if fewer custom collections are in use. Also some sorting bug fixes and some code cleanup. 2020-05-24 14:26:08 +02:00
Leon Styhre f2f7d34bb6 Monster commit. Rewrote gamelist sorting logic and made per-gamelist sort settings session-permanent. Cleaned up a lot of code and started to reformat for 100 characters line length. 2020-05-24 10:29:29 +02:00
Leon Styhre f806285e06 Added support for per-game launch string override (emulator override), configurable in the game meta data edit screen 2020-05-19 17:53:34 +02:00
Leon Styhre 7686f87d5d Added proper Unicode star icon when jumping to favorite games using the 'Jump to...' quick selector 2020-05-17 19:30:29 +02:00
Leon Styhre 4aa30017bf Changed the version format and added proper handling of invalid command line arguments 2020-05-15 18:46:06 +02:00
Leon Styhre 3d6adf9ade Implemented a much more elegant handling of navigation sounds 2020-05-15 18:21:24 +02:00
Leon Styhre fc6183d918 Added support for jumping to favorites in the 'Jump to...' quick selector 2020-05-15 18:16:04 +02:00
Leon Styhre f5d3c8ac0b Removed code for restarting the application, fixed system reboot and power off (and changed these names), fixed some small cosmetic issues with log file output and main menu 2020-05-15 17:58:25 +02:00
Leon Styhre ffcf52c710 Made game launching more seamless and prevent minimizing of window when switching applications. Also added menu entry to choose between normal fullscreen mode and borderless fullscren mode 2020-05-15 17:51:32 +02:00
Leon Styhre 24d6a70019 Added menu options to disable system restart and system shutdown 2020-05-15 17:46:08 +02:00
Leon Styhre 1007f19bdc Added functionality to show favorites on top of the gamelists (mostly ported from batocera-emulationstation) 2020-05-15 17:42:36 +02:00
pjft 9c46f50497
Merge pull request #645 from pjft/kids-start-menu
Option to show start menu in Kids mode
2020-04-27 10:00:45 +01:00
pjft b2e71015a1 Added option to disable video screensaver audio on VLC and OMXPlayer 2020-03-28 21:01:47 +00:00
pjft 258df48481 Option to show start menu in Kids mode 2020-03-28 21:00:25 +00:00
Jools Wills 46047894f3
Merge pull request #578 from verybadsoldier/feature/save_metadata_on_change
Added an option to save meta data instantly when changed.
2019-12-18 04:06:23 +00:00
verybadsoldier a136179fc9 save also metadata that have default values. they might not had default values on start so they have to be saved 2019-12-13 21:38:01 +01:00
Tomas Jakobsson 9de16045c9 whitespace cleanup
fix faulty line endings
silence warnings on windows
2019-08-25 17:23:02 +02:00
John Rassa f0c64073db
Merge pull request #584 from tomaz82/cleanup_renderer
Cleanup renderer
2019-08-25 09:54:35 -04:00
Tomas Jakobsson a02a747c50 Redid the entire Renderer
Made all components render using triangle strips
2019-08-25 15:45:22 +02:00
Fabrice CARUSO f47fb048d5 Fix shutdown on Windows + process shutdown commands after main loop 2019-08-20 19:26:32 +02:00
John Rassa 13819ec0d9
Merge pull request #571 from cmitu/collections-label-for-system-options
Collections: make the display of system's name configurable.
2019-07-13 08:44:12 -04:00
Cristi Mitrana c84290e7fb Makes the display of system's name in Collections configurable.
* adds a new configuration option ("CollectionShowSystemInfo" = bool), in the 'Game Collections Settings' GUI. Defaults to previous behavior (true).
* reloads the Collection when the configuration is changed.
2019-07-12 10:32:01 +03:00
Dan Leach a2f59ee2fc Add Game Info Font Settings to OMX Player
Adds the ability for users to change the following features in OMX Player's subtitles (game info for screen saver).

- font size
- font file path
- italic font file path
- subtitle position

These changes can be made in the GUI menus via the Video Screen Saver menu, or directly in the es_settings.cfg file.

Safe OMX Player defaults are hard-coded into the EmulationStation application.

Here's an example of the new keys loaded/saved into in the es_settings.cfg file:

- `<int name="SubtitleSize" value="38" />`
- `<string name="SubtitleFont" value="/usr/local/share/fonts/slkscr.ttf" />`
- `<string name="SubtitleItalicFont" value="/usr/local/share/fonts/slkscrb.ttf" />`
- `<string name="SubtitleAlignment" value="center" />`
2019-06-19 18:51:32 +01:00
jrassa 72edb792d2 implement scripting support 2019-03-26 20:02:42 -04:00
Jools Wills 9af271d36f add setting for searching for local game art - defaults to off 2019-02-09 17:27:34 +00:00
acrummyidea 44395f5f45 Adding new scraper GamesDBJSONScraper. The scraper uses the new GamesDb JSON API.
On the first run it downloads a few resource files needed to intepret the otput of
game search api calls these resources go into ~/.emulatiostation/scrapers
The resource files include the list of developers and the list of publishers.
To update the lists simply delete the files and relaunch emulationstation.
Searching a game by id (GamesDB id) is done as before by manually edit the search
query and query for "id:<gameId>".
2019-02-07 21:08:11 -05:00
Cristi Mitrana ce04f7f297 Add checks for the Scraper, when the settings no longer match the list of available scrapers.
If the Scraper configured in the settings is no longer available, don't crash when running the scraper.
For single game scrapes, we show an error for the user to change the configuration.
For batch scraping, silently choose the 1st scraper available in the list
2019-01-24 20:00:19 +02:00
Keith F. Kelly a7a22e478d Clarify the DELETE button's warning text. 2018-11-28 10:55:12 -08:00
Rael Gugelmin Cunha 464b0992ad Work with dpad and analogs 2018-11-15 14:38:20 -02:00
John Rassa a57b0ecfea create new DateTimeComponent 2018-10-15 20:40:45 -07:00
John Rassa 811e2cefdc
Merge pull request #460 from tminit/custom-audio-rpi
Enhanced Audio settings
2018-08-29 22:20:49 -04:00
Tomas Jakobsson 747e400593 Allow to show hidden files on Windows
Skip hidden files earlier
2018-08-21 16:54:34 +02:00
tminit e7bc6f7006 Changed Audio settings to be much more flexible
Changed the selectable options for EmulationStation audio mixer
(called AudioDevice in EmulationStation) to be a greater range of
selectable options within Linux and RPi so that it is a lot more
flexible and will work with any aftermarket add-on audio cards and
RPi Audio HATs. Hopefully this gives people the flexibility that
they need in order to avoid the issues people have with unusual RPi
audio setups.

Added the ability to select the audio card as well, by surfacing
the audio card under the Audio Card setting. It was previously forced
to 'default' for all linux users, which was too restrictive in some
instances. This change now adds flexbility to support additional
Linux and RPi Audio Cards.

This option will only be available on Linux (and therefore RPi) as
Windows uses a different audio subsystem.

CHOOSING AUDIO ON LINUX AND RPi
You now select which ALSA Audio Card you want EmulationStation to use
by choosing the relevant AUDIO CARD option. If your one is not listed
then you can add a custom one in the es_settings.cfg file (see below).

You then select which ALSA Audio Mixer Control from that Audio Card
that you want EmulationStation to use, by choosing the relevant
AUDIO DEVICE option. (I kept the name AUDIO DEVICE as that what
EmulationStation previously used to describe an Audio Mixer.)
If your mixer name is not listed then you can add a custom one in
the es_settings.cfg file (see below).

ADDING A CUSTOM AUDIO CARD OR AUDIO DEVICE
In addition I added the ability to manually change the setting in
es_settings.cfg to add anything custom that you want. This will give
advanced users enough extra power that should avoid even the most
strange setups.

Step 1:

To add a custom Audio Card, edit the "AudioCard" setting and replace
the value with the name of your Audio Card. You can find this out by
opening a terminal window and running 'aplay -L'. This will generate a
list of Audio Cards similar to the one below:

pi@raspberrypi:~ $ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
default:CARD=sndrpijustboomd
    snd_rpi_justboom_dac,
    Default Audio Device
sysdefault:CARD=sndrpijustboomd
    snd_rpi_justboom_dac,
    Default Audio Device
dmix:CARD=sndrpijustboomd,DEV=0
    snd_rpi_justboom_dac,
    Direct sample mixing device
dsnoop:CARD=sndrpijustboomd,DEV=0
    snd_rpi_justboom_dac,
    Direct sample snooping device
hw:CARD=sndrpijustboomd,DEV=0
    snd_rpi_justboom_dac,
    Direct hardware device without any conversions
plughw:CARD=sndrpijustboomd,DEV=0
    snd_rpi_justboom_dac,
    Hardware device with all software conversions

Select any one of the Audio Cards listed by using the first word on
the line in your AudioCard settings in the es_settings.cfg, e.g.

<string name="AudioCard" value="default" />

NOTE: If the AudioCard value is not listed, please either close and
reopen EmulationStation (the settings is created upon close if it
doesn't exist), or add it manually to the es_settings.cfg file.

Step 2:

To add a custom Audio Device (mixer), edit the "AudioDevice" setting
and replace the value with the name of your Audio Device. You can get
a list off avilable Audio Devices on the Audio Card by opening a
terminal window and running 'amixer scontrols -D <AudioCard>', where
<AudioCard> is replaced with the name of your Audio Card that you
found in Step 1.  This command will generate a list of Audio Devices
(mixers) that you can use in the AudioDevice setting in the
es_settings.cfg file, e.g.

pi@raspberrypi:~ $ amixer scontrols -D default
Simple mixer control 'DSP Program',0
Simple mixer control 'Analogue',0
Simple mixer control 'Analogue Playback Boost',0
Simple mixer control 'Auto Mute',0
Simple mixer control 'Auto Mute Mono',0
Simple mixer control 'Auto Mute Time Left',0
Simple mixer control 'Auto Mute Time Right',0
Simple mixer control 'Clock Missing Period',0
Simple mixer control 'Deemphasis',0
Simple mixer control 'Digital',0
Simple mixer control 'Max Overclock DAC',0
Simple mixer control 'Max Overclock DSP',0
Simple mixer control 'Max Overclock PLL',0
Simple mixer control 'Volume Ramp Down Emergency Rate',0
Simple mixer control 'Volume Ramp Down Emergency Step',0
Simple mixer control 'Volume Ramp Down Rate',0
Simple mixer control 'Volume Ramp Down Step',0
Simple mixer control 'Volume Ramp Up Rate',0
Simple mixer control 'Volume Ramp Up Step',0

Select any one of the Simple mixer controls listed by using the
name within the quotes within the AudioDevice setting in your
es_settings.cfg file, e.g.

<string name="AudioDevice" value="Digital" />

Using the example above, the following two settings within the
es_settings.cfg file will use the 'default' Audio Card to play
sounds, and will use the 'Digital' mixer (Audio Device) to
control the volume.

<string name="AudioCard" value="default" />
<string name="AudioDevice" value="Digital" />

NOTE: Any custom manually used settings will be overwritten if you
select any of the other options in the GUI and exit the Sound
Settings window, as the Sound Settings GUI window overwrites the
es_settings.cfg options when you exit the window.

Fix latest package renames

fonts-droid is now fonts-droid-fallback
vlc-nox is now vlc-bin

Fixed up whitespacing to project tab standard

Had not paid enough attention and had accidentally provided
whitespacing in spaces rather than the project standard of
tabs. This change fixes some additional use of spaces to
ensure all the code in the two files now uses tabs.

Vero4k autodetection and volume mixer fix
2018-08-19 21:40:49 +00:00
John Rassa 401b184615
Merge pull request #435 from raelgc/431-improve-kids-mode
Improving kids mode
2018-06-04 14:17:25 -07:00
Rael Gugelmin Cunha cbc1d02b1b More restriction on kids mode (#431) 2018-05-30 22:38:19 -03:00
Koerty fef505639f Enable the grid view for everyone 2018-05-06 19:27:14 +02:00
joemommasfat ed2511e215 add sortname to gamelist.xml to sort by a different name 2018-04-24 23:07:25 -06:00
Jools Wills 4e6dcde5a5
Merge pull request #398 from pjft/fix-theme-collection-crash
Fix crash when changing theme
2018-04-01 16:46:22 +01:00
Koerty b4feb69980 Enable the grid view for developers
- Add the remove function to GridGameListView
- Enable the grid view in ViewController
- The grid view will not be available in the menu yet, but can be enable by tweaking es_settings.cfg
2018-03-27 16:11:50 +02:00
pjft a585c00744 Fix crash when changing theme from within a collection that'll no longer be present at the carousel level 2018-03-15 20:46:09 +00:00
Tomas Jakobsson 9a535d4441 Show build date and time when starting ES with --debug 2018-02-08 20:45:06 +01:00
Tomas Jakobsson 421e4a23df The final traces of boost has been eliminated 2018-01-30 19:21:09 +01:00
Tomas Jakobsson 3d3fb2c277 Switched over the last functions in Utils.cpp to Utils::String, step 3 of 5 in the quest to remove boost::filesystem 2018-01-27 18:04:28 +01:00
Tomas Jakobsson ed2eb3d4d0 Move more functionality from Util.cpp to utils/StringUtil.cpp in the quest too remove the need for boost 2018-01-27 02:12:16 +01:00
Tomas Jakobsson 7d7ebd5124 Minor misc fixes and warning silencers 2018-01-11 18:12:23 +01:00
D. Polders 1ed075a5e4 * Add ConfirmationPopUp when switching UIMode.
* Split out UIMode controller in separate class (in es-app).
* Fix passphrase input for wX360 controllers by ignoring hat-inputs
* Fix font fallback mechanism on rpi for non ascii characters using new Unicode2Chars() method.
* Fix UIMode not being saved due to popup window.
2017-11-19 00:28:36 +01:00
Tomas Jakobsson bd0c6beed5 Silence warnings 2017-11-18 23:20:09 +01:00
Tomas Jakobsson 92b73bd847 Cleaning up a lot of math functions 2017-11-14 20:09:20 +01:00
Tomas Jakobsson 9fbe95daa3 iterator -> const_iterator 2017-11-12 00:05:19 +01:00
Jools Wills a6d826a1e9
Merge pull request #293 from zigurana/UIModeConfirmationPopUp
Add confirmation popup when changing to UI mode Kid or Kiosk.
2017-11-10 03:48:24 +00:00
D. Polders df7ef94462 Add confirmation popup when changing to UI mode Kid or Kiosk. 2017-11-09 21:51:46 +01:00
D. Polders 5693e4a20c Allow JUMP TO... in case of filtered lists (such as when UIMODE != FULL).
Also add support for numbers and some symbols.
2017-11-03 12:11:11 +01:00
D. Polders 189eb05fee * Introduce KidMode: Prevent collection editing
* Introduce FileData Filtering for Kiosk and  Kid Modes to:
1. In Kiosk mode: Hide items with metadata tag `<hidden>true</hidden>`
2. In Kid mode: only show items with metadata tag `<kidgame>true</kidgame>`
* ES will auto-revert UI mode back to Full  when there is nothing at all to show.
* Changing the setting hideQuitMenuOnKidUI to true will hide this menu.
2017-11-02 21:22:41 +01:00
Tomas Jakobsson a8fc560749 Header inclusion cleanup 2017-11-02 19:16:01 +01:00
Tomas Jakobsson 44e3e39083 Add pragma once and ifndef header guards to all headers 2017-10-31 18:12:50 +01:00
Tomas Jakobsson 73a2f6b716 Replace Eigen with "inhouse" vector and matrix math 2017-10-28 22:25:01 +02:00
Jools Wills 997ee7b940
Merge pull request #271 from tomaz82/fixWarnings
Fix warnings
2017-10-28 21:10:15 +01:00
Tomas Jakobsson d3e87739e3 fix warnings 2017-10-28 22:07:31 +02:00
Jools Wills d57dee245c
Merge pull request #242 from psyke83/PSFixes
Power Saving enhancements
2017-10-28 20:18:38 +01:00
Jools Wills de42e1c2bd Merge pull request #257 from raelgc/master
Alow to select a system to go directly to the game list (Fixes #253)
2017-10-26 15:27:08 +01:00
Rael Gugelmin Cunha c1f836c713 Add an UI option to automatically load a system gamelist (Fixes #253) 2017-10-25 10:29:39 -02:00
D. Polders fd40e84ba5 Fix build warnings (mostly adding explicit type casting) 2017-10-18 16:22:27 +02:00
Conn O'Griofa 35abc91d30 PowerSaver: force-disable sounds for INSTANT profile 2017-09-28 20:37:02 +01:00
D. Polders 7a7550cde9 Introducing Kiosk UI mode, allowing users to hide menu items that might change system configuration settings. 2017-09-12 21:07:18 +02:00
sal ddf94786f4 Add image slideshow screensaver mode
This change adds an image slideshow screensaver mode with optional
background audio.  The existing menu and video screensaver have been
refactored to include this new mode.

By default, the slideshow screensaver will show images from the
game list, but it can be configured in the menu to use a custom
directory instead.
2017-09-08 21:45:50 -06:00
hex007 597128b4ee Better handle Menu width 2017-08-29 17:47:04 -07:00
pjft 7caf70a5e5 Adding slider to control screensaver swap time 2017-08-23 09:21:31 +01:00
John Rassa 230c6e4a97 Merge pull request #212 from jrassa/carousel-enhancements
carousel enhancements
2017-08-19 09:25:52 -04:00