diff --git a/build_scripts/qt/resources.pri b/build_scripts/qt/resources.pri
index a18eb04..9d65f21 100644
--- a/build_scripts/qt/resources.pri
+++ b/build_scripts/qt/resources.pri
@@ -54,5 +54,6 @@ DISTFILES += \
src/res/qml/desktop_overlay_page/translation_left_right/SteamDesktopTranslationLeftRight.qml \
src/res/qml/desktop_overlay_page/translation_back_forwards/SteamDesktopTranslationBackForwards.qml \
src/res/qml/desktop_overlay_page/translation_up_down/SteamDesktopTranslationUpDown.qml \
+ src/res/qml/BindingsPage.qml \
win32:RC_ICONS += src/res/img/icons/advicon256px.ico
diff --git a/src/res/img/bindings/bindings.png b/src/res/img/bindings/bindings.png
new file mode 100644
index 0000000..762f6dd
Binary files /dev/null and b/src/res/img/bindings/bindings.png differ
diff --git a/src/res/qml/BindingsPage.qml b/src/res/qml/BindingsPage.qml
new file mode 100644
index 0000000..cae456e
--- /dev/null
+++ b/src/res/qml/BindingsPage.qml
@@ -0,0 +1,18 @@
+import QtQuick 2.7
+import QtQuick.Controls 2.0
+import QtQuick.Layouts 1.3
+import ovras.advsettings 1.0
+import "common"
+
+MyStackViewPage {
+ headerText: "Bindings Guide"
+
+ content: ColumnLayout {
+ Image {
+ source: "qrc:/bindings/bindings"
+ sourceSize.width: 1120
+ sourceSize.height: 659
+ anchors.fill: parent
+ }
+ }
+}
diff --git a/src/res/qml/RootPage.qml b/src/res/qml/RootPage.qml
index 9e06975..9b1f6e8 100644
--- a/src/res/qml/RootPage.qml
+++ b/src/res/qml/RootPage.qml
@@ -141,6 +141,17 @@ MyStackViewPage {
Layout.fillWidth: true
}
+ MyPushButton {
+ id: bindingsButton
+ activationSoundEnabled: false
+ text: "Bindings"
+ Layout.fillWidth: true
+ onClicked: {
+ MyResources.playFocusChangedSound()
+ mainView.push(bindingsPage)
+ }
+ }
+
MyPushButton {
id: settingsButton
activationSoundEnabled: false
diff --git a/src/res/qml/common/mainwidget.qml b/src/res/qml/common/mainwidget.qml
index d044935..b48cbfc 100644
--- a/src/res/qml/common/mainwidget.qml
+++ b/src/res/qml/common/mainwidget.qml
@@ -80,6 +80,11 @@ Rectangle {
visible: false
}
+ property BindingsPage bindingsPage: BindingsPage {
+ stackView: mainView
+ visible: false
+ }
+
StackView {
id: mainView
anchors.fill: parent
diff --git a/src/res/resources.qrc b/src/res/resources.qrc
index 6fb7946..22cbb86 100644
--- a/src/res/resources.qrc
+++ b/src/res/resources.qrc
@@ -17,4 +17,7 @@
img/audio/media_keys/outline_skip_previous_white_24dp.svg
img/audio/media_keys/outline_stop_white_24dp.svg
+
+ img/bindings/bindings.png
+
\ No newline at end of file
diff --git a/src/tabcontrollers/MoveCenterTabController.cpp b/src/tabcontrollers/MoveCenterTabController.cpp
index f1339bb..017d3f3 100644
--- a/src/tabcontrollers/MoveCenterTabController.cpp
+++ b/src/tabcontrollers/MoveCenterTabController.cpp
@@ -2876,7 +2876,8 @@ void MoveCenterTabController::updateSpace( bool forceUpdate )
LOG( INFO ) << "GetWorkingStandingZeroPoseToRawTrackingPose";
outputLogHmdMatrix( standingZero );
reset();
- LOG( INFO ) << "-Resetting offsets-";
+ parent->m_chaperoneTabController.applyAutosavedProfile();
+ LOG( INFO ) << "-Resetting to autosaved chaperone profile-";
return;
}
if ( abs( offsetUniverseCenterXyz[1] ) > k_maxOpenvrWorkingSetOffest
@@ -2892,7 +2893,8 @@ void MoveCenterTabController::updateSpace( bool forceUpdate )
LOG( INFO ) << "GetWorkingStandingZeroPoseToRawTrackingPose";
outputLogHmdMatrix( standingZero );
reset();
- LOG( INFO ) << "-Resetting offsets-";
+ parent->m_chaperoneTabController.applyAutosavedProfile();
+ LOG( INFO ) << "-Resetting to autosaved chaperone profile-";
return;
}
if ( abs( offsetUniverseCenterXyz[2] ) > k_maxOpenvrWorkingSetOffest
@@ -2908,7 +2910,8 @@ void MoveCenterTabController::updateSpace( bool forceUpdate )
LOG( INFO ) << "GetWorkingStandingZeroPoseToRawTrackingPose";
outputLogHmdMatrix( standingZero );
reset();
- LOG( INFO ) << "-Resetting offsets-";
+ parent->m_chaperoneTabController.applyAutosavedProfile();
+ LOG( INFO ) << "-Resetting to autosaved chaperone profile-";
return;
}
@@ -3022,7 +3025,8 @@ void MoveCenterTabController::updateSpace( bool forceUpdate )
LOG( INFO ) << "GetWorkingStandingZeroPoseToRawTrackingPose";
outputLogHmdMatrix( standingZero );
reset();
- LOG( INFO ) << "-Resetting offsets-";
+ parent->m_chaperoneTabController.applyAutosavedProfile();
+ LOG( INFO ) << "-Resetting to autosaved chaperone profile-";
return;
}
if ( abs( offsetUniverseCenterXyz[1] ) > k_maxOpenvrCommitOffset )
@@ -3036,7 +3040,8 @@ void MoveCenterTabController::updateSpace( bool forceUpdate )
LOG( INFO ) << "GetWorkingStandingZeroPoseToRawTrackingPose";
outputLogHmdMatrix( standingZero );
reset();
- LOG( INFO ) << "-Resetting offsets-";
+ parent->m_chaperoneTabController.applyAutosavedProfile();
+ LOG( INFO ) << "-Resetting to autosaved chaperone profile-";
return;
}
if ( abs( offsetUniverseCenterXyz[2] ) > k_maxOpenvrCommitOffset )
@@ -3050,7 +3055,8 @@ void MoveCenterTabController::updateSpace( bool forceUpdate )
LOG( INFO ) << "GetWorkingStandingZeroPoseToRawTrackingPose";
outputLogHmdMatrix( standingZero );
reset();
- LOG( INFO ) << "-Resetting offsets-";
+ parent->m_chaperoneTabController.applyAutosavedProfile();
+ LOG( INFO ) << "-Resetting to autosaved chaperone profile-";
return;
}
vr::VRChaperoneSetup()->CommitWorkingCopy(