Commit Graph
37 Commits
Author SHA1 Message Date
Vasily edaf982149 Prefix openVrInit with m_, like other member objects 2019-01-19 16:23:17 +01:00
Vasily d8f179fdf7 Refactor OpenVR init code to separate class
The OpenVR init code is currently being run in the OverlayController
constructor. Member objects that are initialized before the
OverlayController (ideally all of them) can't use OpenVR APIs before the
first line of the OverlayController constructor. Implementing the OpenVR
Init code as a class means that it is able to initialize before all the
other objects and allow them to use OpenVR APIs in their constructors.

The class has been placed in a folder called "overlaycontroller" to
signify that it should only be used by the OverlayController.

openvr_init.h uses #pragma once despite it being unofficial since it is
supported on all modern compilers.

The copy constructor, copy assignment operator, move constructor and
move assignment operator have been explicitly deleted in order to make
sure nobody tries to use the object in an unintended way, and to
document that these functions should not be automatically created.

The version error messages have been replaced with a single lambda,
since they were all identical.

The version error text should maybe tell the user to update Advanced
Settings instead of OpenVR, since Advanced Settings contains the version
strings in the binary.

No other exit functions were documented on the official docs besides
VR_Shutdown().
2019-01-18 23:28:17 +01:00
Robin Appelman e75a4c2353 use QStandardPaths to get resource locations (#44)
* use QStandardPaths to get resource locations

While this shouldn't change behaviour for windows, it allows installing the resource files seperate from the binary on unix systems

* initialize battery overlay handles to 0
2019-01-12 16:34:45 -06:00
Vasily 148acf08ef Prefix OverlayController TabController members with m_ 2019-01-11 23:04:57 +01:00
Vasily d4fbdf5877 Prefix additional member variables in OverlayController with m_ 2019-01-11 23:04:56 +01:00
Vasily 65d1c8da38 Prefix desktopMode and noSound member vars with m_
This keeps consistency with the rest of the class and reduces possible
confusion, especially when member vars and parameters have the same
name.
2019-01-11 23:04:56 +01:00
Vasily 6ce10bd2f0 Change OverlayController from singleton pattern to regular RAII
The singleton pattern was poorly implemented and didn't provide the
benefits usually associated with the singleton pattern, with all the
negatives.

Refer to this github issue:
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/29
2019-01-11 23:04:55 +01:00
Vasily a49d889ee8 Move easylogging++ include into necessary files
logging.h previously had logic to enable debug logging even on release
builds. This logic was moved to the QMAKE file, hence the logging.h file
is no longer necessary.
2018-12-28 20:07:00 +01:00
Vasily 51057c1d79 Format every single file using .clang-format 2018-12-28 03:06:42 +01:00
Vasily e7e7272d52 Fix memory leaks as result of missing delete[]
The delete keyword only calls a single destructor, delete[] calls as
many as there are members in the array.
2018-12-27 14:23:54 +01:00
Vasily f4feafaa03 Add parens around statement to banish warning 2018-12-27 01:26:13 +01:00
ykeara 734581f495 merged IceWind's most recent changes 2018-11-25 20:46:29 -06:00
Robin Appelman dcf33f1384 fix mouse coordinates under linux 2018-11-09 00:58:38 +01:00
Robin Appelman 20853df594 fix building under linux 2018-11-09 00:07:32 +01:00
ykeara 51e377f4d1 Removed logging during playspace moving 2018-11-03 12:23:13 -05:00
Robin Appelman 9522e45466 'grow' chaperone bounds up when moving playspace 2018-03-27 00:08:09 +02:00
Robin Appelman d0e6dffe38 fix chaperone moving 2018-03-26 23:37:17 +02:00
Robin Appelman 5fc0cc8fcb offset all 3 axis in one go 2018-03-21 21:35:53 +01:00
Robin Appelman f9cf2880cd initial work on virtual move shortcut 2018-03-14 16:48:10 +01:00
matzman f48b583aca Reimplemented sound effects.
Added chaperone proximity warnings.
Other bugfixes and improvements.
2017-08-15 21:44:29 +02:00
matzman 22af8b9633 Added reprojection ratio to statistics page. 2017-02-11 23:54:55 +01:00
Mel Klimushyn 1aa1580a90 Move the push-to-toggle y axis adjustment from the playspace page to a new Accessibility Tools tab, packaged as a new height adjustment tool. Height offset is saved and can be set via slider. 2017-02-07 00:13:41 -08:00
matzman 6b65b66f8e Fixes an application crash when Revive is not installed. 2017-01-07 18:54:49 +01:00
matzman b4bfd0f744 Fine-tuned granularity of spinner boxes on revive page.
Added check for outdated OpenVR installation.
Changed version string to v2.2.
2017-01-07 15:26:16 +01:00
matzman 2a2f747518 Updated to OpenVR 1.0.5
Added simple alarm clock to utilities page.
Bugfixes and Improvements.
2017-01-05 18:28:54 +01:00
matzman 93484d2bdc Added keyboard input utilities. Allows to send text input as emulated key strokes to the active application. 2016-12-29 16:02:17 +01:00
matzman 3f53235b1b Bugfixes and Improvements. 2016-12-22 00:51:17 +01:00
matzman a93bdeb063 Outsourced matrix math code into separate header. 2016-12-20 20:30:42 +01:00
matzman 129c6e3db1 First more or less complete version of Revive tab. 2016-12-17 00:39:17 +01:00
matzman c54ee1b4c0 Some fixes more log statements, and changed version to v2.1. 2016-12-09 22:07:13 +01:00
matzman 765dcd0408 Who would have thought that QApplication::exit() does return and does not exit the program immediately. 2016-12-09 01:29:19 +01:00
matzman 68cfa664e3 Fixed crash on exit. 2016-12-09 00:17:38 +01:00
matzman b766dc72cc Added desktop and no-sound modes.
When -desktop is given on the command line then the settings menu is shown on
the desktop instead of an vr overlay.
When -nosound is given on the command line then there are no sound
effects.
2016-12-04 23:37:00 +01:00
matzman e39c240ff5 Complete GUI overhaul (from Qt Widgets to Qt Quick Controls 2)
Added chaperone profiles
Added separate supersampling sliders for applications/compositor
Added asynchronous reprojection on/off switch
Merged in Microphone Control Overlay
Added Push-to-Talk profiles
Updated to OpenVR 1.0.3
Requires at least SteamVR beta 1477423729.
2016-10-28 18:38:05 +02:00
matzman 8e815b0ce4 Downgraded the OpenGL context version to 2.1. Qt's QOpenGLPaintDevice is
not compatible with OpenGL versions >= 3.0. NVIDIA does not care, but
unfortunately AMD does.
Also tweaked some other qt & opengl settings for more pleasant visuals.
2016-09-22 00:16:35 +02:00
matzman af956a8702 Updated Readme and added files missing from last commit. 2016-09-16 21:52:34 +02:00
matzman de0fdb3e1f Inial commit v1.0. 2016-09-11 21:42:12 +02:00