Commit graph

229 commits

Author SHA1 Message Date
Conn O'Griofa 98c170f829 AudioManager: don't initialize when unnecessary
If navigation sounds are disabled, don't initialize AudioManager
unnecessarily.
2017-09-28 20:37:02 +01:00
Conn O'Griofa 1bfcfb1f16 PowerSaver: close audio during PS when possible
If SDL audio device is paused, deinit audio when PS mode kicks in
so that full power savings can be achieved.
2017-09-28 20:32:37 +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
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
hex007 8d4a69cacf Handle longclick in PS:Instant mode 2017-09-21 10:44:00 -07: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
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 85ebeb524e Merge pull request #239 from hex007/feature-powersaver
Disable PS when swap timeout less than PS mode
2017-09-04 18:52:41 +01:00
hex007 da81347dfc Disable PS when swap timeout < PS mode 2017-09-03 19:55:37 -07: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 9ecc1317ba Merge pull request #229 from pjft/VRAM-Adjust
Setting VRAM default at 80 for the Pi
2017-08-30 05:35:31 +01:00
hex007 597128b4ee Better handle Menu width 2017-08-29 17:47:04 -07:00
pjft b6a1234168 Setting VRAM default at 80 for the Pi
More often than not users are running into glGetErrors 505 (running out
of video memory) when using heavy themes with the default 100 VRAM
setting.

The advice of setting it to 80 is often the solution.

Until we have a proper/better GPU management solution, this is probably
a better default.
2017-08-28 11:08:56 +01:00
pjft 7caf70a5e5 Adding slider to control screensaver swap time 2017-08-23 09:21:31 +01:00
Jools Wills 6d95146df6 Merge pull request #220 from pjft/OMX-Volume-Control
Making OMXPlayer respect sound settings
2017-08-23 02:38:33 +01:00
pjft cf3b641c3c Making OMXPlayer respect sound settings 2017-08-22 20:34:59 +01: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
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
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
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 6f00abbdf7 Merge pull request #192 from jrassa/default-font-size-fix
fix default font sizes when running in vertical orientation
2017-08-01 05:53:11 +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
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
jrassa 60971b2c73 fix default font sizes when running in vertical orientation 2017-07-27 23:05:46 -04: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 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 394cd44758 Merge pull request #173 from jrassa/theme-variables
variable support for themes
2017-07-08 04:38:31 +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
jrassa 2bacc9c431 variable support for themes 2017-06-30 23:58:51 -04:00
hex007 64effcc69c Move Carousel transition to separate switch
- Removed Simple Slide
- Added Switch to control Carousel transition
2017-06-28 09:50:37 -07:00
jrassa 2c217ec4c1 fix show snapshot on video delay 2017-06-13 22:19:43 -04:00
Jools Wills 2188efd2b6 Merge pull request #153 from pjft/RetroPie-ScreenSaver-Merge
Adding Random Video Screensaver/Attract Mode, plus controls
2017-06-12 16:43:41 +01:00
pjft 59d7516a16 Random Game Screensaver, Game Name and Controls
- Final changes for VLC screensaver support as well
- ALSA de-init/re-init only when needed
- Adding screensaver options menu inside UI settings
- Slightly moved options (Show Frameskip to "Other Settings", sorting within same menu)
- Adding info popups on random video screensaver and OMX + Game Info setting
2017-06-11 19:56:05 +01:00
jrassa 1a6beb5520 make color themable for ratings like normal images 2017-06-08 19:18:27 -04:00
Jools Wills 118849fff2 Merge pull request #157 from jrassa/gamelist-fixes
fixes for gamelist bugs; added option to specify image for selctor bar
2017-06-07 03:30:45 +01:00
fieldofcows 0d04633954 Changes from fieldofcows to separate screensaver into separate module, squashed by pjft. 2017-06-05 20:02:09 +01:00
jrassa 3a98bd3847 fixes for gamelist bugs; added option to specify image for selctor bar 2017-06-04 23:12:22 -04:00
hex007 2d38605a08 Fixes for USB sound cards
- Ability to change device used for Volume control (PCM/Speaker/Master) only on Pi.
- Ability to change Audio device used for OMX player (local/hdmi/both/ALSA:HW:0,0/ALSA:HW:1,0)
2017-06-02 08:58:44 -07:00
Jools Wills ad8614fb79 Merge pull request #74 from joolswills/hotkey_configure
allow configuring the "hotkey enable" button
2017-05-31 17:25:52 +01:00
Jools Wills fc3e08b449 Allow configuring of the hotkey button
* add hotkey button gfx and hotkey to input configuration
 * prompt user if no hotkey set, and offer to use select
 * if no hotkey is set, still save an entry with key id 0, for backward compatibility
