5.4.0 Raw Restriction Setting, Apply Offsets (#577)

* Crash Recovery Defaults to Off, add option to use space drag w/ uncalibrated playspace

* increment version 5.3.3

* Feat/apply offsets binding (#576)

* add apply offsets steamvr input

* add new binding to Readme

Co-authored-by: TheMrGong <gongora656@gmail.com>

* increment version 5.4.0

* added LH Console Interface class, WIP TX/RX list via lh console

* switch over to property based dongle information

* add ovr system wrapper

* add use of parameter to avoid warning as error

* openXR fix, and Change Display State of Chaperone Disabled

* update text

* format files

* clang 9.0.0 format

* add documentation update

* remove windows header include

* remove filesystem header

* fix uncal motion switching issue

Co-authored-by: TheMrGong <gongora656@gmail.com>
This commit is contained in:
ykeara
2022-02-23 16:06:03 -06:00
committed by GitHub
co-authored by TheMrGong
parent 522ba46ac6
commit eea713429d
24 changed files with 992 additions and 14 deletions
+30 -5
View File
@@ -62,10 +62,26 @@ MyStackViewPage {
}
MyToggleButton {
id: disableCrashRecoveryToggle
text: "Disable Automatic Crash Recovery of Chaperone Config"
id: enableUnccalMotionToggle
text: "Enable Motion Features When in Uncalibrated Mode (Experimental)"
onCheckedChanged: {
OverlayController.setCrashRecoveryDisabled(checked, true)
MoveCenterTabController.setEnableUncalMotion(checked, true);
}
}
MyToggleButton {
id: openXRFixToggle
text: "OpenXR Fix (force standing universe [Experimental])"
onCheckedChanged: {
OverlayController.setOpenXRFixEnabled(checked, true);
}
}
MyToggleButton {
id: disableCrashRecoveryToggle
text: "Enable Automatic Crash Recovery of Chaperone Config"
onCheckedChanged: {
OverlayController.setCrashRecoveryDisabled(!checked, true)
}
}
@@ -251,8 +267,9 @@ MyStackViewPage {
oldStyleMotionToggle.checked = MoveCenterTabController.oldStyleMotion
universeCenteredRotationToggle.checked = MoveCenterTabController.universeCenteredRotation
enableSeatedMotionToggle.checked = MoveCenterTabController.enableSeatedMotion
enableUnccalMotionToggle.checked = MoveCenterTabController.enableUncalMotion
disableCrashRecoveryToggle.checked = OverlayController.crashRecoveryDisabled
disableCrashRecoveryToggle.checked = !OverlayController.crashRecoveryDisabled
customTickRateText.text = OverlayController.customTickRateMs
vsyncDisabledToggle.checked = OverlayController.vsyncDisabled
customTickRateText.visible = vsyncDisabledToggle.checked
@@ -264,6 +281,8 @@ MyStackViewPage {
nativeChaperoneToggleButton.checked = SettingsTabController.nativeChaperoneToggle
oculusSdkToggleButton.checked = SettingsTabController.oculusSdkToggle
exclusiveInputToggleButton.checked = OverlayController.exclusiveInputEnabled
openXRFixToggle.checked = OverlayController.openXRFixEnabled
seatedOldExternalWarning.visible = MoveCenterTabController.allowExternalEdits && MoveCenterTabController.oldStyleMotion && MoveCenterTabController.enableSeatedMotion
spaceAdjustChaperoneToggle.checked = MoveCenterTabController.adjustChaperone
@@ -299,6 +318,9 @@ MyStackViewPage {
enableSeatedMotionToggle.checked = MoveCenterTabController.enableSeatedMotion
seatedOldExternalWarning.visible = MoveCenterTabController.allowExternalEdits && MoveCenterTabController.oldStyleMotion && MoveCenterTabController.enableSeatedMotion
}
onEnableUncalMotionChanged: {
enableUnccalMotionToggle.checked = MoveCenterTabController.enableUncalMotion
}
onAdjustChaperoneChanged: {
spaceAdjustChaperoneToggle.checked = MoveCenterTabController.adjustChaperone
}
@@ -313,7 +335,7 @@ MyStackViewPage {
customTickRateMsLabel.visible = vsyncDisabledToggle.checked
}
onCrashRecoveryDisabledChanged: {
disableCrashRecoveryToggle.checked = OverlayController.crashRecoveryDisabled
disableCrashRecoveryToggle.checked = !OverlayController.crashRecoveryDisabled
}
onCustomTickRateMsChanged: {
@@ -333,6 +355,9 @@ MyStackViewPage {
onExclusiveInputEnabledChanged:{
exclusiveInputToggleButton.checked = OverlayController.exclusiveInputEnabled
}
onOpenXRFixEnabledChanged:{
openXRFixToggle.checked = OverlayController.openXRFixEnabled
}
}
} // end scroll
}
+6
View File
@@ -10,6 +10,7 @@ import "../chaperone_page"
import "../steamvr_page"
import "../rotation_page"
import "../chaperone_page/chaperone_additional"
import "../steamvr_page/steamvr_additional"
Rectangle {
id: root
@@ -41,6 +42,11 @@ Rectangle {
visible: false
}
property SteamVRTXRXPage steamVRTXRXPage: SteamVRTXRXPage{
stackView: mainView
visible: false
}
property PlayspacePage playspacePage: PlayspacePage {
stackView: mainView
visible: false
+10
View File
@@ -23,6 +23,16 @@ MyStackViewPage {
RowLayout {
Layout.fillWidth: true
MyPushButton {
text: "Device Pairing Information"
Layout.preferredWidth: 350
onClicked: {
MyResources.playFocusChangedSound()
mainView.push(steamVRTXRXPage)
}
}
Item { Layout.fillWidth: true}
MyPushButton {
@@ -0,0 +1,164 @@
import QtQuick 2.7
import QtQuick.Controls 2.0
import QtQuick.Controls 2.5
import QtQuick.Layouts 1.3
import QtQuick.Dialogs 1.2
import ovras.advsettings 1.0
import "." // QTBUG-34418, singletons require explicit import to load qmldir file
import "../../common"
MyStackViewPage {
ListModel{
id: listModelRXTX
ListElement{
TX:"Controller"
RX:"Reciever"
Dev:"device"
DT: "Dongle Type"
}
}
headerText: "Device Pairing Information"
content:
ColumnLayout {
spacing: 10
Layout.fillWidth: true
Layout.fillHeight: true
RowLayout{
MyText{
text: "dongles used: "
Layout.preferredWidth: 200
}
MyText{
id: donglesUse
text: ""
Layout.preferredWidth: 100
}
Item{
Layout.fillWidth: true
}
MyPushButton{
Layout.preferredWidth: 250
text: "Refresh Device List"
id: searchButton
onClicked: {
getRXTX()
}
}
}
RowLayout{
Layout.fillHeight: true
Layout.fillWidth: true
ListView{
id: lvDevInfo
model: listModelRXTX
spacing: 20
Layout.fillHeight: true
Layout.fillWidth: true
clip: true
delegate:
GroupBox {
id: chaperoneTypeGroupBox
Layout.fillWidth: true
label: RowLayout{
MyText {
leftPadding: 10
text: "Device: "
bottomPadding: -10
}
MyText {
leftPadding: 10
text: Dev
bottomPadding: -10
}
}
background: Rectangle {
color: "transparent"
border.color: "#ffffff"
radius: 8
}
ColumnLayout{
anchors.fill: parent
Rectangle {
color: "#ffffff"
height: 1
Layout.fillWidth: true
Layout.bottomMargin: 5
}
RowLayout{
Layout.fillHeight: true
Layout.fillWidth: true
clip: true
MyText{
Layout.preferredWidth: 150
text: "Device ID: "
}
MyText{
Layout.preferredWidth: 250
text: TX
}
Item{
Layout.preferredWidth: 50
}
MyText{
Layout.preferredWidth: 300
text: "Connected Dongle Type: "
}
MyText{
Layout.preferredWidth: 250
text: DT
}
}
RowLayout{
Layout.fillHeight: true
Layout.fillWidth: true
clip: true
Item{
Layout.preferredWidth: 600
}
MyText{
Layout.preferredWidth: 150
text: "Dongle ID: "
}
MyText{
Layout.preferredWidth: 250
text: RX
}
}
}
}
ScrollBar{
clip: true
visible: true}
}
}
}
Component.onCompleted: {
getRXTX()
}
function getRXTX() {
listModelRXTX.clear();
SteamVRTabController.searchRXTX();
donglesUse.text = SteamVRTabController.getDongleUsage();
var pairCount = SteamVRTabController.getRXTXCount()
for (var i = 0; i < pairCount; i++) {
var RXget = SteamVRTabController.getRXList(i);
var TXget = SteamVRTabController.getTXList(i);
var nameGet = SteamVRTabController.getDeviceName(i)
var dongletyp = SteamVRTabController.getDongleType(i)
listModelRXTX.append({RX:RXget, TX:TXget, Dev:nameGet, DT:dongletyp})
}
}
}
//TODO content