diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c5c68484..a6a63ca3f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -60,6 +60,7 @@ * Added theme support for setting separate textColorDimmed and iconColorDimmed properties for the system and gamelist views * Added support for nesting of theme variables * Prevented loading of theme sets using the "resolution" tag introduced by RetroPie in 2020 as it's a very bad idea to use this logic +* Added support for vertical abbreviations of multiline text entries * Disabled the pillarboxes and scanline rendering menu options when using a non-legacy theme set * Improved theme element placement by replacing the "alignment" and "logoAlignment" properties with specific horizontal and vertical properties * Made it possible to use almost all game metadata field when theming text elements @@ -96,6 +97,7 @@ * On Windows all dependencies were moved in-tree to the "external" directory to greatly simplify the build environment * Updated the build scripts to support native M1/ARM builds on macOS * Improved the in-tree build on macOS to not needing to install any libraries when compiling the "external" dependencies +* When building as an AppImage the "data" directory (e.g. /usr/share/emulationstation) is now excluded when looking for resources and themes * Large refactoring to improve thread safety and improve singleton pattern usage * Made the logging thread safe * (Windows) Changed many logging entries to use backslashes instead of forward slashes as directory separators @@ -149,6 +151,7 @@ * If a gamelist scroll fade-in animation was playing when opening a menu, it would continue to play after closing the menu * When a legacy theme set had a video view style but did not have a valid md_video entry then the video player would still start (and play the audio) * Clearing a game in the metadata editor would sometimes not remove all media files (if there were both a .jpg and a .png for a certain file type) +* The tile property for the image element did not work correctly with SVG images * Text opacity did not work correctly in some places, such as for the help prompts * ScrollableContainer faded semi-transparent text to fully opaque when resetting * ScrollableContainer faded in the background text color in addition to the text color when resetting @@ -157,6 +160,8 @@ * The device text flickered in GuiDetectDevice when configuring a controller * The selector bar was not aligned correctly during menu scale-up animations * Doing a manual reload using Ctrl+r in debug mode would sometimes not update modified image files +* Abbreviations of long words in multiline text entries sometimes exceeded the designated text area +* The text debug overlay had the wrong size for scrollable containers * StringUtil::delimitedStringToVector could return empty elements * (Windows) File paths would get escaped with quotation marks even if they did not contain any spaces * (Windows) The emulator binary path would sometimes not get escaped correctly in es_log.txt on game launch diff --git a/INSTALL-DEV.md b/INSTALL-DEV.md index fa8942aae..140bad12e 100644 --- a/INSTALL-DEV.md +++ b/INSTALL-DEV.md @@ -1141,6 +1141,8 @@ This custom file functionality is designed to be complementary to the bundled es The bundled es_systems.xml file is located in the resources directory that is part of the application installation. For example this could be `/usr/share/emulationstation/resources/systems/unix/es_systems.xml` on Unix, `/Applications/EmulationStation Desktop Edition.app/Contents/Resources/resources/systems/macos/es_systems.xml` on macOS or `C:\Program Files\EmulationStation-DE\resources\systems\windows\es_systems.xml` on Windows. The actual location may differ from these examples of course, depending on where ES-DE has been installed. +If you're using the AppImage release of ES-DE then the bundled es_systems.xml file is embedded in the AppImage together with the rest of the resources. + It doesn't matter in which order you define the systems as they will be sorted by the `` tag or by the optional `` tag when displayed inside the application. But it's still a good idea to add the systems in alphabetical order to make the configuration file easier to maintain. Note that the `` tags are sorted in [lexicographic order](https://en.wikipedia.org/wiki/Lexicographic_order) so 11 will be sorted above 2 but 002 will be sorted above 011. diff --git a/THEMES-DEV.md b/THEMES-DEV.md index 4750120f8..a9912bda7 100644 --- a/THEMES-DEV.md +++ b/THEMES-DEV.md @@ -1429,7 +1429,7 @@ Properties: - Valid values are `horizontal` or `vertical` - Default is `horizontal` * `staticItem` - type: PATH - - Path to a static image file. Most common extensions are supported (including .jpg, .png, and unanimated .gif). This property can only be used in the `system` view. + - Path to a static image file. Most common extensions are supported (including .svg, .jpg, .png, and unanimated .gif). This property can only be used in the `system` view. * `itemType` - type: STRING - This displays a game image of a certain media type, and can only be used in the `gamelist` view. - Valid values: @@ -1444,7 +1444,7 @@ Properties: - `fanart` - This will look for a fan art image. - Default is `marquee` * `defaultItem` - type: PATH - - Path to the default image file which will be displayed if the image defined via the `staticItem` or `itemType` property is not found. Most common extensions are supported (including .jpg, .png, and unanimated .gif). + - Path to the default image file which will be displayed if the image defined via the `staticItem` or `itemType` property is not found. Most common extensions are supported (including .svg, .jpg, .png, and unanimated .gif). * `itemSize` - type: NORMALIZED_PAIR - Minimum value per axis is `0.05` and maximum value per axis is `1` - Default is `0.25 0.155` @@ -1503,7 +1503,7 @@ Properties: - Minimum value is `0.5` and maximum value is `30` - Default is `3` * `text` - type: STRING - - A string literal to display if there is no `staticItem` / `itemType` or `defaultItem` properties defined or if no images were found. + - A string literal to display if there is no `staticItem` or `defaultItem` property defined and if no image is found. This property can only be used in the system view as for the gamelist view the text fallback will always be set to the game name. * `textColor` - type: COLOR - Default is `000000FF` * `textBackgroundColor` - type: COLOR diff --git a/USERGUIDE-DEV.md b/USERGUIDE-DEV.md index 375abc088..e13d8f5ba 100644 --- a/USERGUIDE-DEV.md +++ b/USERGUIDE-DEV.md @@ -2825,6 +2825,8 @@ We now have four entries in the Theme set selector in the UI settings menu, i.e. Although you place additional themes in your ES-DE home directory, the default slate-DE and modern-DE themes are located in the installation folder. For example this could be `/usr/share/emulationstation/themes` or `/usr/local/share/emulationstation/themes` on Unix, `/Applications/EmulationStation Desktop Edition.app/Contents/Resources/themes` on macOS or `C:\Program Files\EmulationStation-DE\themes` on Windows. +Note that if using the AppImage release on Linux, then there is no installation folder as all files are contained inside the AppImage file. + So if you would like to customize the slate-DE or modern-DE theme sets, simply make a copy of their directories to ~/.emulationstation/themes and then those copies will take precedence over the ones in the application installation directory. Here is a good resource with a list of themes (although you will have to search online for the download location for each theme set):