Commit graph

892 commits

Author SHA1 Message Date
Leon Styhre b86e8ad6e2 Made the icon marker colors in the metadata editor slightly lighter. 2020-12-17 20:36:30 +01:00
Leon Styhre 5208150749 Reverted a removed optimization. 2020-12-17 00:20:25 +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 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 6c62b23da8 Fixed an issue where videos would not pause on screensaver activation. 2020-12-16 18:03:23 +01:00
Leon Styhre 29abe2dc8c Removed the deprecated PowerSaver. 2020-12-16 17:57:10 +01:00
Leon Styhre 05302052de Fixed a GUI component alignment issue for the text edit popups. 2020-12-16 17:38:23 +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 dc620aa11b Cosmetic log output change to the renderer. 2020-11-29 20:33:17 +01:00
Leon Styhre 48a7bed2c0 Fixed compilation errors on Fedora and GCC 10. 2020-11-28 22:27:00 +01:00
Leon Styhre fe4bb0b7e9 Allowed non-accelerated rendering. 2020-11-27 21:04:49 +01:00
Leon Styhre 5d1b6d2475 Removed unnecessary certificate bundling on NetBSD. 2020-11-26 19:36:08 +01:00
Leon Styhre 19edfd1690 Added support for FreeBSD, NetBSD and OpenBSD. 2020-11-26 18:53:00 +01:00
Leon Styhre 401d433be0 Eliminated unnecessary rendering when the video or slideshow screensaver is running. 2020-11-18 23:52:29 +01:00
Leon Styhre 50e74595e4 Eliminated unnecessary rendering during view transitions. 2020-11-18 23:47:32 +01:00
Leon Styhre e30e636780 Fixed an issue where game media would not get rendered during gamelist transitions. 2020-11-18 22:26:58 +01:00
Leon Styhre 0b6dce687e Changed to C++ casts throughout the application. 2020-11-17 23:06:54 +01:00
Leon Styhre 623c302174 Cosmetic code cleanup of VideoComponent. 2020-11-17 22:13:33 +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 bbb5575334 Added black areas around videos with non-standard aspect ratios. 2020-11-16 23:34:08 +01:00
Leon Styhre f334eb7037 Changed the font size and line spacing for the GPU statistics overlay. 2020-11-16 17:46:36 +01:00
Leon Styhre 2220787c3b Fixed multiple issues with view transitions. 2020-11-16 17:44:33 +01:00
Leon Styhre 0a6e1f280f Improved transitions for SystemView. 2020-11-15 20:06:33 +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 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 08786f2027 Small change to remove a compiler warning on macOS. 2020-11-10 22:42:25 +01:00
Leon Styhre 6368ae0cc1 OCD update renaming ScreenSaver to Screensaver. 2020-11-10 22:33:57 +01:00
Leon Styhre bbb2aa5217 Overhaul of the screensaver. 2020-11-10 22:18:20 +01:00
Leon Styhre cc87084959 Fixed a crash when searching recursively through a directory. 2020-11-10 22:16:30 +01:00
Leon Styhre 2c3b452401 Some cosmetic code cleanup and some small documentation updates. 2020-11-08 22:58:06 +01:00
Leon Styhre 3336f50e04 Added a file that was missing in the last commit. 2020-11-08 13:23:50 +01:00
Leon Styhre bd33d5a3b9 Implemented (somehow) proper inversions for images in menus. 2020-11-08 13:03:45 +01:00
Leon Styhre f1f0596fe1 Added support for user accounts for ScreenScraper. 2020-11-07 15:34:15 +01:00
Leon Styhre 1af7e3eda4 Added support for hidden text fields (intended for passwords). 2020-11-07 12:50:30 +01:00
Leon Styhre 8131b81761 Editing now starts by default for the text edit popups. 2020-11-07 12:45:57 +01:00
Leon Styhre 9f747e161d Rewrote collection settings to the new settings logic. 2020-11-06 20:27:41 +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 7f0aede274 Added gamelist info field which displays some useful information. 2020-10-30 14:19:21 +01:00
Leon Styhre 01cf401d8f Added menu options to disable the favorite star markings. 2020-10-25 21:29:54 +01:00
Leon Styhre ab87063770 Added case insensitive sorting option to some StringUtil functions. 2020-10-22 21:14:15 +02:00
Leon Styhre 075ab58bdb Changed the default value for custom collections favorites sorting. 2020-10-21 23:29:13 +02:00
Leon Styhre 9ca948e145 Fixed incorrect help text for the second button in GuiMsgBox. 2020-10-20 21:40:53 +02:00
Leon Styhre 3e8a5391e1 Videos now always start to play immediately if there is no static image. 2020-10-20 21:24:29 +02:00
Leon Styhre 0b6d0bfcd6 Improved some logging as well as handling of a missing es_systems.cfg file. 2020-10-19 17:28:20 +02:00
Leon Styhre 2eb5125d0e Some cosmetic code cleanup. 2020-10-18 19:45:26 +02:00
Leon Styhre 5838481e0d Small adjustments to ScrollableContainer timings. 2020-10-18 11:03:49 +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 0beb40d9c9 Fixed a tiny memory leak.
Also fixed a Clang static analyzer error for SystemData.
2020-10-17 14:32:08 +02:00
Leon Styhre 930bdce576 Fixed multiple issues reported by the Clang static analyzer. 2020-10-17 14:05:41 +02:00
Leon Styhre 13e0735dda Implemented variable scrolling speed for ScrollableContainer. 2020-10-17 12:16:58 +02:00
Leon Styhre 2768380446 Fixed several errors reported by Valgrind. 2020-10-11 18:57:37 +02:00
Leon Styhre c2b3b029e5 Fixed a massive memory leak related to SVG images.
Also did a general update and cleanup of TextureData.
2020-10-11 18:46:06 +02:00
Leon Styhre 70f7382680 Fixed a memory leak for GuiInfoPopup notifications. 2020-10-11 09:59:49 +02:00
Leon Styhre 5cd83899f0 Fixed a regression where the video would not pause when launching a game. 2020-10-10 15:46:01 +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 107c747374 Fixed a regression where the graying-out of menu entries didn't work. 2020-09-27 14:41:59 +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 08a2602fe2 Added function to unpause video. 2020-09-26 22:15:36 +02:00
Leon Styhre 8db04c5fcb Added SPDX license identifiers to all source files. 2020-09-21 19:17:34 +02:00
Leon Styhre 83bae1e963 When marking or unmarking a game as favorite, the cursor position is now retained. 2020-09-20 10:05:03 +02:00
Leon Styhre fd92f7f86d Implemented the same opacity animation for the video style as for the detailed style. 2020-09-18 20:43:46 +02:00
Leon Styhre 522fbebee8 Fixed multiple issues and glitches related to the screensaver. 2020-09-18 18:40:22 +02:00
Leon Styhre afa91aa093 Fixed an issue where long game names would sometimes not scroll. 2020-09-18 18:19:02 +02:00
Leon Styhre f4e24bdd56 Fixed an issue where the cursor would end up outside text fields for long strings. 2020-09-18 18:16:12 +02:00
Leon Styhre d4f5b2d20d Text scrolling now stops when launching a game and when the screensaver starts.
Also did some additional code cleanup.
2020-09-17 22:00:07 +02:00
Leon Styhre 2a852170a8 (Windows) Fixed some build issues and got the OpenGL shaders to work.
Also some additional code cleanup.
2020-09-16 22:14:35 +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 a6430ff0ff Moved the input debug logging to a more appropriate location.
This also fixes the issue where some input was not being logged correctly.
2020-09-15 21:12:32 +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 db0e15f5e8 Fixed an annoying scrolling issue that also affected the application performance. 2020-09-13 19:08:17 +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 a34bc45e56 Added an opacity shader. 2020-09-12 19:17:26 +02:00
Leon Styhre 3643c08caf Updates to the OpenGL shader handling. 2020-09-12 12:14:48 +02:00
Leon Styhre 79b5bfffef Some minor cosmetic changes. 2020-09-04 19:05:48 +02:00
Leon Styhre fd10aba815 Updated the GLSL shader logic and added a postprocessing function. 2020-09-04 18:59:19 +02:00
Leon Styhre 9da16dd00e Some minor cosmetic code changes. 2020-08-30 22:25:38 +02:00
Leon Styhre d512c2b11d Implemented OpenGL GLSL shader support. 2020-08-30 22:19:37 +02:00
Leon Styhre a6c8f8034e Updated the built-in Math::clamp() argument order to behave as the C++17 std::clamp(). 2020-08-30 22:03:11 +02:00
Leon Styhre 1df4caa43b Fixed an issue where ES could crash when a controller was unplugged. 2020-08-24 18:59:04 +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 77076c22f4 (Unix) Added border to borderless window if the resolution was manually changed.
Also fixed a mistake introduced in the last commit.
2020-08-23 22:40:15 +02:00
Leon Styhre d6baa2d132 (macOS) Add a window border if the user has changed the resolution from the command line. 2020-08-23 22:19:37 +02:00
Leon Styhre 796d2c9ec8 (macOS) Disabled unusable command line arguments. 2020-08-23 21:53:21 +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 b8c6366349 (macOS) Made the game launching more seamless. 2020-08-23 18:41:08 +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 31fae9678a (macOS) Made playing of videos work. 2020-08-23 15:42:10 +02:00
Leon Styhre ffcb578fe7 (macOS) Updates to make ES find resources and themes within the application installation directory. 2020-08-21 21:49:45 +02:00
Leon Styhre 7f31c1bbb4 Added .dmg package generator setup for macOS.
Also cleaned up and updated the CMakeLists.txt files and moved the non-source files to a separate assets directory.
2020-08-19 22:30:10 +02:00
Leon Styhre 3f9f620649 (macOS) Activated game launching function. 2020-08-19 22:02:42 +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 6633ee5028 Merge branch 'master' of https://gitlab.com/leonstyhre/emulationstation-de 2020-08-17 19:16:56 +02:00
Leon Styhre ad960b28ac Various updates to make the application compile on macOS. 2020-08-17 19:15:05 +02:00
Leon Styhre 130d9654f5 Video scraping is now enabled by default. 2020-08-16 15:58:29 +02:00
Leon Styhre 5b93c40365 Adjusted the scroll speed and scroll delay for the game descriptions. 2020-08-15 10:15:17 +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 7b76aa005f Fixed a large memory leak when reloading the system view. 2020-08-15 09:28:47 +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 d45e72e10c Fixed incorrect knob position for SliderComponent for non-zero minimum values. 2020-08-08 12:33:55 +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 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 2a3d78bef2 Text opacity is now lowered for games marked not to be counted, and for hidden games. 2020-08-06 16:48:32 +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 5283881edf Improved custom script execution for the game-start and game-end events.
Also did some minor cosmetic changes to the script logging.
2020-08-05 14:49:54 +02:00
Leon Styhre e1d1723ce2 Set rbsimple-DE explicitly as the default theme in es_settings.cfg. 2020-08-03 15:19:31 +02:00
Leon Styhre 3a08eee1d6 Fixed an annoying gamepad configuration issue. 2020-08-03 13:15:53 +02:00
Leon Styhre d9f00ec582 Fixed an issue where the keyboard was counted as a joystick. 2020-08-03 12:13:28 +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 3923ad32c6 Fixed an issue where trigger input in menus wasn't handled correctly. 2020-08-02 15:04:43 +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 3887bfff3d Added a 'CLEAR' button to GuiTextEditPopup. 2020-07-30 16:39:16 +02:00
Leon Styhre 9c755f2d0b Fixed a display issue for folders with dots in their names. 2020-07-30 15:42:39 +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 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 2b898981cb (Windows) Updated some filesystem functions to support wide character filenames. 2020-07-27 13:17:36 +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 dc4870f543 Improved the trigger button handling and made it work (somehow) on Windows.
There are still some issues on Windows, especially with Dual Shock controllers, but a larger rewrite is required anyway of the input handling so it's not worthwhile trying to fix it at this time.
2020-07-24 18:24:04 +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 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 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 6199f7371d Made the automatic gamelist view style work with the new media handling logic. 2020-07-13 20:10:09 +02:00
Leon Styhre 09bbb925f9 Added missing help text to GuiMsgBox. 2020-07-12 21:05:50 +02:00
Leon Styhre 29c50ff5a1 Reintroduced the ES executable directory on Unix as a path to look for resources and themes. 2020-07-12 12:47:39 +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 6565355831 Bundled fallback sounds are now loaded if the theme does not provide any navigation sounds. 2020-07-12 11:40:30 +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 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 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 5b17edde8b Additional changes for SDL2 include files.
Of course I had to miss some things..
2020-06-26 18:11:24 +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 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 672026632d Code cleanup and code documentation 2020-06-22 17:27:53 +02:00
Leon Styhre b560429a20 Moved the CMake install prefix function to FileSystemUtil and implemented the same logic also for theme loading. 2020-06-21 21:08:54 +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 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 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 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 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 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 a104b653ae Mapped button Y to backspace in TextEditComponent. 2020-06-06 22:26:35 +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 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 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 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 89794a34cf Made some variable names for the navigation sounds more consistent 2020-05-15 18:41:53 +02:00
Leon Styhre 6303aa5664 Updated VLC video playing to use modern asynchronous media parsing 2020-05-15 18:35:30 +02:00
Leon Styhre 3d6adf9ade Implemented a much more elegant handling of navigation sounds 2020-05-15 18:21:24 +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 f3de559cc3 Fix rotation for OMX Player 2020-04-08 13:23:41 +01:00
Tomas Jakobsson 3eda4edfcf
Merge pull request #647 from tomaz82/fix_clearcolor
Fix clearcolors
2020-04-01 16:16:38 +02:00
Tomas Jakobsson b6f0f5c2c7 Fix clearcolors 2020-04-01 16:13:59 +02: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
Tomas Jakobsson ef33eaec51
Merge pull request #627 from smithjd15/logTimestamp
Timestamp'ed log entries
2020-03-19 15:36:37 +01: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
Tomas Jakobsson 72786c83a0 Prepare for GLES 2.0 2020-01-03 18:04:58 +01:00
James D. Smith 7de52b9279 Timestamp'ed log entries 2019-12-31 16:15:57 -07: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 ef186e7bd6
Merge pull request #624 from Teklad/reliable-exe-path
Use platform-specific methods for setExePath
2019-12-19 03:33:45 +00:00
Justin Kinnaird 08335841be Use platform-specific methods for exePath 2019-12-18 21:28:01 -06: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 d1c24f429e
Merge pull request #621 from cmitu/date-fix
fix 'DateTimeEditComponent' output formatting
2019-12-10 05:31:49 +00:00
Cristi Mitrana dc94060e7e getGenericPath: don't remove trailing '/' when path is '/'.
This prevents 'getAbsolutePath' to get into a loop with an empty path and EmulationStation to crash when the `$CWD` is `/`.
2019-12-09 20:06:49 +02:00
Cristi Mitrana c48c2ce56f fix 'DateTimeEditComponent' output formatting.
If the display mode is `DISP_DATE`, ignore the `mTime` field when calculating the output.
This fixes the size calculation of the component.