2017-05-31 16:59:17 +01:00
hex007 c32dee41ca Bug fixes :
- Incorrect strech in VideoComponent
- Reboved blank params in VideoVlcComponent
2017-05-30 09:12:57 -07:00
pjft 029e8bd040 Fixes and tweaks to OMXPlayer work, by pjft
- Correct handling of zombie processes left in memory
- Add options to mute video
- Fix resizing to work with theme refactorings introduced by jdrassa and zigurana
2017-05-28 21:33:05 +01:00
fieldofcows 34ea9caa89 Adding experimental OMX video player component. Squashed from fieldofcows' work (by pjft). 2017-05-28 21:26:23 +01:00
Jools Wills e27e7cfd19 move setImage in Window::init
* part of 4802d128fe that said it tried to call GL functions before initialised. Didn't confirm this, but looks reasonable.
2017-05-28 17:43:41 +01:00
Jools Wills 92fdab2d38 Merge pull request #52 from HerbFargus/splash-updates
add black splash
2017-05-20 20:41:45 +01:00
jrassa 354d3b9dec implement z-index support for themeing system view and gamelist views 2017-05-18 19:22:55 -04:00
pjft 80526c777e Fixing whitespaces and indentation (tabs) 2017-05-18 12:51:45 +01:00
pjft 4e5c1ce49e Changes to mitigate white flashes ES navigation
- Set default GL clear color to black, rather than white
- Revert changes to ImageComponent intialization that cause white flashes
- Increased ALSA buffer to prevent buffer underruns which stall CPU momentarily
- Improved carousel texture buffering based on navigation direction and speed
2017-05-17 20:53:30 +01:00
Jools Wills 006e716e64 Merge pull request #108 from zigurana/SelectGamelistViewType
Add Explicit Gamelist Type selection to GUI menu.
2017-05-04 16:30:23 +01:00
Jools Wills a909f10b2d Merge pull request #115 from pjft/RetroPie-master-filter-rebase
Adding generic gamelist filter funcionality for ES
2017-05-04 16:25:57 +01:00
jrassa 474891f4a3 fix black boxes appearing on gamelist after scrolling 2017-04-30 22:54:27 -04:00
pjft 7f84eeea94 Adding generic gamelist filter funcionality for ES, specifically genre, players, ratings and publisher/developer 2017-04-28 12:05:20 +01:00
Jools Wills 573c8b5304 Merge pull request #111 from joolswills/pugixml_update
update pugixml to v1.8.1 / convert to a submodule
2017-04-04 03:31:47 +01:00
Jools Wills 0a7605cae1 we map to pageup/pagedown not leftbottom/rightbottom - fixes page up / down buttons in date input etc 2017-04-04 03:06:07 +01:00
Jools Wills 752472355a convert pugixml to git submodule and update to v1.8.1 2017-04-03 19:47:17 +01:00
Jools Wills 61a493c38a fix warning 2017-04-03 19:41:21 +01:00
D. Polders 003d9edbf9 Add Explicit Gamelist Type selection to GUI menu.
Currently supports Basic, Detailed, Video, and Automatic types. The Automatic type checks for the availability of first video's, then screenshots, defaulting to Basic view if none are present.
2017-03-29 21:20:12 +02:00
D. Polders ac5e3ad95f System Carousel feature, now with only a single commit! 2017-03-25 21:09:12 +01:00
D. Polders 6cb81ab1af Small changes to facilitate building on Windows platform using VS2015 2017-03-16 22:44:56 +01:00
Jools Wills f84fcfa62b Merge pull request #93 from dirk-de-bugger/TextEditComponent
Improved TextEditComponent
2017-03-13 17:57:35 +00:00
Jools Wills 87098bcb09 Merge pull request #102 from jrassa/videoMaxSize
implement maxSize for videos
2017-03-13 17:52:48 +00:00
John Rassa 49940d62d7 implemented feature element to allow themes to support new features w… (#96)
* implemented feature element to allow themes to support new features without breaking older versions of ES

* supported attribute should only allow one value
2017-03-10 18:49:15 +00:00
jrassa e2374271f2 don't enable video view if current theme doesn't support it 2017-02-24 23:19:29 -05:00
jrassa 44f886c961 implement maxSize for videos
implement maxSize for videos
2017-02-23 20:43:37 -05:00
dirk-de-bugger b851f91bd3 Fix initial text positioning and improve keyboard handling in TextEditComponent 2017-02-20 21:24:52 +01:00
fieldofcows 6872f47277 Fix WSOD by loading textures on demand in a separate thread when a user configurable texture memory threshold is reached 2017-01-29 22:46:22 +00:00
John Rassa e974cd9d43 Added a --no-splash option for disableing the ES logo
fix indentation
2017-01-12 19:55:36 +00:00
fieldofcows 25e1067794 Add video view that is based on detail view but allows themes to include a video preview of the selected game along with a marquee image 2016-12-12 09:34:01 +00:00
Jools Wills 4d27443f33 emulationstation - add additional scroll speed tier, and slow down fastest speed 2016-11-30 18:15:13 +00:00
verybadsoldier 329730cc3e Decoupled screensaver and sleep mode: background jobs will only prevent sleep mode but screen saver (dimming) will still be active. 2016-09-17 17:08:52 +02:00
vbs b1daeafe24 Added flag for GUI components to indicate activate background processing.
ES won't enter sleep mode if any component has the processing flag set.
(In sleep mode no more calls to update() on any components are invoked)
2016-09-17 10:34:02 +02:00
Joseph Mann cdd819e041 Fix linux (fedora) compilation issues 2016-08-31 12:17:38 +01:00
Jools Wills 2f0e1fa9ef Merge pull request #59 from unclealex72/master
Vastly improve loading time of EmulationStation
2016-08-15 01:04:35 +01:00
Jools Wills 3eba889bdf Revert "workaround for analogue trigger configuration - eg with xpad." 2016-08-14 20:24:39 +01:00
Jools Wills c5b74947a0 workaround for analogue trigger configuration - eg with xpad.
Unlike other axis, they don't default to 0, but instead start at -32768 and go to +32767 when pressed. This confuses the
current ES code axis code. As a workaround, we get the initial value and if it is -32767, we add 32767 and divide by two. This gives it
a range that can be handled with the current code (from 0 to 32767). Note on my X11 machine, I had to plug the joystick in after ES
was loaded or it get 0 as the initial axis value for the triggers. This seems ok on the RPI though, so possible some SDL issue.

With this change on a 360 controller the triggers should be correctly detected as +2 and +5 without seeing two presses for each trigger press.
2016-08-13 01:49:44 +01:00
Alex Jones 454a18f9ec Trust the gamelist by not checking whether files exist and also improve the algorithm for parsing the gamelist. 2016-08-10 17:48:56 +01:00
Jools Wills fa513e4c2d cosmetic - spaces -> tabs to match rest of file 2016-08-10 02:48:04 +01:00
M. Broncano f3cf36fd94 Fixes libGL problem 2016-07-23 04:11:44 +00:00
Jools Wills 60c1d0a1f9 Merge pull request #54 from joolswills/rename_buttons
rename buttons to avoid confusion (bottom -> shoulder / top -> trigger).
2016-07-05 19:53:20 +01:00
Jools Wills a78c9721be rename buttons to avoid confusion (bottom -> shoulder / top -> trigger). 2016-07-04 00:29:53 +01:00
Ken Taylor ab8409da41 Always reload input config after running onfinish script 2016-07-01 22:14:41 -07:00
HerbFargus 004243bb76 add black splash 2016-06-23 19:47:41 -06:00
Jools Wills 267b43fa05 move ParseGamelistOnly option to the gui so people can easily enable it for faster startup 2016-03-26 03:31:13 +00:00
Jools Wills 26f4850eaf add configuration menu "other settings" and add "save metadata on exit" option, which users can use to speed up exit - fixes #35 2016-03-26 01:59:36 +00:00
Jools Wills e65a1ee80a Merge pull request #30 from joolswills/hide_mouse_early
Hide mouse cursor early
2016-02-05 00:08:19 +00:00
Christian Uhsat 15fdbb2a83 Hide mouse cursor early 2016-02-05 00:07:34 +00:00
Devenor 9b78834b42 Added symlink support on removeCommonPath 2016-01-31 19:26:40 +00:00
Jools Wills fe86459f99 don't call shutdown from ES directly - which causes it to not save the gameslists on exit. Instead create files
/tmp/es-restart /tmp/es-sysrestart /tmp/es-shutdown to decide what we want to do. there is an emulationstation.sh launch
script to handle this
2016-01-17 18:33:59 +00:00
Jools Wills 6f0b63b1bb trailing whitespace introduced by #9 2015-10-03 20:41:44 +01:00
Jools Wills ecc1552990 Merge remote-tracking branch 'retropie/master' into retropie-master 2015-10-03 20:23:53 +01:00
Jools Wills 7bffae0812 change hold to skip timer to 1 second. This means the countdown message never shows, but it says at the top to hold to skip and this makes it a lot more convenient to set up snes style controllers.
Has been tested by herbfaargus also, who agreed it's an improvement. #6
2015-10-03 20:20:33 +01:00
gizmo98 cdda6f6dc1 Skip controller config if known device is added after startup
Fix for problems like this:
http://blog.petrockblock.com/forums/topic/retropie-wont-recognize-ps3-controller-unless-ps-button-is-hit-before-es-start/
http://blog.petrockblock.com/forums/topic/elegent-method-of-detecting-wireless-controller-before-starting-es/

No controller found message pops up if no controller is connected. If a known controller is connected and any button is pressed system selection menu will show up instantly.
2015-09-28 19:25:15 +02:00
Florian 65f2409d91 CHG: Additional input types, user-defined input config scripts 2015-06-01 20:47:42 +02:00
Aloshi da86b618c4 Quick fix for the stack overflow with DateTimeComponents in a ComponentGrid. 2015-03-06 09:25:42 -06:00
Aloshi d2b0fec88b Catch pageup/pagedown in DateTimeComponent edit mode. 2015-03-05 17:49:26 -06:00
Aloshi 2b3080f90b Make DateTimeComponent honor theme size values again. 2015-03-05 17:43:38 -06:00
Aloshi 5d0fc6a1b7 Fixed DateTimeComponent being cut off when a date is manually entered (from "unknown" -> "01/01/1990"). 2015-03-05 17:21:52 -06:00
Aloshi 310b1f9613 Removed some unused Renderer functions (onInit, onDeinit). 2015-03-03 16:36:21 -06:00
Aloshi 420fecc737 Only include codecvt on Windows.
Should fix gcc build errors.
2015-02-21 21:36:00 -06:00
Aloshi df896cb933 Hopefully fixed non-ASCII paths not working on Windows.
Kind of emulator-dependent on if this works or not.
2015-02-21 16:48:56 -06:00
Jesper Ek 1e320b7718 Fixes two memory leaks, which caused the scraper to crash after a while. I believe this fixes #180.
Fixes #352 (duplicate).
Fixes #362 (duplicate).

The destructor for AsyncHandle needs to be virtual as its subclasses are
allocated dynamically. I believe this caused the ImageDownloadHandle and its
related resources (such as the HttpReq and its contents) not to be freed
correctly.
2015-02-09 23:23:36 +01:00
Aloshi 2926442bf0 Set hint regardless of setting (in case it is changed during run-time). 2015-01-15 17:47:31 -06:00
Felipe Otamendi 33d6733d64 Add a setting to allow for joystick input to work while not in focus. 2015-01-13 23:36:25 -02:00
Alec Lofquist 3afbc4543f Fixed buffer overflow in HttpReq::encodeUrl.
I believe the character in the URL string was being read as a signed char instead of an unsigned char which caused weirdness with Unicode characters.
2014-11-29 14:42:30 -06:00
Aloshi 7c48887ab3 Hide the console on Windows unless --debug is set. 2014-11-24 20:50:09 -06:00
Aloshi cefe9b6287 Merge branch 'utf8' into unstable 2014-11-23 09:55:57 -06:00
Aloshi 635b9f9327 FINALLY added vsync.
Defaults to on for all platforms except the RPi. Force it off with "--vsync 0".

Will try to use late swap tearing if supported on the current system.
2014-11-22 11:03:02 -06:00
Aloshi f899b8aaaf Fix backwards "sound enabled" logic (#261). 2014-11-11 19:13:57 -06:00
Alec Lofquist c870caee03 Fix newlines messing up cursor offset.
Fix an uninitialized value in TextEditComponent.
2014-10-18 15:46:14 -05:00
Alec Lofquist 885efcf431 Fixed Font::getWrappedCursorOffset. 2014-10-18 15:32:18 -05:00
Alec Lofquist 50d2ba2291 Fall back to the DroidSansFallbackFull.ttf font on Linux. 2014-09-27 17:19:37 -05:00
Aloshi 030c840cfb Fixed uninitialized max glyph size in Font. 2014-09-27 16:09:49 -05:00
Aloshi 7c31d7ca0a Hopefully fixed compiling on Linux. 2014-08-31 09:57:38 -05:00
Aloshi 531fb50e01 Fixed text editing for multi-byte characters. 2014-08-30 15:37:51 -05:00
Aloshi c4d0e0229e Added fallback font support. Untested on Linux (but should fail gracefully). 2014-08-30 15:36:56 -05:00
Aloshi 8739519e15 Fix removeCommonPath throwing an exception when path does not exist. 2014-08-13 18:45:26 -05:00
Aloshi 9f040f4c71 Fixed deinitialization/reinitialization for fonts. 2014-08-11 18:05:18 -05:00
Aloshi fb16dd8a91 Fix shutdown/restart commands on Windows. 2014-08-02 14:19:57 -05:00
Aloshi ded816905d Fixed a typo in MenuComponent that accidentally used a constant as a
boolean value (technically still worked)
2014-07-27 17:49:12 -05:00
Aloshi 2b22e1fe0b Rewrote font code to use multiple textures.
Will corrupt after playing a game.
2014-07-27 16:44:02 -05:00
Aloshi dbdbcde6cd Renamed folders to match their projects properly. 2014-06-20 20:03:05 -05:00