Commit graph

681 commits

Author SHA1 Message Date
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 9f04458bbd Launching a game inside a folder now also updates the folder's last played timestamp. 2020-07-30 14:21:20 +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 5f7ffe98c8 Added metadata flag to mark whether a file should be counted as a game.
This is useful for DOS games for instance, to exclude files such as installers, setup files etc.
2020-07-29 19:01:49 +02:00
Leon Styhre 949365c822 Renamed system 'pc' to 'dos' and adjusted some graphics files. 2020-07-29 11:19:26 +02:00
Leon Styhre 3cea714f9c Updated the ScreenScraper error handling slightly.
Also added the possibility to hide a folder in the same way as a game file.
2020-07-28 23:15:35 +02:00
Leon Styhre 96ea80fbcd Fixed a small issue with missing initialization of some theme label values. 2020-07-28 21:10:58 +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 ea59d9f9c4 Fixed multiple issues with random selection of systems and games. 2020-07-28 15:19:54 +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 41c3c66eb7 (Windows) Added support for setting the root of a drive as the home folder.
This is mostly usable for portable installations, for example on a USB memory stick.
2020-07-27 14:23:40 +02:00
Leon Styhre b21dbc4ada (Windows) Improved handling of hidden files and folders. 2020-07-27 13:06:46 +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 b5485b4ca9 Changed log levels from numbers to text. 2020-07-26 23:30:45 +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 496e653ae7 Fixed an issue on Unix where hidden games folders would crash the application. 2020-07-26 15:21:41 +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 6735dd3d76 Added missing systems to PlatformId.
Also did some other small system name changes.
2020-07-25 16:18:41 +02:00
Leon Styhre c4d634670d Fixed an issue where game media files would get deleted when the recents collection was trimmed. 2020-07-24 22:15:53 +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 fb38cf9248 Fixed an issue where the screensaver would start immediately after returning from a game. 2020-07-20 09:54:38 +02:00
Leon Styhre 5e5da8c52f Fixed an issue where attempting to read nonexisting JSON data would crash the application. 2020-07-20 09:25:54 +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 34da214a8d Disabled launch animations temporarily as they don't work as expected and a proper fix is planned for later. 2020-07-19 19:53:11 +02:00
Leon Styhre 8b3d2c7ef0 Fixed a bug where SystemView wouldn't properly loop the systems. 2020-07-19 19:50:14 +02:00
Leon Styhre ebc6aabe93 Increased fade speed for the fade transition style. 2020-07-19 12:23:30 +02:00
Leon Styhre 6c79224eea Added proper game launch function for Unix. 2020-07-18 23:07:02 +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 6a0682b833 Updated CMakeLists.txt and INSTALL.md to cover bundling of the required libVLC plugins for Windows. 2020-07-16 20:34:02 +02:00
Leon Styhre 4f2e4cbf5f Beta release for version 1.0.0 2020-07-16 15:56:12 +02:00
Leon Styhre ff1f329bd0 Added a Unix man page and a script to generate it.
The --help output text was changed slightly as well.
2020-07-16 14:24:48 +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 1b65eaac2e Improved input device configuration.
Default keyboard mappings are now applied if the user has not configured the keyboard.
2020-07-14 19:16:21 +02:00
Leon Styhre 57d6dab2cc Some cosmetic code changes. 2020-07-13 20:58:25 +02:00
Leon Styhre 40be69cd64 Deletion of a game now removes its media files and its entry in the gamelist.xml file. 2020-07-13 20:13:48 +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 ed5815a582 Added desktop menu entry and icon for Unix. 2020-07-12 16:23:49 +02:00
Leon Styhre fe0e09ec7b Changed log level for missing or empty game systems from Info to Debug.
Also did some small changes to the OpenGL logging.
2020-07-12 12:09:01 +02:00
Leon Styhre 6028777be4 Added creation of es_settings.cfg on first application startup and improved media directory error handling. 2020-07-11 10:10:07 +02:00
Leon Styhre 29d2ccf201 Added %ESPATH% support to the ROMDirectory setting. 2020-07-10 21:20:52 +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 3cad68be13 Added %EMUPATH% logic for Unix. 2020-07-10 19:53:33 +02:00
Leon Styhre 31da561695 Complete UTF-16 (Unicode) support added for Windows.
ROM names with Unicode characters are supported, as well as running ES from a directory that has Unicode characters in its name.
2020-07-10 18:32:23 +02:00
Leon Styhre adb5cb6664 Made the es_systems.cfg template install to the home directory during the first application startup. 2020-07-09 19:26:48 +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 5a7fb828a6 Added proper error handling for resource files and improved overall logging. 2020-07-08 17:01:47 +02:00
Leon Styhre 04d4658fc9 Updated the CMakeLists.txt files to be able to generate an NSIS installer for Windows.
Also some updates to the documentation and information files.
2020-07-07 21:33:33 +02:00
Leon Styhre 2bea3021c3 Added proper emulator launch function for Windows and added logic for the new %EMUPATH% variable. 2020-07-07 21:27:48 +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 1f74723533 Another code cleanup and code documentation update. 2020-06-26 17:17:35 +02:00
Leon Styhre ee4a55e9d6 Fixed 'Refine Search' for the TheGamesDB scraper which I apparently broke in the last commit. 2020-06-25 20:37:41 +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 fb4c5708b7 Made pugixml an external dependency and fixed the cmake/cpack installation and package creation.
As pugixml seems to be well supported nowadays and seems to ship with most distributions it's pretty pointless to keep bundling it with EmulationStation.
2020-06-24 17:38:41 +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 0a02d710f3 Removed the last remnants of the usage of /etc and updated the documenation accordingly. 2020-06-22 19:46:09 +02:00
Leon Styhre 672026632d Code cleanup and code documentation 2020-06-22 17:27:53 +02:00
Leon Styhre ac91da6995 Removed unnecessary processing steps during startup by skipping systems with no games.
This seems to decrease the (non-optimized) loading time by about 6,5% with a large es_systems.cfg configuration file.
2020-06-21 22:11:29 +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 f635e5bd2d Improved error handling for missing configuration files and ROMs. 2020-06-18 19:49:47 +02:00
Leon Styhre fb0ab2f06c Added a ROM path variable for use with es_systems.cfg and custom collections.
The variable %ROMPATH% now expands to the ROMDirectory setting in es_settings.cfg which removes the need for absolute ROM paths (although absolute paths are still supported). Custom collections with absolute paths can still be loaded for backward compatibility with old custom collections.
2020-06-18 17:09:32 +02:00
Leon Styhre 3c7d86a578 Made navigation sounds unload and reload properly on theme changes.
Also improved the navigation sound handling for SystemView.
2020-06-17 22:13:07 +02:00
Leon Styhre 20001d0cca Bugfix: When attempting to mark a directory as favorite game, the favorites navigation sound played. 2020-06-17 18:55:38 +02:00
Leon Styhre 53ef1e5be7 Added navigation sounds to left and right triggers.
Also added left and right trigger navigation to grid view, to jump to the first and last game of the gamelist.
2020-06-15 22:55:47 +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 709e6b996e Code cleanup and code documentation. Only cosmetic changes in this commit. 2020-06-06 16:48: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 7f39afe3da Removed deprecated AsyncReqComponent 2020-06-06 13:27:11 +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 e21ddcbe93 Added navigation sounds when entering and exiting folders, in both normal gamelists and bundled collections. 2020-05-24 15:05:02 +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 fbec408dfa Rewrote media handling to look for images and videos in a configurable media directory (by matching the ROM names) instead of being configured per game as XML tags 2020-05-18 19:00:43 +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 6028ec8444 Added support for half-star rating increments when editing game metadata. Added rounding up to nearest half-star for all ratings read from the gamelist files. Fixed a small issue with rating symbols not being properly aligned 2020-05-16 20:52:33 +02:00
Leon Styhre 08a152db16 Allow editing of play count metadata, changed to medium font size for editing popups and updated program description 2020-05-16 14:21:36 +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 89794a34cf Made some variable names for the navigation sounds more consistent 2020-05-15 18:41:53 +02:00
Leon Styhre eec27c0258 Updated Scraper to not use deprecated pugixml method 2020-05-15 18:39:54 +02:00
Leon Styhre fcfbbd3f2b Updated version info and documentation files 2020-05-15 18:31:59 +02:00
Leon Styhre cd68344dc5 Deactivated broken video playing in Grid view as a temporary fix. This functionality needs to be fully removed or properly implemented at a later date 2020-05-15 18:27:35 +02:00
Leon Styhre bac1eba3f8 Fixed two bugs where the game images were incorrectly scaled in the Video and Grid views. For the Video mode it happened during reload (such as when adding a game as a favorite), and for the Grid view it was always incorrectly scaled 2020-05-15 18:24:14 +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 c01d1491e6 Fixed rendering of non-transparent rating icons (ported from batocera-emulationstation) 2020-05-15 18:12:16 +02:00
Leon Styhre 0aafc1314a Added navigation sound support (configurable per theme) and implemented proper sound handling at most places in ES 2020-05-15 18:08:26 +02:00
Leon Styhre 5f5d12535d Rewrote parts of the font loading code and bundled the required fonts with ES instead of relying on the OS providing them. This fixes the display of star symbols for favorites in the gamelists 2020-05-15 18:03:42 +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
Jools Wills 3b2227b4d1
Merge pull request #644 from pjft/disable-ss-audio
Added option to disable video screensaver audio on VLC and OMXPlayer
2020-04-11 22:12:08 +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
John Rassa 4eafb8771a
Merge pull request #634 from supersquared/master
Add support for md_thumbnail & md_marquee
2020-03-19 20:58:17 -04:00
Supersquared 2ae8f08b55 Add support for md_thumbnail & md_marquee
- Added support for md_thumbnail in VideoGameListView
- Added support for md_thumbnail & md_marquee in DetailedGameListView
2020-03-19 01:59:02 +01:00
John Rassa c114ef05ac Grid View Fixes
Fix for metadata disappearing when selecting system for the first time.
Fix for video not resuming after launching game.
2020-02-28 21:19:52 -05:00
cmitu c2a8617932 input: fix the infinite scrolling with the left shoulder button after #631 2020-02-03 05:53:11 +00:00
Jools Wills b9fddff3a3
Merge pull request #630 from PhilaPhan80/api.thegamesdb.net-add-v1-to-url-path
Update TheGamesDB API URL to include "v1"
2020-02-01 02:34:53 +00:00
Jools Wills 100d01b882
Merge pull request #631 from cmitu/bindings-mod
InputManager: replace pageUp/Down with left/rightShoulder
2020-02-01 02:32:49 +00:00
Carlos Rodríguez 6cd813ae67 feature: Added marquee, image and video to gridView. Ignore .vscode files 2020-01-25 22:17:47 -05:00
PhilaPhan80 85dc2b59a2 Update TheGamesDB API URL to include "v1" within the path per note by Zer0xFF at https://forums.thegamesdb.net/viewtopic.php?f=5&t=1223 2020-01-05 01:52:03 -05:00
Jools Wills 714797e778 bump version to v2.10.0-dev 2019-12-29 21:22:21 +00:00
Cristi Mitrana 3b85735a2d InputManager: replace pageUp/Down with left/rightShoulder and create an alias (via isMappedLike) to accomodate existing configs that use the PageUp/Down buttons. 2019-12-23 16:12:35 +02: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
Jools Wills 5156baa5a4
Merge pull request #620 from cmitu/master
scraper: add support for ChannelF, OpenBOR, Solarus and ZX81 Sinclair
2019-12-10 05:32:35 +00:00
Cristi Mitrana b46c082821 Add scraping support for ChannelF, OpenBOR, Solarus and ZX81 Sinclair 2019-11-27 09:52:35 +02:00
John Rassa 94b2821eb7 repopulate list after applying theme to ensure image source is updated 2019-11-06 20:22:30 -05:00
John Rassa 961571655b Grid updates. Animate scrolling option, autoLayout option, center selection option, scroll loop option, image source option 2019-09-21 19:38:57 -04:00
Jools Wills cb0db38f54
Merge pull request #605 from jrassa/file-data-reset-changed-flag
ensure change flag cleared for new FileData
2019-09-10 00:22:08 +01:00
John Rassa b43f1b43d3 clean up opacity handling for ImageComponent, RatingComponent 2019-09-08 09:24:25 -04:00
John Rassa 28ed6ed04e ensure change flag cleared for new FileData 2019-09-03 22:39:19 -04:00
Tomas Jakobsson 71ac016c3d Make sure all vertices are properly rounded 2019-08-31 18:19:43 +02:00
Tomas Jakobsson 489d7de096 Eliminate drawRect that takes int's and make sure everything uses the float version properly, this way everything is rounded the same way
Only round the transforms when setting them on the GPU, to make sure everything is rounded the same, but only at the final moment
2019-08-31 17:58:36 +02:00
John Rassa fc58af98fd support for color gradients in drawRect and ImageComponent 2019-08-29 19:47:16 -04:00
Tomas Jakobsson 79cc5a7e8b
Merge pull request #575 from jrassa/guicomponent-visible
support 'visible' theme element
2019-08-29 10:25:10 +02:00
John Rassa d62758c7cf
Merge pull request #592 from verybadsoldier/fix/save_default_meta
save also metadata that have default values. they might not had defau…
2019-08-25 20:39:52 -04:00
verybadsoldier ee78a50252 save also metadata that have default values. they might not had default values on start so they have to be saved 2019-08-25 22:01:38 +02: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
Tomas Jakobsson 4b4c207208
Merge pull request #587 from fabricecaruso72/home-enhancements
Add --home command line to set custom home path + make windows version natively portable by detecting if .emulationstation is a subfolder of the exe.
2019-08-23 14:47:14 +02:00
Fabrice CARUSO 95de3aae7f Add --home command line to set custom home path + make windows version natively portable by detecting if .emulationstation is a subfolder of the exe. 2019-08-23 14:18:13 +02:00
Fabrice CARUSO f47fb048d5 Fix shutdown on Windows + process shutdown commands after main loop 2019-08-20 19:26:32 +02:00
Cristi Mitrana 023e9d8916 Eliminate duplicate requests when multiple platforms are present for a system 2019-07-31 18:50:49 +03:00
John Rassa 8de1fc8860 add 'visible' theme element 2019-07-21 23:13:48 -04: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
pjft 6defa8ef1c
Merge pull request #569 from danovision/subtitle-font-settings
Add Game Info Font Settings to OMX Player
2019-06-25 17:21:04 +01: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
pjft 1b06df1572 Fix Kiosk Favorites not registering
Had been broken a few months back.
2019-06-19 10:04:17 +01:00
Cristi Mitrana 573cd4cdd5 Fix 'Last Played' collection crash. 2019-06-12 13:36:48 +03:00
Cristi Mitrana 6e123ba8c6 scraper: change ScreenScraper API URL 2019-05-02 11:54:55 +03:00
jrassa 72edb792d2 implement scripting support 2019-03-26 20:02:42 -04:00
Tomas Jakobsson 07a9f18ac6 Fix FilesystemUtil::isEquivalent by eliminating it entirely 2019-03-13 21:18:58 +01:00
Jools Wills f9e48897d3
Merge pull request #546 from tomaz82/fullscreen_borderless
Add support for fullscreen borderless window
2019-03-09 00:27:07 +00:00
Tomas Jakobsson 0410864929 Add support for fullscreen borderless window 2019-03-09 00:39:43 +01:00
Tomas Jakobsson 5cc6bafd7d Silence warnings 2019-03-09 00:23:13 +01:00
pjft 108cd714ea Fix jagged font in games list 2019-03-03 19:30:27 +00:00
pjft 55e4c47e4b Change handling of screensaver to FileData only and respect UI Mode 2019-02-26 09:36:36 +00:00
Jools Wills 70da690ca4
Merge pull request #532 from Gemba/master
Fixed rounding.
2019-02-19 09:56:44 +00:00
Marian Flor c1a27d8a8a Fixed rounding. 2019-02-17 21:13:10 +01:00
Spongman 718eae91fb
Update GamesDBJSONScraper.cpp
prevent `IsObject` assertion failure during `HasMember` call.
2019-02-16 18:07:26 -08:00
Cristi Mitrana 70bbcb0b1e Fix getThumbnailPath ignoring the 'image' tag when 'LocalArt' is not set 2019-02-12 09:11:50 +02:00
Cristi Mitrana 1ee09bcca8 Fix ScreenScraper search by filename 2019-02-10 12:47:53 +02:00
Jools Wills 2fb5881fb6 bump version to 2.9.0 (-dev) 2019-02-09 19:48:17 +00:00
Jools Wills 9af271d36f add setting for searching for local game art - defaults to off 2019-02-09 17:27:34 +00:00
Jools Wills 9ae899360c cosmetic - indent 2019-02-08 20:50:23 +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
Lubosz Sarnecki 87a3205521 Loading screen: Be more verbose about what is happening.
Starting up emulationstation takes me about 1 minute over the network
with a large collection of 27 systems with images.