Fixes https://github.com/RetroPie/EmulationStation/issues/385.
2019-12-03 15:11:35 +02:00
John Rassa 8d759c7c5d add 'animate' to theme properties for imagegrid; fix blurriness on image upscaling 2019-10-09 18:51:33 -04:00
John Rassa 9dfbaa5566 fix assignment of gridtile theme properties 2019-10-07 22:25:39 -04: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
John Rassa b43f1b43d3 clean up opacity handling for ImageComponent, RatingComponent 2019-09-08 09:24:25 -04:00
Jools Wills c384beedb0
Merge pull request #606 from psyke83/mSkipAxis_fix
filterTrigger: filter negative trigger axis event after positive axis…
2019-09-07 18:31:50 +01:00
Tomas Jakobsson eda3fe9c3b
Merge pull request #599 from jrassa/image-video-component-theme-cleanup
Image video component theme cleanup
2019-09-07 19:28:36 +02:00
Shanti Gilbert 20b367009c Fixes compiling when Renderer_GLES10 is used 2019-09-02 14:50:14 -05: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 3b07bfeb93 cleanup duplicate theme code in Image/Video components 2019-08-31 09:50:57 -04:00
Conn O'Griofa 7ac6ffcdbe filterTrigger: filter negative trigger axis event after positive axis detection
If filterTrigger detects a positive axis event on a common trigger axis while also
configuring a trigger, the next input event will be a negative axis press
(as the trigger needs to transition from >0 to rest at -32767).

