Commit graph

230 commits

Author SHA1 Message Date
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
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
Conn O'Griofa cdda38d05b Pi: use vsync by default and fix vsync on case
* Now that vsync off explicitly sets swap interval, it's clear that
  we've been using driver defaults (vsync on) up until now.
* Try to enable normal vsync before late swap tearing. The latter
  doesn't constrain framerate and looks basically identical to vsync
  off.
2017-10-27 01:37:09 +00: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 ee4d0d95fa Fix vsync off, SDL_GL_SetSwapInterval(0) is not always default 2017-10-24 12:30:17 +02:00
D. Polders fd40e84ba5 Fix build warnings (mostly adding explicit type casting) 2017-10-18 16:22:27 +02:00
Jools Wills 5f7aec71dc Merge pull request #256 from jrassa/default-image
add support for default image path in themes
2017-10-12 03:51:43 +01:00
Jools Wills 80953960ac Merge pull request #255 from pjft/OMX-Volume
Second stab at normalizing volume scale for OMX Player
2017-10-09 14:52:22 +01:00
pjft a5655ed040 Second stab at normalizing volume scale for OMX Player 2017-10-07 08:58:09 +01:00
jrassa 24f1b969bf add support for default image path in themes 2017-10-05 21:34:32 -04:00
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