Commit graph

577 commits

Author SHA1 Message Date
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
Tomas Jakobsson 7d7ebd5124 Minor misc fixes and warning silencers 2018-01-11 18:12:23 +01:00
Jools Wills db72b21500
Merge pull request #337 from error454/perf
Majorly improved performance when fetching Mame names.
2018-01-09 12:32:26 +00:00
Zachary Burke 7d50301b46 Majorly improved performance when fetching Mame names.
After profiling UI filtering and startup I determined that
getCleanMameName was responsible for the incredibly long load times when
loading/filtering Mame ROMS. This function was using a linear search
over a pre-sorted array to find a corresponding Mame ROM Name from the
ROM name. It now uses a binary search which improves UI load/filter
responsiveness by a couple orders of magnitude.

Single core performance on my i7 for 10,000 iterations was 2.01 secs vs
7.77e-4 secs
2018-01-03 13:47:39 -08: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
John Rassa 5e9c296fe9
Merge pull request #324 from tomaz82/custom_viewport
Implement --screensize and --screenoffset
2017-12-05 08:17:09 -05:00
John Rassa 4a70796814
Merge pull request #320 from tomaz82/date_time
Replaced boost::posix_time with Utils::Time
2017-12-05 08:16:26 -05:00
Jools Wills 96ac974ecb bump version to v2.7.4 2017-12-04 19:36:16 +00: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
pjft f29452e533 Fixes favorites crashing when removing last entry
Regression somewhere down the line.
2017-12-01 17:23:28 +00: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 f35769de6b bump version to v2.7.3 2017-11-18 17:45:18 +00:00
Tomas Jakobsson 160ef73eee Fix NES and SNES scraper that broke during boost cleanup 2017-11-18 18:11:58 +01:00
Tomas Jakobsson 92b73bd847 Cleaning up a lot of math functions 2017-11-14 20:09:20 +01:00
Jools Wills e0585cf501 bump version to v2.7.2 2017-11-13 00:21:20 +00:00
Tomas Jakobsson 9fbe95daa3 iterator -> const_iterator 2017-11-12 00:05:19 +01:00
Tomas Jakobsson 7719bff8ae Clean up pugixml.hpp includes 2017-11-10 20:16:42 +01:00
Jools Wills 8da400aa84
Merge pull request #292 from tomaz82/cec
CEC Support
2017-11-10 03:48:45 +00:00
Jools Wills a6d826a1e9
Merge pull request #293 from zigurana/UIModeConfirmationPopUp
Add confirmation popup when changing to UI mode Kid or Kiosk.
2017-11-10 03:48:24 +00:00
Tomas Jakobsson c66194e9c6 Trying to fix japanese text 2017-11-09 23:08:51 +01:00
D. Polders df7ef94462 Add confirmation popup when changing to UI mode Kid or Kiosk. 2017-11-09 21:51:46 +01:00
Tomas Jakobsson 074e22ee37 CEC Support 2017-11-08 23:22:15 +01:00
Jools Wills b833b45832 bump version to v2.7.1 2017-11-08 17:52:49 +00:00
pjft 4d237cea5e Fixing file deletion when present in "My Collections" bundle 2017-11-07 23:24:51 +00:00
Jools Wills ef8157a896
Merge pull request #283 from tomaz82/romname_bounce
Make long romnames bounce back and forth
2017-11-07 13:22:09 +00:00
Jools Wills 72ce8485c2
Merge pull request #287 from pjft/black-screensaver-fix
Fix for Video Screensaver not showing if menu is open
2017-11-07 13:21:42 +00:00
Tomas Jakobsson bc80308eff Improved long romname text scrolling 2017-11-06 18:34:47 +01:00
Jools Wills e37db2c2e0 bump version to 2.7.0 2017-11-05 10:26:48 +00:00
pjft d25e3b41ea Fix for Video Screensaver not showing if menu is open 2017-11-05 09:37:41 +00:00
Jools Wills d53fdd3420
Merge pull request #282 from zigurana/JumpToLetterWhenFiltered
Allow JUMP TO...  in case of filtered lists
2017-11-05 08:30:30 +00:00
Tomas Jakobsson 92a3286fc8 Add SystemData::indexAllGameFilters that loops through all added games and add's their tags to the filter indexes
This fixes the hidden filtering in Kiosk mode when not using gamelist.xml
2017-11-04 17:32:22 +01:00
D. Polders 5693e4a20c Allow JUMP TO... in case of filtered lists (such as when UIMODE != FULL).
Also add support for numbers and some symbols.
2017-11-03 12:11:11 +01:00
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 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
Tomas Jakobsson 73a2f6b716 Replace Eigen with "inhouse" vector and matrix math 2017-10-28 22:25:01 +02:00
Jools Wills 997ee7b940
Merge pull request #271 from tomaz82/fixWarnings
Fix warnings
2017-10-28 21:10:15 +01:00
Tomas Jakobsson d3e87739e3 fix warnings 2017-10-28 22:07:31 +02:00
Jools Wills d57dee245c
Merge pull request #242 from psyke83/PSFixes
Power Saving enhancements
2017-10-28 20:18:38 +01:00
Jools Wills de42e1c2bd Merge pull request #257 from raelgc/master
Alow to select a system to go directly to the game list (Fixes #253)
2017-10-26 15:27:08 +01:00
Rael Gugelmin Cunha c1f836c713 Add an UI option to automatically load a system gamelist (Fixes #253) 2017-10-25 10:29:39 -02:00
Tomas Jakobsson 294aeaad3f Add windows support to isHidden 2017-10-24 12:32:14 +02:00
Tomas Jakobsson cd2f2ee42b Use local game art ( image, marquee and video ) from romfolder/images if the gamelist didn't specify a path 2017-10-24 00:57:08 +02:00
Jools Wills 06d38db73b Merge pull request #260 from zigurana/fixBuildWarnings
Fix build warnings (mostly adding explicit type casting)
2017-10-18 17:41:36 +01:00
D. Polders fd40e84ba5 Fix build warnings (mostly adding explicit type casting) 2017-10-18 16:22:27 +02:00
Tomas Jakobsson 7bd68501a1 Support FreeImage as a static library 2017-10-17 22:05:12 +02:00
Jools Wills 3c60235363 Merge pull request #238 from mooware/scraper-use-getgameslist
TheGamesDB scrapper should use GetGameList.php
2017-10-13 20:15:08 +01:00
Jools Wills 2ee3d6313a bump version to v2.6.5 2017-10-13 16:46:07 +01:00
jrassa 24f1b969bf add support for default image path in themes 2017-10-05 21:34:32 -04:00
Markus Pointner d75510bde1 TheGamesDB scrapper should use GetGameList.php
Previously GetGame.php was used, but GetGamesList.php is
the "search" API call and more reliably returns the correct game.
2017-09-28 23:30:28 +02:00
Conn O'Griofa 35abc91d30 PowerSaver: force-disable sounds for INSTANT profile 2017-09-28 20:37:02 +01:00
Conn O'Griofa c08c24e615 Remove explicit calls to AudioManager::init() and fix deinit() behaviour
Ensure that deinit() removes the current sInstance so that the next call
to AudioManager::getInstance() will re-initialize audio correctly.

Remove explicit calls to AudioManager::init() and instead rely on
Sound::play() to initialize audio when needed.
2017-09-28 20:32:37 +01:00
Conn O'Griofa dca648c160 TextListComponent: rework onScroll function
Modify onScroll so that AudioManager is initialized only when
playback is necessary. Before this change, ViewController::preload()
was initializing audio during startup for any theme that has the
scroll sound, even if navigation sounds are disabled in the
settings.
2017-09-28 20:32:37 +01:00
Jools Wills 99c1ddb260 Merge pull request #235 from zigurana/KioskMode
Introducing Kiosk Mode, hiding certain menu items from the UI.
2017-09-28 18:55:14 +01:00
Jools Wills 0974f1c6c7 bump version to v2.6.4 2017-09-28 18:10:06 +01:00
D. Polders 7a7550cde9 Introducing Kiosk UI mode, allowing users to hide menu items that might change system configuration settings. 2017-09-12 21:07:18 +02:00
Jools Wills 8e7ee6c931 bump version to 2.6.3 2017-09-10 10:39:45 +01:00
sal ddf94786f4 Add image slideshow screensaver mode
This change adds an image slideshow screensaver mode with optional
background audio.  The existing menu and video screensaver have been
refactored to include this new mode.

By default, the slideshow screensaver will show images from the
game list, but it can be configured in the menu to use a custom
directory instead.
2017-09-08 21:45:50 -06:00
Jools Wills a7e3211996 bump version to v2.6.2 2017-08-31 19:06:49 +01:00
Jools Wills ffec737d95 Merge pull request #226 from mooware/utf8-assert-fix
fix delete-after-use issue with temporary string
2017-08-30 18:20:27 +01:00
Markus Pointner 96d7ac003d fix delete-after-use issue with temporary string 2017-08-30 12:51:48 +02:00
Jools Wills c397492625 Merge pull request #232 from hex007/better-menus
Better handle Menu width
2017-08-30 05:35:14 +01:00
hex007 597128b4ee Better handle Menu width 2017-08-29 17:47:04 -07:00
pjft 8670a04ec2 Revert Help Text getting string pointer 2017-08-29 15:15:00 +01:00
Jools Wills 6b217f3751 bump version to v2.6.1 2017-08-25 23:57:59 +01:00
John Rassa 0b0e0adce6 Merge pull request #225 from jrassa/carousel-fix-single-system
properly render carousel for system configured with only 1 system
2017-08-24 20:34:00 -04:00
jrassa c6a0449be0 properly render carousel for system configured with only 1 system 2017-08-24 17:51:15 -04:00
pjft 7caf70a5e5 Adding slider to control screensaver swap time 2017-08-23 09:21:31 +01:00
hex007 5a62040f63 Fixes blank screen on key press while exiting game 2017-08-22 14:33:26 -07:00
John Rassa 230c6e4a97 Merge pull request #212 from jrassa/carousel-enhancements
carousel enhancements
2017-08-19 09:25:52 -04:00
jrassa c7b3db244e carousel enhancements 2017-08-18 22:03:40 -04:00
Jools Wills 471b1e66a6 bump version to 2.6.0 2017-08-18 09:38:13 +01:00
pjft 01a55ba6a2 Added support for custom Game Collection creation
- Create from a theme folder
- Create by specifying a name
- Refactored collection creation to be on-demand rather than on startup
2017-08-17 16:09:37 +01:00
John Rassa 96fbc1c277 Merge pull request #195 from jrassa/gui-component-enhancements
added origin and rotation support to guicomponent, exposed as theme o…
2017-08-11 21:35:10 -04:00
Jools Wills be192be8a2 bump version to v2.5.2 2017-08-11 19:31:32 +01:00
hex007 90cd10b421 PowerSaver updates:
- Video Screensaver to skip fade in/out if Instant
- Video Previews to skip fade in/out if Instant
- Added Pause/Resume methods to PS for better description
- Added basic documentation to PS header file
- Added trailing after waking up from SS
- Added proper timing offsets after PS is triggered
- PS set to Disabled by default
- some whitespace edits
2017-08-11 10:03:12 -07:00
jrassa 2377175a19 added origin and rotation support to guicomponent, exposed as theme options for several components 2017-08-09 22:15:57 -04:00
hex007 e924b5d14c PowerSaver Updates
- Removed warning while enabling Instant mode
- Fixes Instant mode setting not being saved
- Added methods to support changing screensaver videos after timeout
while using OMX.
- Added methods to support changing Screensaver play next video timeout
- Handled fast animations when Screen saver was disabled by setting
timeout to 0
- Minor fixes
2017-08-03 14:33:01 -07:00
Jools Wills d953d6b5cf bump version to 2.5.1 2017-08-02 17:42:18 +01:00
pjft c150d63d54 Backup previous session's Log file
Always keeps one session’s log backup file.
2017-08-01 14:31:06 +01:00
Jools Wills fc24dbe0c0 Merge pull request #183 from dankcushions/hidden_files
Skip hidden *nix files when populating gamelists.
2017-07-31 18:44:40 +01:00
Jools Wills 5befdbf332 bump version to 2.5.0 2017-07-31 18:41:22 +01:00
dankcushions 5d41e3ad30 Skip hidden *nix files when populating gamelists. 2017-07-31 10:48:46 +01:00
Jools Wills 37b89fe57e Merge pull request #172 from hex007/feature-powersaver
Implement Power Savings feature
2017-07-28 17:05:25 +01:00
Jools Wills af62231926 Merge pull request #167 from nschloe/coverity-retropie
various code fixes
2017-07-28 13:48:03 +01:00
Nico Schlömer 419e6c43e0 various code fixes
From <https://scan.coverity.com/projects/emulationstation?tab=overview>.
2017-07-28 09:57:37 +02:00
hex007 45694cf1a4 Power Saver Feature
- Change Power Saver (PS) from Other Settings menu
- 4 Modes are available : Disabled, Default [default], Enhanced, Instant
- All modes work well with Screensavers and Video previews.
- PS is disabled while running Videos through VLC.
- PS is disabled while Scrapping
- Game counts are shown immidiately if in Instant Mode
- PS mode defaults if Transitions are changed while in Instant Mode
2017-07-25 12:07:35 -07:00
Jools Wills b28fa2ce9f bump version to 2.4.1 2017-07-11 16:20:03 +01:00
pjft a035433d1d Fixing random game selection, and aligning menus
- Fixing off-by-one error
- Update menu alignment
2017-07-11 16:13:22 +01:00
Jools Wills 2decb2b6a4 bump version to 2.4.0 2017-07-08 18:55:48 +01:00
Jools Wills 7ad62df4df Merge pull request #168 from pjft/RetroPie-Virtual-Systems-PR
Adding support for "All", "Favorites" and "Last Played" systems
2017-07-08 07:31:39 +01:00
Jools Wills f30187f0d4 Merge pull request #178 from pjft/Fix-sliders
Moving slider entries in the menus back to the top
2017-07-08 04:45:02 +01:00
Jools Wills cbc8171f43 Merge pull request #177 from pjft/RetroPie-VideoZoom
Fix for lack of zoom transition on video view for systems without marquees
2017-07-08 04:44:31 +01:00
Jools Wills 394cd44758 Merge pull request #173 from jrassa/theme-variables
variable support for themes
2017-07-08 04:38:31 +01:00
pjft 92fbec47c2 Fix for lack of zoom transition on video view for systems without marquees 2017-07-07 20:48:50 +01:00
pjft 535a665fa6 Moving slider entries in the menus back to the top
As some controllers have trouble navigating the menus when sliders are
not on top.
The component hasn’t been changed since Aloshi’s time, so this probably
has been around since ever.
Alas, I cannot reproduce it with my controller, so this is the best I
can do for the time being.
2017-07-07 20:42:30 +01:00
pjft d0cdbf2159 Adding support for Virtual Systems
- Refactoring System Environment data
- Added Virtual System Manager class
- Added "all", "favorites" and "last played" systems
- Added GuiInfoPopup class for notifications
- Added Favorites to metadata, as well as a shortcut to toggle favorites
- Added warning if enabling systems but themes don't support it
- Added "filter by favorites" per system
- Adjusted "Go to Random Game" behavior to account for the fact that we now have an "All Games" system
- Added "sort by system name" for the collections
2017-07-07 20:16:21 +01:00