This patch uses the loading screen to tell the user about the status
of the startup, with information how many systems are left for view
initialization.

The most beefy part of the startup process is initializing the views,
and preloading images.

This patch extends the `renderLoadingScreen` function to take a string
and uses it in `ViewController::preload`.

v2: Add SplashScreenProgress option enabled by default.
2019-02-04 23:16:47 +01:00
Jools Wills f899920598
Merge pull request #522 from cmitu/fix-uimodes-in
Fix Kiosk mode filters applying also to Kid mode
2019-01-24 22:08:28 +00:00
Cristi Mitrana 253e5716d2 Remove the TGDB scraper from the list of enabled scrapers 2019-01-24 20:05:07 +02: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
Cristi Mitrana f8e3ac1340 Fix UI Kiosk mode filters applying also to Kid mode.
This fixes games marked both as hidden and kid not being shown in Kid mode.
2019-01-19 10:11:19 +02:00
Cristi Mitrana cdd43bf7e9 Add ScreenScraper.fr as scraping source 2019-01-19 09:01:35 +02:00
Jools Wills 6ffda17c4e
Merge pull request #495 from raelgc/fix-kids-unattended-mode
Fixing kids/unattended mode
2019-01-08 19:33:41 +00:00
Keith F. Kelly 8c4c024de1 Add support to built-in thegamesdb.net scraper for TurboGrafx CD platform. 2018-11-28 11:09:52 -08:00
Keith F. Kelly a7a22e478d Clarify the DELETE button's warning text. 2018-11-28 10:55:12 -08:00
Jools Wills bf02819125
Merge pull request #432 from raelgc/master
Skip mame bios/devices
2018-11-19 05:36:51 +00:00
Jools Wills 6576dd7ba4
Merge pull request #499 from raelgc/all-directionals
Work with dpad and analogs
2018-11-19 05:35:35 +00:00
Rael Gugelmin Cunha c98a5d6220 Fixing kids/unattended mode 2018-11-15 15:09:08 -02:00
Rael Gugelmin Cunha 464b0992ad Work with dpad and analogs 2018-11-15 14:38:20 -02:00
Rael Gugelmin Cunha 0a62a6db27 Removing no more used mameNameToRealName 2018-11-05 13:46:04 -02:00
Rael Gugelmin Cunha 065fd8edf1 Skip mame bios/devices 2018-11-04 15:26:03 -02:00
John Rassa a57b0ecfea create new DateTimeComponent 2018-10-15 20:40:45 -07:00
Tomas Jakobsson 38c2b9a67b Fix missing / in custom collection path 2018-10-09 13:31:03 +02:00
Tomas Jakobsson 3f9ffaa33d Reset "StartupSystem" to "" if the requested system doesn't exist 2018-09-20 18:49:07 +02: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
hissingshark 2adce66ac4 Vero4k autodetection and volume mixer fix 2018-07-26 20:14:11 +01:00
John Rassa 5465752d11
Merge pull request #443 from jrassa/carousel-logo-text-improvements
add theme support for text and line spacing for logo text in system c…
2018-06-06 14:53:35 -07:00
John Rassa c6a8a4b20c
Merge pull request #436 from RetroPie/scraper-fix
set curl to follow redirects to fix scraper error
2018-06-06 14:47:41 -07:00
John Rassa 1fe57de7f6 add theme support for text and line spacing for logo text in system carousel 2018-06-06 14:44:54 -07:00
John Rassa 86a2cb7840 set curl to follow redirects to fix scraper error
update to use legacy thegamesdb url
2018-06-05 19:00:42 -07: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
Koerty 96b0b85208 Fix md_name not fading out 2018-04-21 23:57:57 +02:00
Koerty e575f7708e Add the new metadata field md_title to grid, video and detailed views
Unlike the others, it is by default positioned offscreen
2018-04-16 19:42:41 +02:00
John Rassa 99f7330475 fix for several small issues in Windows build 2018-04-13 16:53:39 -07:00
Jools Wills 757dd43dd8
Merge pull request #325 from pjft/favorites-syntax
Fix empty collections not showing in carousel in Full Mode.
2018-04-12 15:29:29 +01:00
John Rassa 9adb0d0c51
Merge pull request #407 from Koerty/grid-tile-background
Add GridTileComponent and base theming syntax
2018-04-11 21:00:00 -07:00
Koerty 3993ace607 Add GridTileComponent and base theming syntax
- Add the GridTileComponent which hold the image and its background
- Add base theming syntax for the ImageGrid and GridTIle
- Numerous refactoring/cleaning in ImageGridComponent
2018-04-11 14:20:59 +02:00
Koerty 24c8a910e2 Disable random game selection in retropie settings menu 2018-04-07 14:43:23 +02:00
Koerty 82e5c21da6 Add base theming syntax for the grid
- The themes can now configure following elements : pos, size
- Change some default values for them
2018-04-07 10:37:09 +02:00
Benjamin D a006650c1c Add metadata from the detailed view to the grid view
- Add the metadata from the detailed view to the grid view (minus the image, as it doesn't make sens in the grid view)
- Add a callback to the ImageGridComponent to update the metadata info panel when cursor changed
2018-04-06 15:54:34 +02:00
Jools Wills 2ff3252b21
Merge pull request #400 from Koerty/grid-fix-populateList
[GRID FIX] Update the populateList function of the GridGameListView
2018-04-05 14:42:19 +01:00
Koerty 37a16fe3ed Update the grid's help prompt
- Add a left+right shoulder button icon
- Update the outdated help prompt to match the one from the Basic view
2018-04-05 15:37:35 +02:00
Jools Wills 75844f4568
Merge pull request #390 from Koerty/grid-swap-left-right-shoulder
[GRID 1] Allow quick system swap using left/right shoulder
2018-04-05 14:28:37 +01: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 96b1f4b514 Small fix to the populateList function of the GridGameListView
- Call the addPlaceholder function if grid is empty
- Set the header text
2018-03-31 16:01:18 +02:00
Koerty 8d9c4a20ec Rewrite the grid display code
- Grid tile number of columns and rows is now controlled by the grid size, mMargin and mTileMaxSize
- Add a variable mSelectedTileMaxSize to control the size of the selected tile
- Update the render function to display the selected tile on top of the other
2018-03-30 18:15:54 +02:00
Koerty a7c0d92766 Use shoulder buttons for quick system swap in the grid view
- Allow quick system swap using left/right shoulder in the grid view
- Update the help prompt of the grid view accordingly
2018-03-29 09:50:57 +02:00
Mátyás Mustoha 63f4806ac5 Remove leftover debug code 2018-03-28 09:31:10 +02: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
pjft 25f31d154c Fix crash when scraping folders 2018-03-09 16:41:55 +00:00
pjft c80d30493b Fix empty collections not showing up in Carousel for Full mode
Also fixed empty favorites collection in Kiosk mode not initializing as intended after adding the first game, if empty at start.
2018-03-02 11:56:14 +00:00
pjft d3cc0a77ef Limiting last played count to 50 2018-02-27 23:04:14 +00:00
Jools Wills 32258e1f00 bump version to 2.8.0 and add -dev suffix to string 2018-02-27 17:22:08 +00:00
Tomas Jakobsson 3f3e1ceb16 Move MameNameMap out of the source and into mamenames.xml 2018-02-09 18:32:05 +01:00
Tomas Jakobsson 9a535d4441 Show build date and time when starting ES with --debug 2018-02-08 20:45:06 +01:00
Tomas Jakobsson 1a4d13b6b3 Remove builtin resources 2018-02-08 19:27:44 +01:00
Jools Wills bb678eecd1
Merge pull request #363 from jrassa/g-w-scraper-fix
fix platform name for game and watch
2018-02-01 03:50:48 +00:00
John Rassa 55e578e18c
Merge pull request #362 from tomaz82/image_fix
Fix thumbnail and image to be separated
2018-01-31 22:38:58 -05:00
Tomas Jakobsson 1228e0c7bf Fix thumbnail and image to be separated as I think it was originally meant to be. 2018-01-31 21:34:55 +01:00
John Rassa d223831d53 fix platform name for game and watch 2018-01-30 20:16:30 -08:00
Tomas Jakobsson 421e4a23df The final traces of boost has been eliminated 2018-01-30 19:21:09 +01:00
Tomas Jakobsson 403b798572 Remove the last traces of boost::filesystem::operational, this is PR 4 of 5 in the boost::filesystem removal quest 2018-01-27 22:52:14 +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
John Rassa 0686b4690a
Merge pull request #352 from tomaz82/boost_filesystem
boost::filesystem replacement, step 1
2018-01-25 19:38:32 -05:00
Tomas Jakobsson c1f8e7294c Update and rename some Utils::FileSystem functions
Replace boost::filesystem::is_directory
with    Utils::FileSystem::isDirectory

Replace boost::filesystem::is_regular_file
with    Utils::FileSystem::isRegularFile

Replace boost::filesystem::is_symlink
with    Utils::FileSystem::isSymlink

Replace boost::filesystem::exists
with    Utils::FileSystem::exists

Replace boost::filesystem::create_directory
with    Utils::FileSystem::createDirectory

Replace boost::filesystem::remove
with    Utils::FileSystem::removeFile
2018-01-23 12:07:20 +01:00
jrassa e9403b6b00 implement horizontal wheel for system carousel. fix image rotation bug in carousel 2018-01-22 19:34:30 -05:00
pjft ae1e9e31c7 Fixing first favorites not updating index 2018-01-21 10:58:07 +00:00
Tomas Jakobsson e2fc3b325c Add support for --screenrotate 2018-01-18 18:30:00 +01:00