Filter this negative event or else the next item in the configuration dialog
(typically "left thumb") will erroneously detect this as a separate event.
2019-08-30 21:24:35 +01:00
Conn O'Griofa 5edecef9c8
Merge pull request #576 from hzulla/feature/bigbenff
Add BigBen kid's PS3 gamepad 146b:0902 to filterTrigger()
2019-08-30 21:16:41 +01: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
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
Tomas Jakobsson ce8b16aacf Add Transform4x4f::orthoProjection 2019-08-13 15:49:34 +02:00
Tomas Jakobsson 28168667ea Fix Transform4x4f which was broken in many, many ways, but just out of pure luck worked anyway 2019-08-08 17:45:11 +02:00
Hanno Zulla 3f012aeef5 Add BigBen kid's PS3 gamepad 146b:0902 to filterTrigger() 2019-07-26 12:38:54 +02: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
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
Conn O'Griofa 93fdfaa9c2 filterTrigger: generalize for more controllers
* Filter axes 2/5 for all devices, but only if LeftTrigger or RightTrigger is being configured. This should fix compatibility with XBox 360 and other generic controllers that use these axes for triggers, but won't affect other controllers using these axes for analog sticks, etc.
* Improve third-party PS3 detection (some Shanwan controllers have a grave accent in place of 'm' for 'Gamepad').
2019-04-12 04:48:39 +01:00
Jools Wills 289d89aad1
Merge pull request #555 from placroix74/screensaver-consume-input
[ScreenSaver] Consume input on cancel
2019-04-09 05:14:02 +01:00
Jools Wills fd04b153af
Merge pull request #554 from psyke83/ps3_triggerfilter
Implement filterTrigger for PS3 controllers
2019-04-09 05:13:23 +01:00
placroix74 9362967880 [ScreenSaver] Consume input on cancel 2019-04-07 08:55:27 -04:00
placroix74 f7af8357f8 Code formatting 2019-04-07 08:55:19 -04:00
John Rassa 91d0b6c918
Merge pull request #551 from jrassa/scripting
implement scripting support
2019-04-06 19:48:01 -04:00
Conn O'Griofa 03341f236d Implement filterTrigger for PS3 controllers
The hid-sony driver has both analog and digital buttons for the triggers,
and the analog values range from -32767 to 32767, which can cause two unwanted
input events (digital button and negative axis) per press.

