* Refactor to fix#1671
* Add GUI/NonGUI mode to info page
* Do not show lock config, if in non-UI mode
* Updae Changelog
* Correct includes
* Ensure key member initialization - RGB Channels
* Ensure key member initialization - WebServer
* Update RGBChannels
* Fix initialization order
* Fix key when inserting new logger in LoggerMap,
Prepare logBuffer-JSON snapshot view in LoggerManager,
Increase buffered loglines to 500
* Fix Memory leak in GrabberWrapper
* Fix Memory leak in BlackBorderProcessor
* Fix Memory leak in BlackBorderProcessor
* use ninja generator under macos
* Fix BGEffectHandler destruction
* Fix Mdns code
* Clear list after applying qDeleteAll
* Fix deletion of CecHandler
* Fix memory leak caused by wrong buffer allocation
* Remove extra pixel consistently
* Change mDNS to Qt SmartPointers
* Correct removal
* Fix usage of _width/_height (they are the output resolution, not the screen resolution)
That avoids unnecessary resizing of the output image with every transferFrame call
* Move main non Thread Objects to Smart Pointers
* Refactor Hyperion Daemon unsing smartpointers
* Correction
* Correct typos/ align text
* Fix startGrabberDispmanx
* Fix startGrabberDispmanx
* Address CodeQL finding
* Create Screen grabbers via Template
* Fix typo
* Change way of logging
* Revert change
* Address deprecation warning
* Correct auto screen grabber evaluation
---------
Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
* Allow to enable/disable suspend & lock event handling
* Fix Windows
* Refactor event handling incl.CEC
* Revert "Auxiliary commit to revert individual files from 0d9a8b8a3a4a09609a339f54c7d8a9384c561282"
This reverts commit 80737d926ad151a07b2493dd1685ed502975cb2e.
* Support Events for Grabbers generically
* Have CECEvent to actions configurable, further clean-ups
* Remove handleEvent from V4L2grabber, as grabber will be stopped on suspend
* Validate that one CEC Event can only trigger one action
* MacOS lock/unlock added
* fast windows fix
* Corrections
* Fix CodeQL findings
* add macos lock/unlock handler
* Migration of CEC-config and have default actions
* Correct target_link_libraries
* Include Foundation
* macOS include AppKit
* Support Scheduled Events, cleanups.
* Fix destructing
* Fix coredump during free
* Consider additional error sceanrio
* Fix missing code
* install desktop icons
* correct bash logic
---------
Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
* Add Suspend/Resume support
* Support Suspend/Resume/Restart via API, UI and Systray
* Support screen lock/unlock scenario
* Handle idle scenario
* Align with fix for #1368
* Update Windows build
* Refactor SuspendHandler to maintain state
* Do not start BG-Effect, if system goes into suspend mode
* Correct Idle and Resume interaction
* Allow build, if no grabbers are enabled
* Align available functions to right Qt version
* Update to next development version
* Align available functions to right Qt version
* fix workflows (apt/nightly)
* Disable QNetworkConfigurationManager deprecation warnings
* Initial go on Smart Pointers
* Add Deallocation
* Correct QT_WARNING_DISABLE_DEPRECATED (available since 5.9)
* Cluster Build Variables
* Hyperion Light
* Address build warnings
* Hyperion Light - UI
* Update Protobuf to latest master
* Removed compiler warnings
* Added restart ability to systray
* Correct Protobuf
* Ignore 'no-return' warning on protobuf build
* hyperion-remote: Fix auto discovery of hyperion server
* Fix Qt version override
* Update changelog
* Remove Grabber Components, if no Grabber exists
* Standalone Grabber - Fix fps default
* Remote Control - Have Source Selction accrosswhole screen
* Enable Blackborder detection only, if relevant input sources available
* Enable Blackborder detection only, if relevant input sources available
* Remote UI - rearrange containers
* Checkout
* Fix compilation on windows
* Re-added qmdnsengine template cmake
* chrono added for linux
* Removed existing AVAHI/Bonjour, allow to enable/disable mDNS
* hyperiond macos typo fix
* Fix macOS Bundle build
* Fix macOS bundle info details
* Correct CMake files
* Removed existing AVAHI/Bonjour (2)
* Share hyperion's services via mDNS
* Add mDNS Browser and mDNS for LED-Devices
* Support mDNS discovery for standalone grabbers
* Remove ZLib Dependency & Cleanup
* mDNS - hanle 2.local2 an ".local." domains equally
* Hue - Link discovery to bridge class, workaround port 443 for mDNS discovery
* Fix save button state when switching between devices
* Removed sessions (of other hyperions)
* mDNS Publisher - Simplify service naming
* mDNS refactoring & Forwarder discovery
* mDNS Updates to use device service name
* Consistency of standalone grabbers with mDNS Service Registry
* Merge branch 'hyperion-project:master' into mDNS
* Start JSON and WebServers only after Instance 0 is available
* Remove bespoke qDebug Output again
* MDNS updates and refactor Forwarder
* Minor updates
* Upgrade to CMake 3.1
* typo
* macOS fix
* Correct merge
* - Remove dynamic linker flag from standalone dispmanX Grabber
- Added ability to use system qmdns libs
* Cec handler library will load at runtime
* typo fix
* protobuf changes
* mDNS changes for Windows/macOS
* test window build qmdnsengine
* absolute path to protobuf cmake dir
* Rework Hue Wizard supporting mDNS
* LED-Devices - Retry support + Refactoring (excl. Hue)
* LED-Devices - Refactoring/Retry support Hue + additional alignments
* Address LGTM findings
* Fix CI-Build, revert test changes
* Build Windows in Release mode to avoid python problem
* Correct that WebServerObject is available earlier
* Ensure that instance name in logs for one instance are presented
* Update content LEDs
* Rework mDNS Address lookup
* Fix LED UI
* Fix for non mDNS Services (ignore default port)
* Disbale device when now input is available
* Revert back some updates, ensure last color is updated when switched on
* Handle reopening case and changed IP, port for API-calls
* Add UPD-DDP Device
* WLED support for DDP
* Fix printout
* LEDDevice - Allow more retries, udapte defaults
* LED-Net Devices - Select Custom device, if configured
Co-authored-by: Paulchen Panther <16664240+Paulchen-Panther@users.noreply.github.com>
Co-authored-by: Paulchen Panther <Paulchen-Panter@protonmail.com>
* Stop Web-Capture when priority changes
* Remote control UI: Treat duration=0 as endless
* Stop Web-Capture on non-Image events changes
* LED Matrix Layout - Support vertical cabling direction
* Additional Yeelight models
* Treat http headers case insensitive
* Update change log
* Treat http headers case insensitive (consider Qt version)
* API - Consider provided format when setImage
* UI - Support Boblight configuration per LED instance
* Support multiple Boblight clients with different priorities
* Update changelog
* Simplify isGUI rules allowing for QT only builds
* Sysinfo: Fix indents
* LED-Devices: Show warning, if get properties failed
* Qt-Grabber: Fixed position handling of multiple monitors
* LED layout: Remove indention limitations
* Yeelight: Test YLTD003
* hyperion-remote: Provide image filename to muxer/UI
* Refactor PriorityMuxer and related
* Temp: Build under Windows 2019
* Yeelight: Remove YLTD003 as it is not working without additional changes
* Test Windows-latest with out removing redistributables/new MSVC
* correct workflows
* correct CI script
* Build Windows with Qt 5.15.2
* Priority Muxer: Updates after testing
* Fix Typo
* Update BGHandler
* QTGrabber - Reactivate windows code to avoid cursor issues
* Emit prioritiesChanged when autoselect was changed by user
Co-authored-by: Paulchen Panther <Paulchen-Panter@protonmail.com>
* Hyperion Light - Have EffectEngine as component
* Hyperion light - Build switches for LED Devices (Serial, Network)
* Fix file uri generation
* Fix missing guard for Windows
* Fix file uri generation
* Update jsonschema and checkschema
* Allow to provide cmake build args to docker build
* Fix too much copy/paste
* Fix typo
* Commandlineoptions: Additional error details for Int and Double ranges
* Standalone grabbers: Show fps range on error, fix default host address
* Allow --version, even if hyperion is already running
* Add CPU-Model to SysInfo
* Add additional CPUInfos
* Use fileUtils & RegEx on CPU-Info
* Add CPU - Hardware info
* Update changelog
* Suppress empty CPU info elements
* Packages are now created with dependencies
Signed-off-by: Paulchen-Panther <paulchen-panter@protonmail.com>
* Ignore site packages
Signed-off-by: Paulchen-Panther <paulchen-panter@protonmail.com>
* MacOS Package creation disabled
* Append the OpenSSL library to the dependency list
* - Exit codes and Error message are suppressed when copying files
- OpenSSL root directory is set under MacOS
- OpenSSL symlinks are attached
- Packages and build directory renamed into Hyperion
Signed-off-by: Paulchen-Panther <paulchen-panter@protonmail.com>
* Update to semver version
* Use version file for version management
* Read version file in azure
Co-authored-by: brindosch <edeltraud70@gmx.de>
* Push progress
TODO: rework RESET, probably to main.cpp again
* resetPassword rework
* enable administration restriction
* add short cmd for userdata
* Js apis
* Refactor JsonCB class
* Add userToken Auth
* Feat: Close connection if ext clients when def pw is set
* Feat: Protect db against pw/token tests
* WebUi PW Support (#9)
* Initial WebUi Password Support
* Small changes
* Initial WebUi Password Support
* Small changes
* Basic WebUi Token support
* added "removeStorage", added uiLock, updated login page
* Small improvments
* Small change
* Fix: prevent downgrade of authorization
* Add translation for localAdminAuth
* Feat: Show always save button in led layout
* Revert "Feat: Show always save button in led layout"
This reverts commit caad1dfcdee311bb6496839752b2a2df3f0fd98b.
* Feat: Password change link in notification
* Fix: body padding modal overlap
* Feat: Add instance index to response on switch
* prevent schema error
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
* Feat: add pw save
* Feat: callout settings/pw replaced with notification
* add deployment
* add correct api key
* fix cmake lists and add heroku app name
* Update .gitmodules
sync modules with upstream
* add possibility to start hyperiond as systray app
* cleanup
* - new command line options: --desktop --service to set desired mode (systray icon / console only)
- auto detect x server - if avail run in gui mode
- on osx always run in gui mode
- use existing icon from webconfig, instead of own icon
- add ability to no gice a config file name. If config not given, default config file will be set (home dir, or hyperiond dir, depending on writable state)
* fix warnings and compile error
* use own icon for systray purpose
* use new logo
* - set application properties
- fix force service mode
* start of integrating a bonkour service browser
* some experiments
* blub
* bonjour browser via jsonrpc ...
* fix indention
* - make leddevice as component
- extend sysinfo with domain
- add more data for bonjour browser (e.g. split domain and hostname)
* code cleanup
* add translation
* use component names instead of ids
* fix compile
* implement 404 for webserver - this is a quick hack, should be refactored later
* add http error pages ... design is more a placebo ;-)
* tune errorpages
fix some cgi related stuff, now only python is possible
executing and reading python file is possilbe, but it cannot receive any data from webui
* fix typo
* fix another typo
* always output latest version of config file to webui
* fix permissions after default config export
* tune code
* set permissions for exported effects
* use qt setperm instead of chmod
update effects code style a bit
* add fallback when config is not readable
* rename platform rpi-pwm to rpi. remove original rpi platform
install symlink to bin folder
create effects folder for custom effects
* fix osx jobs evaluation
* - remove feature of using multiple config files for automaticly start other hyperion instances
- add auto config file creation
- tune service files
* add auto path creation for initial default config
* debian package:
rename service to hyperiond
remove copy of config file
* Replaced getoptplusplus with QCommandLineParser. Fixes#39
* enabling C++11 if possible
* enabling C++11 if possible
* fixed gcc compilation issues
* fixed linux builds and improved os x build
* trying to fix dispmanx
* trying to fix dispmanx
* simplified travis build script
* fixed argumentparser default values
* rewrote validator system and made sure default arguments are processed correctly
* rewrote validator system and made sure default arguments are processed correctly
* fixed bool vs. regular options
* oops... removing debug code
* reverted screenshot api change
* fixed OS X compatibility
* adding OS X travis test
* ignoring autogenerated files
* adding OS X travis test
* fixed os x building
* fixed os x building
* reduced ignore file
* v4l osx issue fixed
* improved qt5 detection
* disabled cleaning of child threads on os x for the time being
* fixed avahi on OS X