Commit Graph
52 Commits
Author SHA1 Message Date
Kung-vr 24d2a189c9 Adjust tracker battery overlay position for Vive Tracker 3.0
This is a slight adjustment to the battery overlay position to prevent clipping with the new Vive Tracker 3.0 higher face and closer prongs. These changes shouldn't degrade functionality on other trackers.
2021-03-21 23:44:47 +09:00
Vasily 3857c2ac2f Refactor update rates of tab controllers
Previous way of controlling when controllers were run was split among
the different controllers, meaning that third parties would require
knowledge of internal state of controllers in order to be on the same
update schedule as them.

This refactor moves the logic into a seperate class.

Additionally, it also stops the use of the `adjustUpdateRate` function
on all tab controllers, since it broke the prime-number-ability of
less collisions.
2020-06-06 20:53:34 +02:00
Vasily 4757756d32 Refactor alarm system and replace notification method
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
2020-06-05 20:52:13 +02:00
ykeara 5a7ad06b1c changed m_k_ to m_ (#341) 2019-12-22 11:23:41 -06:00
Vasily 71b8a336c2 Convert m_alarmTime to new settings API 2019-12-10 08:28:41 +01:00
Vasily 09fcf79e8b Convert keyboardShortcuts to new settings API 2019-12-10 08:28:41 +01:00
Vasily 3375ee4b1a Convert m_vrcDebug to new settings API 2019-12-10 08:28:41 +01:00
Vasily a272decd73 Convert m_alarmIsModal to new settings API 2019-12-10 08:28:41 +01:00
Vasily e38c72ef42 Convert m_alarmEnabled to new settings API 2019-12-10 08:28:41 +01:00
ykeara 05c12cd4a0 Re-Add color overlay (#311)
* fixed Chaperone toggle, toggle state on launch

* made update rates based on variable frame rate assuming 90 default

* added overlay color back in

* fixed opacity value not synching

* updated to ovr 1.8.19

* fixed license issue

* rolled back ovr update

* fixed overlay toggle state, formatting, and clamped max opacity to .85%
2019-11-08 14:45:26 -06:00
Kung-vr b4dbbe8857 Add keyboard input RShift, tilde, "no key up" tokens and debug buttons
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
2019-10-01 10:36:04 +09:00
ykeara 4b0be27ff6 Video and Steam VR Tab Re-work + keyboard binds (#289)
* 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
2019-09-01 02:35:00 -05:00
Vasily 0c6ed9a68d Remove widget and parent pointers from UtilitiesTabController
The pointers are not needed and are an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily 387ae30899 Fix indentation with clang-format 8
AppVeyor automatically updated to LLVM 8 while everything else was on 7.
It is not possible to downgrade to LLVM 7 on AppVeyor, so we'll update
everything else to LLVM 8.
2019-04-19 15:29:18 +02:00
Kung-vr ed8cc8ddf6 Add Ctrl-C and Ctrl-V buttons to utilities tab 2019-04-14 17:54:08 +09:00
Vasily b53ebb699f Remove version specific header files for KeyboardInput
The headers were identical after no longer using the abstract class for
platform independence.
2019-04-04 14:01:11 +02:00
Vasily e7df60311c Convert keyboardinput from class to regular header
No consistent state is needed so it doesn't make sense for it to be a
class.
2019-04-04 14:01:11 +02:00
Vasily c8f4ea4ea0 Convert KeyboardInput to non-virtual class 2019-04-04 14:01:11 +02:00
Vasily cba76f6846 Remove old desktop width C++ code 2019-03-31 22:31:26 +02:00
Vasily d654567d98 Convert to new paths system 2019-03-19 16:10:35 +01:00
Vasily 815fc15414 Fix formatting
QtCreator does not reformat things when using the "Refactor Symbol"
option.
2019-03-11 12:42:35 +01:00
Vasily 5b9e94869c Move application strings into separate namespace
Them being in the overlay controller required them to be static, which
forces the compiler to give them a memory location at compile time. They
also don't really fit into the overlaycontroller.
2019-03-11 11:24:57 +01:00
Vasily 9b701688fd Make desktop overlay log debug instead of info
This prevents spam of something that is highly likely to happen and out
of our control.
2019-03-10 23:12:26 +01:00
Vasily b7ff972997 Update desktop overlay waiting logic
The old version waited for a set amount of time (2 seconds) before
checking and then exiting. The new logic checks every second for up to 7
seconds. This should deal with variances in startup time across
machines. On my machine the desktop overlay seems to be initialized
after 2-3 seconds.
2019-03-10 23:12:26 +01:00
Vasily 9f85af81d1 Save desktop width setting
The 2 seconds is arbitrarily chosen. The problem seems to be that
Valve's own overlays are not being initialized before custom overlays,
leading to the Desktop overlay sometimes not being present when our
overlay initializes.

The second if statement inside the first one checking a second time is
definitely a little disgusting, but for now it gets the job done.

The 4.0 default was arbitrarily chosen by whoever decided to initialize
the variable in the class.
2019-03-10 23:12:26 +01:00
Vasily 1d103a5265 Move desktop overlay set up into separate function 2019-03-10 23:12:26 +01:00
Vasily 81ae0efd1c Add -Wmissing-variable-declarations to all clang/gcc compilers 2019-02-21 18:48:53 +01:00
Vasily edf14b6bf9 Fix clang -Wdouble-promotion
gcc instance failed before compiling.
2019-02-21 18:48:53 +01:00
Vasily 4d06360c92 Fix gcc and clang -Wdouble-promotion 2019-02-21 18:48:53 +01:00
Vasily ec014a1e74 Add -Wdouble-promotion switch to clang/gcc compilers
It introduces a lot of ugly casts. Long term the floats should probably
be changed to doubles everywhere since we're only compiling for 64 bit
x86.
2019-02-21 18:48:53 +01:00
Vitaly acb666a142 Remove old style casts and enable warnings for them 2019-02-21 18:48:53 +01:00
Vasily 81af2b9c72 Add -Wshadow and solve warnings 2019-02-21 18:48:53 +01:00
Vasily a4ecb0b114 Convert images to use .qrc file, move images
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.
2019-02-02 16:09:06 +01:00
Kung-vr 854681dcdf static constexpr to constexpr changes
static constexpr to constexpr changes for update counters and invalid quaternions and radians conversion
2019-01-31 03:37:15 +09:00
Kung-vr 31696863be Replace magic numbers, fix bindings localization
Replace magic numbers with constants and centralize settings update counters. Rename actions manifest localization from "en" to "en_US" (Thanks Ykeara)
2019-01-30 15:11:11 +09:00
Kung-vr a39196af01 Improve readability of vsync and settings update code 2019-01-28 23:11:20 +09:00
Kung-vr de4cc5e88f Merge branch 'master' into alpha-kung 2019-01-25 00:14:33 +09:00
Vasily 0a49c7a717 Add Alt+Enter button to Utilities page, update Win Alt+Tab func
Requested in this reddit post:
https://www.reddit.com/r/Vive/comments/agnvux/advanced_settings_280_motion_smoothing_audio_and/ee7muqo/

Use case is toggling full screen mode on applications.

The Alt+Tab function has been updated with a constexpr var that reduces
duplication in the function calls and makes the keys even more explicit.
2019-01-23 18:49:10 +01:00
Kung-vr 53138c5fef Implemented vsync tick for event loops 2019-01-14 03:24:15 +09: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 ace455d3d3 Add media functions to UtilityTabController 2019-01-12 19:14:57 +01:00
Vasily faa6ccc580 Refactor sendKeyboard functions to new funcs, propogate constness
The sendKeyboardBackspace function was used with a non-const parameter
throughout the entire inheritance hierachy. Const has been added to
every parameter for the reasons you add const.
2019-01-12 19:14:56 +01:00
Vasily 51057c1d79 Format every single file using .clang-format 2018-12-28 03:06:42 +01:00
Vasily b097908b12 Rename parameters shadowing class members
Parameters with the same name as class members are ripe for introducing
bugs. The fact that the "this->" syntax is optional creates confusion
for maintaining programmers who can only guess at the intention.
2018-12-27 18:27:27 +01:00
Vasily f42c481308 Add brackets around intialization of 2D array inside struct
2 brackets are necessary because it's initialization of a struct,
intializing an 3 member array of 4 floats.
2018-12-27 14:29:22 +01:00
Robin Appelman 8e2ca3602a Add option to send Alt-Tab as keyboard input 2018-12-26 16:32:38 +01:00
Robin Appelman 0c6a7ff498 split keyboard input logic into platform specific code 2018-11-09 00:07:31 +01:00
Robin Appelman ea2a1a6fe2 Battery indicators for trackers
Add battery indicators to vive trackers that show when the dashboard is open
2018-10-28 17:20:36 +01:00
matzman 6c7240fcf6 Added steam desktop overlay width slider. 2017-01-27 23:53:02 +01:00
matzman ff885b63ce Added don't annoy me toggle to alarm clock.
Changed version to v2.2.1.
2017-01-12 00:06:01 +01:00