Implement a function to filter out unwanted input events during configuration,
but isolate detection to known PS3 controllers with 6 axes so that older versions
of hid-sony and the sixad driver (which use 25+ axes) are not impacted negatively.
2019-04-06 11:19:12 +01:00
Jools Wills 945a4c9cfd
Revert "InputManager: improve trigger axis calibration" 2019-04-06 02:33:16 +01: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 55e4c47e4b Change handling of screensaver to FileData only and respect UI Mode 2019-02-26 09:36:36 +00:00
Jools Wills 9af271d36f add setting for searching for local game art - defaults to off 2019-02-09 17:27:34 +00: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
pjft 9db9d45f54 Fix for unset AudioCard setting 2019-01-25 13:48:03 +00: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
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
Jools Wills 04cb8f067b
Merge pull request #449 from psyke83/trigger_fix
InputManager: improve trigger axis calibration
2018-11-14 23:41:32 +00:00
Jools Wills 068ad86073
Merge pull request #483 from cmitu/master
Fix toggling the display of the hold-to-skip message during Input Configuration.
2018-11-11 05:02:47 +00:00
Rael Gugelmin Cunha 065fd8edf1 Skip mame bios/devices 2018-11-04 15:26:03 -02:00
Jools Wills 5af905e2c1
Merge pull request #494 from jrassa/variables-in-imports
allow variables in import elements
2018-10-26 03:57:31 +01:00
John Rassa 4fd0c66b90 allow variables in import elements 2018-10-24 16:19:27 -07:00
John Rassa a57b0ecfea create new DateTimeComponent 2018-10-15 20:40:45 -07:00
Cristi Mitrana 3ea6a7423b Fix the opacity for the hold-to-skip message.
This fixed the bug when toggling the visibility by calling `setOpacity` on the TextComponent
didn't have any effect.
2018-09-14 13:29:28 +03:00
John Rassa 2c2e23e802
Merge pull request #475 from tomaz82/stat64
Fixes for roms larger than 2GB
2018-08-29 22:12:10 -04:00
Tomas Jakobsson 84b1038c3f Fixes for roms larger than 2GB
pi:      #define _FILE_OFFSET_BITS 64
windows: Switch to use stat64 where needed
2018-08-21 16:43:15 +02:00
Tomas Jakobsson 15ccfc5a05 Remove trailing '/' in getGenericPath 2018-08-20 15:32:31 +02:00
Hanno Zulla c8c26203f1 Replace blank_game bitmap with svg cartridge artwork. 2018-07-25 15:19:41 +02:00
Hanno Zulla 3e27412d65 Replace folder bitmap with svg artwork. 2018-07-25 14:52:13 +02:00
Hanno Zulla 891c552ce9 Updates artwork for input config, adds compass directions. 2018-07-02 11:02:51 +02:00
John Rassa 880064caa6
Merge pull request #453 from hzulla/feature/fix-optionlistcomponent-arrows
Fix SVG resize issue for option_arrow.svg
2018-06-14 18:14:53 -04:00
pjft 0d76ec52a5 Adjust mutex for SVG initialization and resizing 2018-06-12 22:30:42 +01:00
Hanno Zulla d02fab8463 Fix SVG resize issue for option_arrow.svg. 2018-06-12 16:44:25 +02:00
John Rassa 46c274ebe4
Merge pull request #451 from pjft/image-fix-part2
Final Fix for resizing images
2018-06-10 22:05:07 -04:00
pjft 21f21d8268 Final Fix for resizing images 2018-06-09 18:38:18 +01:00
Koerty 3d7d62047b Grid fix freeze with big game collections
This fix the infinite freeze with big game collections by storing the texture path instead of loading texture resource
2018-06-08 11:31:24 +02:00
Conn O'Griofa b097648dde InputManager: improve trigger axis calibration
Some drivers (such as hid-sony) configure analog triggers (L2/R2) as axes
with axis range -32768-32767, but the resting value starts at -32768,
causing an initial or light press to register erroneously as a minus
axis value.

