* add nlhomann json header
* add get scene app fn
* add get current binding and related logic
* add save binding file to settings folder
* apply binding fn added fixed uid bug
* add button logic to QML, add enable Bind Setting
* add finding logic for all custom bind
* fix minor qml issues
* fix get controllername bug, fix bug with save bind
* fix regex issue
* change webrequest for selectconfig
* change to properly urlify path to send
* fix race condition web requests
* change steamvr tab qml formatting
* change color scheme
* change colors of icons to text color
* change bind qml better for better ux
* add possible workaround for space drag issues
* add deact color to pushbutton
* increment version
* adjust button size in movecenter
* move nlhomann json
* fix PKGBUILD to include missing dependency (#606) (#613)
It turns out qt5-websockets needs to be included for a successful build.
Co-authored-by: James R <71466513+ColdIce1605@users.noreply.github.com>
* fix warning
* improved logging messages around perapp bindings
* improve getsceneappID logging
* add HMD based controller Finding
* improve logging controller name
* change logging around initial chaperone calibration
* increment version
* improve logging/error handling around sceneappid failures
* added fallback for getting scene app by pid
* update version string
* update documentation
Co-authored-by: James R <71466513+ColdIce1605@users.noreply.github.com>
The old OpenVR overlays did not function for unknown reasons, and it was
not possible to get them to work.
With this a white overlay with ALARM ACTIVATED will be shown for 3 seconds.
It's not pretty, but it effectively communicates that an alarm has been
activated.
This fixes
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/417
These are used to add support for vrc debug commands which I personally wanted to add. Because it's a narrow use case the must be enabled manually by adding vrcDebug = true to [utilitiesSettings] in the OpenVRAdvancedSettings.ini file
* changed color overlay to use gain values instead of overlay
* moved SS/Motion smoothing, and filter to video tab
* began refactor of steamVR qml page
* added misc toggles to steamvr tab
* added imu fallback and DND, and some qml formatting
* added Camera Settings to SteamVR page
* changed formatting to minimize height
* added video profiles cleaned up steamvr controller
* delta comparison change
* added profiles for video
* fixed display bug in colorgroupbox and removed frivoulous saves
* removed commented code
* added custom keybind buttons
The implementation is simple 3D vector scaling and addition. The
HmdMatrix34_t consists of a 3x3 rotation matrix and a 3D vector for
position.
The overlay position is only updated whenever a new overlay is changed
because we need the old overlay position in order to modify it. The
openvr call to get the position is only updated whenever you open the
menu.
A new page was created due to lack of space on the utilities page.
All images have been moved to the /img/ folder in order to fully
separate qml from images. The .qrc file allows qml to use the images by
appending the qrc:/ prefix before the abstract path to the image.
Note that the .qrc file is also check at compile time, which further
enhances the confidence the lack of errors.
Some of the images are not used in the QML, but instead directly passed
through to the OpenVR API. These have not been added to the .qrc file.
Elements work like they've always done, this just moves the commonly
used components away from the global namespace.
The qmldir file still does something, although at this point it is
unknown exactly how it's used and whether or not it could be changed to
simplify imports across the block.
This removes the massively indented logic in the previous version.
Notice that individual components will still be imported with an
import "utilities_page". Therefore anything except UtilitiesPage.qml
should be in a separate folder.
The QML at the moment is a giant mess. Moving pages into individual
folders and properly abstracting the sub components of the pages will
allow for much easier development and better error messages.
Additionally it will prevent polluting the global namespace. Really, all
the reasons for avoiding globally available values and using
abstractions in regular programming also come into play here.