Commit Graph
393 Commits
Author SHA1 Message Date
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 89e026e714 Rename declaration parameter to fit definition 2019-02-21 18:48:53 +01:00
Vasily f49ade20a4 Fix bug in MirrorDeviceSelector.qml
It was mistakenly referring to the playback device list, instead of the
mirror device list.
2019-02-16 17:59:59 +01:00
Vasily 60418279b5 Remove unused Ptt component 2019-02-16 17:59:17 +01:00
Vasily 6142e1a032 Remove commented out code in PttButtons.qml 2019-02-16 15:18:01 +01:00
Vasily ae47f06447 Remove deprecated features from root page 2019-02-16 15:11:32 +01:00
Vitaly c62c85a08f Remove deprecated elements from AudioPage
There are still many elements remaining from the old input system.
These have not been removed due to time constraints. They should
be removed as part of a general clean up process.

The PTT profile buttons have been replaced with a text telling users
to use the SteamVR bindings interface. This is for people who don't
read changelogs.
2019-02-16 15:11:32 +01:00
Vitaly 3c59a2b2ae Move push to talk bindings to overlaycontroller
The old system used the old OpenVR input system which is
incompatible with the new IVRInput.

This change broke the AccessbilityTabController, but
that is to be removed because the functionality can be
found elsewhere.
2019-02-16 15:11:32 +01:00
Vitaly 28cf033bec Add PushToTalk action 2019-02-16 15:11:32 +01:00
Kung-vr de069ee42e Merge branch 'master' into alpha-kung 2019-02-10 23:56:39 +09:00
Kung-vr 55e0915fc4 Add motion page, comfort mode, rename "room" to "space" 2019-02-10 23:55:48 +09:00
username223 ca67502fc5 Remove the Accessibility Tab completely from the app (#79)
See
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/27

The Accessibility tab was made redundant with the implementation of the
new playspace/room/universe tab in
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/60

The tab inherited from the PttController class, which required changes
in order to work with the new IVRInput system. See
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/51
for more about the IVRInput system.

Removing the page now at an early state is going to make it easier to
refactor the PttController since only one class is inheriting it,
instead of two. Since the Accessibility tab is going to be removed
anyway, it makes sense to remove it now.
2019-02-03 12:33:43 -06:00
Kung-vr be19793b48 Merge branch 'master' into alpha-kung 2019-02-04 00:04:14 +09:00
Kung-vr 6a90f66b2e Split off hand-turn hand-drag and hmdrotation
Hand-turn hand-drag and hmdrotationstats counting are split off into separate functions from the event loop.
2019-02-03 22:42:50 +09: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
Vasily e0768a38b3 Move checkmark and back arrow into .qrc file
The QRC file is a platform independant way of referring to resource
files. It allows the program to access resources in an abstract way
instead of the direct file path.

This is the first step towards moving all files to the new system.
2019-02-02 16:09:02 +01:00
Vasily 76507bd602 Move common elements into /common/ and change imports
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.
2019-02-02 16:09:01 +01:00
Kung-vr 5832eea951 Create quaternion.h to centralize quaternion math 2019-02-02 22:36:19 +09:00
Vasily 083e85cf59 Refactor profile buttons and popups
The popups have been moved inside the scope of the ProfileButtons. Since
the popups open based on the location of their parents, they are
currently opening underneath where they used to open.

Since the profiles and ptt settings do not work anyway, this is seen as
acceptable.
2019-02-01 20:15:51 +01:00
Vasily e0bff66cec Move other PTT buttons into the PttButtons component
The other components were not organized together with the remaining Ptt
buttons. This creates unnecessary separation between related buttons.
2019-02-01 19:49:12 +01:00
Vasily bcd14cdddf Remove unneeded property from AudioNewProfileDialog
The line was an invalid alias, crashing the application on launch.
2019-02-01 19:40:26 +01:00
Vasily b810be3eb8 Refactor PTT buttons into separate file
The PttControllerConfigDialog was not used by anything else, hence it
makes sense to move it into a more limited scope.

The PttControllerConfigDialog file itself is only used by AudioPage and
AccessibilityPage. Since the AccessibilityPage is going to be removed
the PttControllerConfigDialog should be moved into the audio_page
folder.
2019-02-01 19:28:18 +01:00
Vasily 394482e63a Fix regression in profile popups
Without the public ids on the pop ups other buttons that used the
buttons did not work.
2019-02-01 19:16:18 +01:00
Vasily fc06c46144 Refactor audio proximity enable button into separate file 2019-02-01 19:08:26 +01:00
Kung-vr 95be1a4aab Prevent low vsync fps from slowing tick under old 20ms 2019-02-02 03:01:36 +09:00
Vasily a29e6baaf7 Remove id tags from refactored components
The ids are not needed within the AudioPage, since everything has been
encapsulated inside the components.
2019-02-01 16:38:49 +01:00
Vasily 5dc28972ae Refactor microphone volume slider into separate file, clean up AudioPage
An if statement hadn't been transferred to the mirrorVolume slider,
hence it was moved now.
2019-02-01 16:38:49 +01:00
Vasily 5aa5d84345 Indent PTT controls on AudioPage
The PTT controls were grouped in a ColumnLayout with the microphone
device and volume controls. Grouping the microphone controls together
mirrors what is done with the mirror device controls.
2019-02-01 16:38:48 +01:00
Vasily 86599fbd29 Refactor audioMicNameCombo 2019-02-01 16:38:47 +01:00
Vasily c36e9cd168 Move mirror slider into own file
The mirror selector is a sub part of the volume slider. This could be
changed in the future to have the slider be a top level component that
contains both selector and slider.
2019-02-01 16:38:46 +01:00
Vasily 56d866a236 Refactor mirrorAudio dropdown and move logic into
The logic is better abstracted away inside the class.
2019-02-01 16:38:45 +01:00
Vasily cd4a6d6994 Refactor audio device selector into separate file
For now the way to go is to have the mirror device and audio device
selectors as different components instead of trying to inherit from a
single component and filling in the necessary function calls.

This is because some function calls are nested inside other components
and would be very messy. Perhaps in future commits the selectors will
inherit from a single parent.
2019-02-01 16:38:44 +01:00
Vasily b6ffa8d30d Move dialog boxes into separate folder
Setting the default audio profile has also been moved into the separate
dialog box. This should not change anything and no bugs were found in
testing, however I have no idea how objects in QML/C++ are initialized
or if our current codebase is created with this in mind.
2019-02-01 16:38:44 +01:00
Vasily 33768028b4 Move AudioPage.qml into separate directory
This encapsulates the page and separates it and the files it uses from
the rest of the application.
2019-02-01 16:38:42 +01:00
Vasily 6c31fde308 Update OpenVR from 1.1.3b to 1.2.10
The openvr/bin/linux64 directory also contained a file called empty.dir.
This has been removed because it was an empty file.

VREvent_Scroll has been renamed to VREvent_ScrollSmooth, and not
VREvent_ScrollDescrete because the second one will keep scrolling after
having let go of the scroll (tested on Vive controller). This feels
weird when done on a Vive controller and so the first option was chosen.
The first option also feels more like the old system.

Even though the version jump is weird this is the next release.
2019-01-31 21:45:54 +01:00
Kung-vr e17cec1f27 Call movecenter reset on chaperone tab flip orientation (#75) 2019-01-31 13:57:11 -06:00
Kung-vr ffdb47fcb6 Clarified invalid quaternion checking
Note: Considered NaN, however we use a placeholder invalid number rather than NaN because NaN can have unintuitive behavior when comparing as boolean.
2019-01-31 03:54:59 +09: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 1d058dffcf Terminolgy Change: "Playspace" -> "Room"
Valve's official terminology are "Room Setup" and "Tracking Universe". Changed our usage of "Playspace" to "Room" for clarity with the upcoming Room-Turn feature and existing Room-Drag feature when compared to nomenclature for other tools that exits out there.

Also slight clean up in readability of movecentertab's action functions.
2019-01-29 01:11:47 +09:00
Kung-vr a39196af01 Improve readability of vsync and settings update code 2019-01-28 23:11:20 +09:00
Kung-vr d529b21f3e Clean up before PR to master 2019-01-28 03:31:52 +09:00
Kung-vr cca61b3ee7 Merge branch 'master' into alpha-kung 2019-01-28 03:14:42 +09:00
Kung-vr f60be85a58 Merge branch 'master' into utilities-qml 2019-01-28 02:55:30 +09:00
Kung-vr 3e9ec4a48d Merge branch 'master' into alpha-kung 2019-01-28 02:53:24 +09:00
Kung-vr 775aaa7cd0 Support new steamvr input for playspace rotate and move 2019-01-28 02:45:29 +09:00
Vasily 70e7556de8 Move components into their own directories
This prevents the import "utilities_page" from also importing the
subcomponents. They should not be in the global namespace.
2019-01-27 10:29:57 +01:00
Bryan Donlan ac0f957488 Fix NULL dereference in OnDefaultDeviceChanged
When the vive pro wireless adapter loses connection, its audio devices are
removed, causing an OnDefaultDeviceChanged event to be issued for each
such device that was previously set as the default. However, if no other
device is available for the role that was disconnected (e.g. if the Vive
Pro was providing the only system microphone), then pwstrDefaultDeviceId
is NULL.

In this case, we would invoke getDevice on the NULL device ID, then
attempt to print the default device name in the debug logging path; this
NULL dereference would cause AdvancedSettings to crash.

This change simply fixes the logging code to not attempt to print the
new default device name when it is NULL.
2019-01-26 18:18:45 -08:00
Vasily 629c4e2edb Separate individual components into qml files
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.
2019-01-26 20:29:14 +01:00