Fix by shifting ABS_Z and ABS_RZ axes that are detected to rest at
-32768 so that they will range from 0-32767 instead.

Patch based on Jools Wills' earlier commit: https://github.com/RetroPie/EmulationStation/pull/58
2018-06-08 04:45:04 +00:00
John Rassa df60750ec9
Merge pull request #440 from Koerty/grid-fix-horizontal-mod
Fix horizontal scrolling grid bugs
2018-06-06 16:06:36 -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
Koerty 8763adedb1 Fix grid padding being 2 times smaller than it should be 2018-06-06 23:26:32 +02: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 27670e48d6
Merge pull request #441 from pjft/image-fix
Fix for image resize flicker when using MaxSize
2018-06-04 14:28:17 -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
pjft 68dff607c8 Fix for image resize flicker when using MaxSize 2018-06-04 21:25:45 +01:00
Koerty bdc3054423 Fix horizontal scrolling grid bugs
This fix 2 bugs with the horizontal scrolling grid :
- The grid is now positioned correctly (bug introduced by the buffer of the dynamic image loader)
- The right column contain the partial tile in horizontal mod, not the bottom row
2018-06-03 01:03:14 +02:00
Rael Gugelmin Cunha cbc1d02b1b More restriction on kids mode (#431) 2018-05-30 22:38:19 -03:00
Koerty 5913c9465e Add extra buffer rows to the grid to load images ahead 2018-05-21 22:06:00 +02:00
John Rassa 0928498ef2 Fix for Windows build 2018-05-18 19:32:09 -07:00
Koerty 9f10b61dfa Add 3 new theming properties to the grid tile background
Add 3 new theming properties to the grid tile background : - backgroundCornerSize
- backgroundCenterColor
- backgroundEdgeColor
2018-05-18 01:20:58 +02:00
Koerty c080ffb2c3 NinePatch now position correctly when origin is different from 0 0 2018-05-10 23:43:08 +02:00
Koerty 80456f566a Partially display the last row if grid number of row isn't an integer
- Also fix 2 bugs introduced by #428
- Also add log error message if grid dimensions are below 1
2018-05-09 17:29:21 +02:00
Koerty a52a2f5597 Change grid creation flow
- This changes make sure the buildTiles function is called only one time, at the end of the applyTheme function.
- The buildTiles function now call calcGridDimension as both are linked to the same events
2018-05-01 05:19:45 +02:00
Koerty 918ecbe493 Rewrite NinePatchComponent to handle images of all sizes
- Rewrite NinePatchComponent to handle images with a different size than 48x48 px
- It's now possible to change the border sizes using setCornerSize function
2018-04-29 02:06:02 +02:00
John Rassa 4a1e9d5f11
Merge pull request #415 from Koerty/grid-default-image
[GRID 5 & 6] Add grid default image and folder image
2018-04-16 21:30:40 -04:00
Koerty 3100fa3a6d Add grid default image and folder image
Add default game image and folder image to the grid. They can be configured by the theme with the gameImage and folderImage properties of the imagegrid.
2018-04-17 01:37:39 +02:00
John Rassa e3bebc872d
Merge pull request #417 from Koerty/help-prompt-origin
Add "origin" theming element for help prompt
2018-04-16 18:43:52 -04:00
Koerty 1b4a545c90 Add "origin" theming element for help prompt 2018-04-15 21:01:54 +02:00
Koerty 4a587ca347 Fix calcGridDimension being called before mScrollDirection 2018-04-15 15:20:49 +02:00
Jools Wills b622a4272e
Merge pull request #413 from jrassa/windows-fixes
fix for several small issues in Windows build
2018-04-14 19:52:40 +01:00
John Rassa 99f7330475 fix for several small issues in Windows build 2018-04-13 16:53:39 -07:00
Koerty deeaf438c7 Clean ImageGridComponent code
- Separated private methods and attributes in 3 groups :
  - images & entries
  - tiles
  - miscellaneous
- Renamed some methods :
  - buildImages -> buildTiles
  - updateImages -> updateTiles
- Moved private methods implementation so they respect the same order as their declaration
- Changed some methods internal variable names and other smalls clean
2018-04-13 15:24:32 +02:00
John Rassa c7c828e47a
Merge pull request #412 from Koerty/crop-image-and-minsize
Add cropping and minSize to ImageComponent
2018-04-12 19:15:13 -07:00
Koerty f946801006 Add scroll direction to the grid
Vertical by default, but can be set to horizontal by the theme
2018-04-13 03:41:50 +02:00
Koerty d23d5dbc59 Add cropping and minSize to ImageComponent
- A call to cropTop(0.2) will crop 20% of the top of the image
- A call to minSIze(0.2, 0.2) will resize the image smallest side to 0.2 without breaking aspect ratio, but crop the extra lenght of the biggest side.
- Call minSize(0.2, 0.2) and then uncrop() to define an image size by its smallest side
2018-04-13 02:57:43 +02: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 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
John Rassa 016956703a
Merge pull request #404 from Koerty/grid-metadata
[GRID 4] Add metadata from the detailed view to the grid view
2018-04-06 19:34:21 -07:00
John Rassa e82895ffca
Merge pull request #403 from Koerty/grid-display-bottom-row
[GRID FIX] Bad tile position when close to the last row and last row is full
2018-04-06 19:18:44 -07: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
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
Koerty c25eaab7fb Fix bad tile position when close to the last row and last row is full 2018-04-04 20:11:47 +02:00
Koerty 87a9c7318a Fix ImageComponent flipY 2018-04-01 17:18:12 +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
John Rassa 9382507e17
Merge pull request #392 from Koerty/grid-enable-for-developers
[GRID 2] Enable the grid for developers
2018-03-27 16:39:31 -07: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
Koerty 41729f8cb8 Rename gridSize to gridDimension in ImageGridComponent.h 2018-03-23 10:25:33 +01:00
Jools Wills 99cc97680d
Merge pull request #387 from pjft/fix-paths
Fixing path generation on the Pi for getDirContents
2018-03-09 18:11:38 +00:00
pjft f6649ec070 Fixing path generation on the Pi for getDirContents 2018-03-09 17:06:39 +00:00
pjft b73d38a781 Fixing common path detection 2018-03-02 10:07:58 +00:00
Tomas Jakobsson 33086042f9 Fix getHomePath crash when the environment variable isn't set 2018-02-20 19:15:34 +01:00
Tomas Jakobsson 5c6b29705a Suggest vector access methods to be inlined 2018-02-15 15:05:47 +01:00
Tomas Jakobsson dbcd749ae7 Add Utils::String::toLower and Utils::String::format 2018-02-15 15:04:46 +01:00
Tomas Jakobsson 267e547122 Rename MameNames::names to MameNAmes::mNamePairs 2018-02-15 15:03:42 +01:00
Tomas Jakobsson e6df25074b Fix double // 2018-02-10 11:35:24 +01:00
Tomas Jakobsson 3f3e1ceb16 Move MameNameMap out of the source and into mamenames.xml 2018-02-09 18:32:05 +01:00
Tomas Jakobsson 1a4d13b6b3 Remove builtin resources 2018-02-08 19:27:44 +01:00
Jools Wills 3adadc9377
Merge pull request #364 from tomaz82/fix_thumbnails
Fix mStaticImage to use setResize
2018-02-02 18:38:00 +00:00
Tomas Jakobsson 6054cb673d Fix start and offset not being reset for each invalidChar tested in Utils::FileSystem::GetEscapedPath 2018-02-02 16:45:21 +01:00
Tomas Jakobsson e52e63cf9c Fix mStaticImage to use setResize 2018-02-01 22:14:54 +01: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 33e7a36163
set default value for ImageDebug option 2018-01-26 19:11:32 -05: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
jrassa b41118fe92 implement debug rects for images similar to text components 2018-01-22 19:31:18 -05:00
Tomas Jakobsson 4428ddaa6d Fix omxplayer when using --screensize, --screenoffset and --screenrotate 2018-01-19 02:09:49 +01:00
Tomas Jakobsson ec8ebf07f3 Fix --screenrotate to work with --screensize and --screenoffset 2018-01-19 00:50:15 +01:00
Tomas Jakobsson e2fc3b325c Add support for --screenrotate 2018-01-18 18:30:00 +01:00
Tomas Jakobsson 7d7ebd5124 Minor misc fixes and warning silencers 2018-01-11 18:12:23 +01:00
jrassa 27e91e78b4 fix resolvePlaceholders to handle multiple variables in a single string 2018-01-07 21:43:18 -05:00
Tomas Jakobsson 18d6b9341e Add getDirContent, getHomePath, getCWDPath, canonicalPath, absolutePath, resolvePath, resolveSymlink, getExtension, removeFile, isAbsolute, isRegularFile, isDirectory, isSymlink, isHidden and isEquivalent
Rename makeGeneric to genericPath and escapePath to escapedPath

Add toUpper
2017-12-30 20:04:18 +01:00
Tomas Jakobsson 05caef2f28 Remove all namespace fs = boost::filesystem; 2017-12-28 15:03:11 +01:00
Tomas Jakobsson 5e8d6b7f45 Eliminated the need for boost::xpressive, boost::algorithm and boost::variant 2017-12-27 18:22:26 +01:00
Christopher Martin d1d622bd93 fix audio mute during loop 2017-12-22 14:54:28 -05:00
John Rassa 5e9c296fe9
Merge pull request #324 from tomaz82/custom_viewport
Implement --screensize and --screenoffset
2017-12-05 08:17:09 -05:00
Tomas Jakobsson 4425ea0165 Implement --screensize and --screenoffset 2017-12-02 19:16:08 +01:00
Tomas Jakobsson 11b8dbfc43 Replaced boost::posix_time with Utils::Time 2017-12-01 18:49:56 +01:00
Jools Wills 190e963285
Merge pull request #301 from tomaz82/cec_update
Log everything CEC does
2017-12-01 17:40:07 +00:00
Tomas Jakobsson b6b6f73a24 Log everything CEC does
Only support libcec4
2017-11-29 21:00:36 +01:00
Tomas Jakobsson cfaa7c19d4 Cleanup a couple of classes 2017-11-25 23:15:55 +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
Jools Wills 094c9ccd09
Merge pull request #308 from tomaz82/utils
Add String and FilesSystem utils
2017-11-16 18:38:15 +00:00
Tomas Jakobsson ae5f9a0342 Move StringUtil to utils subfolder
Added utils/FileSystemUtils which will replace some boost::filesystem functions in the future
2017-11-16 19:18:20 +01:00
Tomas Jakobsson 92b73bd847 Cleaning up a lot of math functions 2017-11-14 20:09:20 +01:00
Jools Wills e94fb5c36d
Merge pull request #300 from psyke83/cec4fix
Implement libcec4 compatibility
2017-11-12 06:26:41 +00:00
Conn O'Griofa 223b68b949 Implement libcec4 compatibility & fix debug logging
Needed for Raspbian stretch.
2017-11-12 00:40:37 +00:00
Tomas Jakobsson 9fbe95daa3 iterator -> const_iterator 2017-11-12 00:05:19 +01:00
Jools Wills b63a2835ba
Merge pull request #298 from tomaz82/clean_pugi
Clean up pugixml.hpp includes
2017-11-10 21:39:56 +00:00
Tomas Jakobsson 7719bff8ae Clean up pugixml.hpp includes 2017-11-10 20:16:42 +01:00
Tomas Jakobsson 232f36f866 Implement StringUtil which has stolen some functions from Font and added unicode2Chars 2017-11-10 19:54:03 +01:00
Tomas Jakobsson 074e22ee37 CEC Support 2017-11-08 23:22:15 +01:00
Tomas Jakobsson dbdf6ed054 Add math/Misc.h 2017-11-06 12:07:32 +01:00
Tomas Jakobsson ac01e8fcd4 Removed all boost::assign::list_of 2017-11-03 01:33:08 +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 8f5fbb0b26 Got rid of Matrix3x3f, Matrix4x4f, Rotation3x3f and Scale3x3f
Everything is now handled by Transform4x4f which now does it way more optimized than previous version
2017-11-01 15:02:48 +01:00
Tomas Jakobsson 226c9fe923 Fix #endif comment 2017-11-01 14:09:38 +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 d3966da2b7 Replace boost::locale with std::locale 2017-10-30 10:35:58 +01:00
Conn O'Griofa 9a8b9c7413 Implement missed inhouse vector replacements
Needed to fix build on Pi after https://github.com/RetroPie/EmulationStation/pull/263.
2017-10-28 23:44:09 +00:00
Jools Wills e5847c5343
Merge pull request #273 from pjft/OMX-warnings
Video String Formatting Warning Fixes
2017-10-28 22:19:09 +01:00
pjft 1cc6059420 Warning Fixes 2017-10-28 22:16:53 +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