From 94eb34a5cf02450e76afdfa98eabf6e54c55c14c Mon Sep 17 00:00:00 2001 From: Leon Styhre Date: Fri, 17 Sep 2021 23:42:43 +0200 Subject: [PATCH] Documentation update. --- CHANGELOG.md | 8 ++++++++ CONTRIBUTING.md | 9 +++++---- CREDITS.md | 14 ++++++++++++-- THEMES-DEV.md | 2 ++ USERGUIDE-DEV.md | 10 ++++++++-- 5 files changed, 35 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 94579c16e..8bb7b09a4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,20 +11,26 @@ ### Detailed list of changes * Added alternative emulators support where additional emulators can be defined in es_systems.xml and be selected system-wide or per game via the user interface +* Added a virtual keyboard partly based on code from batocera-emulationstation * Added the ability to make complementary game system customizations without having to replace the entire bundled es_systems.xml file * Added a menu option to change the application exit key combination * Expanded the themeable options for "helpsystem" to support custom button graphics, dimmed text and icon colors, upper/lower/camel case and custom spacing +* Added support for using the left and right trigger buttons in the help prompts * Removed the "Choose" entry from the help prompts in the gamelist view * Changed the "Toggle screensaver" help entry in the system view to simply "Screensaver" * Added support for upscaling bitmap images using linear filtering * Changed the marquee image upscale filtering from nearest neighbor to linear for the launch screen and the gamelist views * Moved the Media Viewer and Screensaver settings higher in the UI Settings menu * Moved the game media directory setting to the top of the Other Settings menu, following the new Alternative Emulators entry +* Added a blinking cursor to TextEditComponent +* Added support for a new type of "flat style" button to ButtonComponent +* Added support for correctly navigating arbitrarily sized ComponentGrid entries, i.e. those spanning multiple cells * Bundled the bold font version of Fontfabric Akrobat * Added the GLM (OpenGL Mathematics) library as a Git subtree * Replaced all built-in matrix and vector data types and functions with GLM library equivalents * Replaced some additional math functions and moved the remaining built-in functions to a math utility namespace * Added a function to generate MD5 hashes +* Moved the "complex" mode functionality from GuiComplexTextEditPopup into GuiTextEditPopup and removed the source files for the former * Changed two clang-format rules related to braced lists and reformatted the codebase * Changed the language standard from C++14 to C++17 @@ -32,6 +38,8 @@ * When navigating menus, the separator lines and menu components did not align properly and moved up and down slightly * With the menu scale-up effect enabled and entering a submenu before the parent menu was completely scaled up, the parent would get stuck at a semi-scaled size +* Horizontal sizing of the TextComponent input field was not consistent across different screen resolutions +* The "sortname" window header was incorrectly spelled when editing this type of entry in the metadata editor * When the last row of a menu had its text color changed, this color was completely desaturated when navigating to a button below the list ## Version 1.1.0 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b2407e56c..45d8f5725 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -31,8 +31,8 @@ This plan is under constant review so expect it to change from time to time. Sti * Support for pre-defined alternative emulators and cores (configured in es_systems.xml) * Badges highlighting things like favorite games, completed games etc. (will require theme support) * Improved full-screen support, removing the temporary full-screen hacks -* On-screen keyboard -* Support for the Raspberry Pi 4 with OpenGL ES 2.0 and GLSL shaders (Raspberry Pi OS) +* Virtual (on-screen) keyboard +* Support for the Raspberry Pi 4 (Raspberry Pi OS) * Add GLM library dependency for matrix and vector operations, decommission the built-in functions * Add to more Linux repositories, BSD ports collections etc. * Flatpak and Snap releases on Linux @@ -40,8 +40,9 @@ This plan is under constant review so expect it to change from time to time. Sti #### v1.3 * Localization/multi-language support -* Overhaul of the theme handling, adding capabilities and improving compatibility with Recalbox and Batocera themes -* Scrapping the Grid view style and adding a general grid/wall component instead +* New theme engine with generalized views (only System and Gamelist) and theme variants support +* Add multiple new gamelist components (wheels, wall/grid etc.) +* Move existing theme logic to legacy support, only to be used for backwards compatibility * Checksum support for the scraper for exact searches and for determining when to overwrite files * Improved text and font functions, e.g. faster and cleaner line wrapping and more exact sizing diff --git a/CREDITS.md b/CREDITS.md index da8a9e873..60cac7b99 100644 --- a/CREDITS.md +++ b/CREDITS.md @@ -11,8 +11,6 @@ https://retropie.org.uk Leon Styhre (Desktop Edition fork, based on the RetroPie version) \ https://gitlab.com/leonstyhre/emulationstation-de -The shader code for blur_horizontal.glsl, blur_vertical_glsl and scanlines.glsl has been borrowed from the [RetroArch](https://www.retroarch.com) project. - # UI Art & Design @@ -63,6 +61,18 @@ SDL \ https://www.libsdl.org +# Code + +Some code (like the virtual keyboard) was borrowed from Batocera.linux \ +https://batocera.org + +The MD5 hash functions were adapted from code by the BZFlag project \ +https://www.bzflag.org + +A few of the GLSL shaders were borrowed from the RetroArch project \ +https://www.retroarch.com + + # Resources Akrobat font \ diff --git a/THEMES-DEV.md b/THEMES-DEV.md index a42c00152..7359ef622 100644 --- a/THEMES-DEV.md +++ b/THEMES-DEV.md @@ -884,6 +884,8 @@ EmulationStation borrows the concept of "nine patches" from Android (or "9-Slice `button_l`, `button_r`, `button_lr`, + `button_lt`, + `button_rt`, `button_a_SNES`, `button_b_SNES`, `button_x_SNES`, diff --git a/USERGUIDE-DEV.md b/USERGUIDE-DEV.md index b0e689e42..122b7fec9 100644 --- a/USERGUIDE-DEV.md +++ b/USERGUIDE-DEV.md @@ -132,9 +132,11 @@ _This is the dialog shown if no game files were found. It lets you configure the The game systems configuration file `es_systems.xml` is located in the ES-DE resources directory which is part of the application installation. As such this file is not intended to be modified directly. If system customizations are required, a separate es_systems.xml file should instead be placed in the `custom_systems` folder in the ES-DE home directory, i.e. `~/.emulationstation/custom_systems/es_systems.xml`. -Although it's possible to make a copy of the bundled configuration file, to modify it and then place it in this directory, that is not how the system customization is designed to be done. Instead the intention is that the file in the custom_systems directory complements the bundled configuration. This means that only systems that are to be modified should be included. For example you may want to replace the emulator launch command, modify the full name or change the supported file extensions for a single system. In this case it wouldn't make sense to copy the complete bundled file and just apply these minor modifications. As well, future updates to ES-DE may contain changes to existing emulator entries which would then not be utilized as the custom configuration file takes precedence over the bundled file. +Although it's possible to make a copy of the bundled configuration file, to modify it and then place it in this directory, that is not how the system customization is designed to be done. Instead the intention is that the file in the custom_systems directory complements the bundled configuration, meaning only systems that are to be modified should be included. -It's also possible to skip the loading of the bundled es_systems.xml file and only use the file in custom_systems, although this will probably rarely be needed. The instructions for how to accomplish this as well as how to customize the es_systems.xml file can be found in [INSTALL-DEV.md](INSTALL-DEV.md#es_systemsxml). +For example you may want to replace the emulator launch command, modify the full name or change the supported file extensions for a single system. In this case it wouldn't make sense to copy the complete bundled file and just apply these minor modifications, instead an es_systems.xml file only containing the configuration for that single system should be placed in the custom_systems directory. + +The instructions for how to customize the es_systems.xml file can be found in [INSTALL-DEV.md](INSTALL-DEV.md#es_systemsxml). There you can also find an example of a custom file that you can copy into ~/.emulationstation/custom_systems/ and modify as required. ## Migrating from other EmulationStation forks @@ -952,6 +954,10 @@ There are some special characters in ES-DE such as the favorites star, the folde With this option enabled, there will be an overlay displayed when scrolling the gamelists quickly, i.e. when holding down the _Up_, _Down_, _Left shoulder_ or _Right shoulder_ buttons for some time. The overlay will darken the background slightly and display the first two characters of the game names. If the game is a favorite and the setting to sort favorites above non-favorites has been enabled, a star will be shown instead. +**Enable virtual keyboard** + +This enables a virtual (on-screen) keyboard that can be used at various places throughout the application to input text and numbers using a controller. The Shift and Alt keys can be toggled individually or combined together to access many special characters. The general use of the virtual keyboard should hopefully be self-explanatory, + **Enable toggle favorites button** This setting enables the _Y_ button for quickly toggling a game as favorite. Although this may be convenient at times, it's also quite easy to accidentally remove a favorite tagging of a game when using the application more casually. As such it could sometimes make sense to disable this functionality. It's of course still possible to mark a game as favorite using the metadata editor when this setting is disabled. The option does not affect the use of the _Y_ button to add or remove games when editing custom collections.