diff --git a/Readme.md b/Readme.md
index 462ecb7..2f89888 100644
--- a/Readme.md
+++ b/Readme.md
@@ -21,6 +21,7 @@ Adds an overlay to the OpenVR dashboard that allows access to advanced settings
* [AppImage](#appimage)
* [Arch/Manjaro](#archmanjaro)
* [Building from Source](#building-from-source)
+ * [Guides](#guides)
* [Bindings](#bindings)
* [Music](#music)
* [Motion](#motion)
@@ -33,7 +34,6 @@ Adds an overlay to the OpenVR dashboard that allows access to advanced settings
* [WMR](#wmr)
* [Touch](#touch)
* [Other Controllers](#other-controllers)
- * [SteamVR Input Guide](#steamvr-input-guide)
* [Command Line Arguments](#command-line-arguments)
* [INI File Options](#ini-file-options)
* [Preview builds](#preview-builds)
@@ -80,7 +80,8 @@ Do all this without leaving VR:
- Advanced Space Features: gravity, space-turn, and space-drag
- Control media players (Pause/Play, Next Song, Previous Song, Stop).
- Send keyboard inputs (like Alt+Tab, Alt+Enter, Backspace, etc.).
-- Bind VR controller buttons to send keyboard inputs (for example to mute VOIP applications while in VR). [Tutorial](docs/keyboard_input_guide.md).
+- Bind VR controller buttons to send keyboard inputs (for example to mute VOIP applications while in VR).
+- Center Marker with rotation indicator.
- All the above also available from a window on the desktop.
# Usage
@@ -120,9 +121,23 @@ Manjaro users can [enable](https://wiki.manjaro.org/index.php/Arch_User_Reposito
Detailed instructions are available [here](docs/building_for_linux.md).
+## Guides
+
+### Overall Feature Overview Guides
+
+- [Kung's 3.0 New Feature Guide (video/youtube)[https://youtu.be/2ZHdjOfnqOU)]
+
+### SteamVR Input System (keybinds for app)
+
+- [Steam VR Input System (text)](docs/SteamVRInputGuide.md)
+
+### Keyboard Binding System
+
+- [Keyboard Input Guide (text)](docs/keyboard_input_guide.md)
+
## Bindings
-For information on how to properly set-up bindings see: [SteamVR Input Guide](#steamvr-input-guide)
+For information on how to properly set-up bindings see: [SteamVR Input System Guide](#guides)
The following actions currently exist:
### Music
@@ -174,10 +189,10 @@ Actions that don't have a clear category.
| Y-Axis Lock Toggle | Binary/Button | Toggles the lock of the Y-Axis for offsets.|
| Z-Axis Lock Toggle | Binary/Button | Toggles the lock of the Z-Axis for offsets.|
| Chaperone Toggle | Binary/Button | Toggles the chaperone on/off. |
-| Push to Talk | Binary/Button | Acts as starter for PTT, can mute if push-to-mute is selected.|
| Keyboard Shortcut One | Binary/Button | Sends the key sequence defined the the settings file. Defaults to Ctrl+Shift+M (Discord default toggle mute). |
| Keyboard Shortcut Two | Binary/Button | Sends the key sequence defined the the settings file. This has no default sequence. |
| Keyboard Shortcut Three | Binary/Button | Sends the key sequence defined the the settings file. This has no default sequence. |
+| Key Press Misc | Binary/Button | Sends the key press defined in the settings file. Defaults to F9 |
### System.
@@ -187,8 +202,10 @@ Actions That will stay active regardless of the situation.
| Action | Type | Explanation |
| ------------- | ------------- | ------------ |
+| Push to Talk | Binary/Button | Acts as starter for PTT, can mute if push-to-mute is selected.|
| Add Left Haptic Click | Binary/Button | simulates a "click" with controller haptics. (left hand)
| Add Right Haptic Click | Binary/Button | simulates a "click" with controller haptics. (right hand)
+| Key Press System | Binary/Button | Sends the key press defined in the settings file. Defaults to F9 |
### Haptics.
@@ -247,12 +264,6 @@ These Actions are Hidden, They are bound by default. They allow the application
No current default bindings you will have to make your own.
-## SteamVR Input Guide
-
-A Guide to the SteamVR Input System can be found [here](docs/SteamVRInputGuide.md)
-
-**Or** a Video guide by Kung can be found [here](https://youtu.be/2ZHdjOfnqOU)
-
## Command Line Arguments
The application (`AdvancedSettings.exe`) can be run with the following optional arguments:
@@ -267,6 +278,8 @@ The application (`AdvancedSettings.exe`) can be run with the following optional
`"--force-remove-manifest"`: Force uninstalls the `.vrmanifest`. This should be done every time the application is uninstalled. On Windows it is automatically done by the uninstaller. The program will exit early when this flag is set.
+`"--reset-steamvr-settings"`: Resets the SteamVR settings we adjust to Steam's Default Values.
+
## INI File Options
There are some features that can only be enabled by directly specifying them in the .ini file. On windows the .ini file can be found at `Users\username\AppData\Roaming\AdvancedSettings-Team\OpenVRAdvancedSettings.ini`.
@@ -285,7 +298,7 @@ Under `[applicationSettings]` adding `enableDebug=true` will show a "Debug State
## Preview builds
-If you want to try latest and greatest unreleased features, you can download the latest from the CI (Continuous Integration) server for [Windows](https://ci.appveyor.com/project/icewind1991/openvr-advancedsettings/branch/master) and [Linux](https://circleci.com/gh/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings) (`gcc` build, CircleCI issue requires login to see artifact tab).
+If you want to try latest and greatest unreleased features, you can download the latest from the CI (Continuous Integration) server for [Windows](https://ci.appveyor.com/project/OVRAdvancedSettings/openvr-advancedsettings/branch/master)and [Linux](https://circleci.com/gh/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings) (`gcc` build, CircleCI issue requires login to see artifact tab).
These version are not stable and this should be considered for advanced users only.
@@ -315,7 +328,6 @@ These version are not stable and this should be considered for advanced users on
- **Camera for Bounds**: Your camera view will replace your vr view as you near/exit chaperone
- **Camera for Dashboard**: You will have a small camera view attached to your controller when you have the dashboard active.
- **Camera for Room View**: You will have a Tron/Shadow version of the room when double-clicking system button.
-- **Desktop Overlay Width**: Adjusts teh width of Steam's desktop overlay.
- **Restart SteamVR**: Restart SteamVR (May crash the Steam overlay when SteamVR Home is running when you restart. Therefore I advice that you close SteamVR Home before restarting).
## - Chaperone Page
@@ -334,6 +346,17 @@ These version are not stable and this should be considered for advanced users on
- **Rotate Orientation**: Rotates the orientation by a set amount.
- **Reload from Disk**: Reloads the chaperone bounds geometry from disk.
+## - Additional Chaperone Settings Page
+
+
+
+- **Chaperone Color**: Adjust the R, G, and B color channels of the chaperone.
+- **Chaperone Styles**: Adjust the appearance of the Chaperone.
+- **Misc:**
+ - **Floor Bounds Always On**: Forces floor bounds to always show.
+ - **Legacy Center Marker**: Old Center Marker, does not move with motion or indicate rotation.
+ - **Reset Turn Counter**: Re-zero's turn counter for center marker turn indicators, based on current HMD orientation.
+
## - Chaperone Proximity Warning Settings Page
@@ -486,7 +509,10 @@ Allows users to temporarily move and rotate the center of the playspace. This al
- **Enable Motion Features When in Seated Mode:** Uncheck this if Advanced Settings causes strange positioning in a seated application. (Different apps handle seated mode in different ways, some are less compatible with Advanced Settings). Note: if unchecked, all Space Offsets and Motion tab features will be disabled.
- **Disable Automatic Crash Recovery of Chaperone Config:** This prevents applying of the last good autosaved chaperone profile when starting up after not shutting down properly.
- **Disable Notification of Newer Version Availability**: This turns off the on start-up check for a new version. (You can refresh this to do a manual check.)
+- **Force Use SteamVR Chaperone**: This feature is currently experimental, when using third party headsets this will allow you to use SteamVR's chaperone, as if it was a native headset.
+- **Force Use SteamVR (Disable Oculus API)**: This feature is currently experimental, it should disable Oculus API preventing games with both SteamVR and Oculus API to only run as SteamVR
- **Disable App Vsync:** Allows setting a custom base update rate for Advanced Settings. (Might be useful on HMDs with very high or very low refresh rates).
+- **Shutdown OVRAS** Shuts-Down Advanced Settings without closing out of VR.
# How to Compile
diff --git a/docs/keyboard_input_guide.md b/docs/keyboard_input_guide.md
index 91b130d..5fa2138 100644
--- a/docs/keyboard_input_guide.md
+++ b/docs/keyboard_input_guide.md
@@ -1,55 +1,128 @@
-## Sending keypresses from VR to the desktop
+# Keyboard Input Guide
-The `Keyboard Shortcut One`, `Keyboard Shortcut Two` and `Keyboard Shortcut Three` actions under the `misc` tab will send the currently configured key sequence to the operating system.
+## Capabilities
+ We provide two distinct types of functionality, `Keyboard Shortcut`'s [macros] and `Key Press`'s [individual key press]
+
+### Keyboard Shortcuts
+
+- Sends One or Many keys to the OS like a macro.
+- Cannot `hold` keys down
+ - Except in the case of Modifiers (alt, ctrl, etc.)
-The default keybinding for all three actions is `Ctrl+Shift+M`, which mutes your microphone in Discord (unless you've changed it).
-This sequence can be changed to anything you want, as described in the [spec](specs/Keyboard_Manager-Parser_Spec.md).
-An easier to read version of the spec can be found below.
+### Key Press
-The hotkeys can for example be configured to run an AutoHotKey script or mute VOIP applications.
+- Sends One and only One key to the OS.
+ - Extra Keys Will be Ignored
+- Mirrors button state on controller
+ - If you hold down `a` on a controller the `key` will be held down
+ - If you release `a` on a controller the `key` will be released
+- `Key Press System`
+ - This Action will ALWAYS be use-able while OVRAS is running
+- `Key Press Misc.`
+ - This Action MAY not always be use-able depending on other Settings/Binds*
+ - Pending a future update.
-### Changing the key sequences
+## How To Set
-Currently, the only way to change which sequences are run when the bindings are activated is directly through the settings file.
+- Go to the Settings File
+ - Windows: `%Appdata%\AdvancedSettings-Team` (`C:\Users\\AppData\Roaming\AdvancedSettings-Team`)
+ - Linux: `~/.config/AdvancedSettings-Team/`
+- open `OVR Advanced Settings.ini` with a text editor
+- Go to `[keyboardShortcuts]`
+- Add your sequence right after the `=` for the action you want.
+ - By Default Keyboard's are set to ctrl+shift+m `^>m`
+ - By Default Key Press's are set to F9 `F9`
+ - Example for ctrl+alt+delete for keyboardOne Action
+ - `keyboardOne=^*DEL`
+ - Example for Key Press System for a`
+ - `keyPressSystem=a`
+
+## Supported Keys
-On Windows the settings file can be found in `%APPDATA%\AdvancedSettings-Team` (copy paste this into Explorer or the Run command).
+### Modifier symbols
-On Linux the settings file can be found in `~/.config/AdvancedSettings-Team/`.
+| Modifier | Symbol |
+|---|---|
+| Ctrl | `^` |
+| Alt | `*` |
+| Shift | `>` |
+| Super (Windows) | `#` |
-The `OpenVRAdvancedSettings.ini` file will contain a heading like
-```
-[keyboardShortcuts]
-keyboardOne=^>m
-keyboardTwo=^>m
-keyboardThree=^>m
-```
-The character _after_ the `=` will be run when the related binding is activated.
-The above key sequence for all bindings is `^>m` (`Ctrl+Shift+M`).
-An empty binding (no input will be run) would be `keyboardOne=`.
+### Literal symbols
-### Simple Configuration
+| Key | Symbol |
+|---|---|
+| A to Z | The letter in lowercase. `a`, `b`, `c`, ... |
+| Number Row 0-9 | The number. `0`, `1`, `2`, ... |
+| Function keys F1-F9 | Capital F followed by number. `F1`, `F2`, `F3`, ... |
+| Backspace | `BACKSPACE` |
+| Space | `SPACE` |
+| Tab | `TAB` |
+| Escape | `ESC` |
+| Insert | `INS` |
+| Delete | `DEL` |
+| End | `END` |
+| Page Down | `PGDN` |
+| Page Up | `PGUP` |
+| Caps Lock | `CAPS` |
+| Print Screen | `PRNSCRN` |
+| Pause/Break | `PAUSE` |
+| Scroll Lock | `SCRLOCK` |
+| Left Arrow | `LEFTARROW` |
+| Right Arrow | `RIGHTARROW` |
+| Up Arrow | `UPARROW` |
+| Down Arrow | `DOWNARROW` |
+| Keypad Slash | `KPSLASH` |
+| Keypad Asterisk | `KPSTAR` |
+| Keypad Minus | `KPMINUS` |
+| Keypad Plus | `KPPLUS` |
+| Enter | `ENTER` |
-Simply changing the last key of the default bindings should be enough for most people.
-Remember that you will also need to set up the application (Discord, Mumble, TeamSpeak, etc.) to respond to the key sequence.
-Single characters _must_ be lower case.
-If you enter them as uppercase it will be treated as an error, and only correct keys up to the error point will be sent to the OS.
-The default configuration is `^>m` for all bindings. Change the letter (`m`) to the character you want.
-For example, if you want Keyboard Shortcut Two to be `Ctrl+Shift+X` you would write `keyboardTwo=^>x`.
-If you just want it to be `Ctrl+X` you would remove the `>` symbol and just write `keyboardTwo=^m`.
+### Misc symbols
+| Action | Symbol |
+|---|---|
+| Release Held Keys | ` ` (literal space or end of string) |
-Notice that all pressed keys are released again when the sequence is over.
-It is not possible to hold down keys.
-### Advanced Configuration
+## Examples
-Look at the key table [spec](specs/Keyboard_Manager-Parser_Spec.md) and find the keys that you want to press.
+### Keyboard Examples
-Notice that single characters (a, b, c, etc.) are lower case, while buttons are uppercase (ENTER, END, ESC, etc.).
-If you enter single letters as upper case it will not work.
-Buttons are pressed and released immediately, modifiers are held until there's a space in the sequence or the sequence ends.
+| Sequence | String | Key Representation |
+|---|---|---|
+| Ctrl + H | `^h` | Ctrl+, h+, h-, Ctrl- |
+| Ctrl + H + H | `^hh` | Ctrl+, h+, h-, h+, h-, Ctrl- |
+| Ctrl + H twice | `^h ^h` | Ctrl+, h+, h-, Ctrl-, Ctrl+, h+, h-, Ctrl- |
+| Ctrl + Alt + Delete | `^*DEL` | Ctrl+, Alt+, DEL+, DEL-, Ctrl-, Alt- |
+| Alt + Enter | `*ENTER` | Alt+, ENTER+, ENTER-, Alt- |
+| H + E + L + P | `help` | h+, h-, e+, e-, l+, l-, p+, p- |
+| E + N + D | `end` | e+, e-, n+, n-, d+, d- |
+| END Button | `END` | END+, END- |
+| Alt + Shift + ENTER | `*>ENTER` | Alt+, Shift+, ENTER+, ENTER-, Alt-, Shift- |
+| Alt + Tab + G + G + ENTER + Alt + Tab | `*TAB gg ENTER *TAB` | Alt+, Tab+, Tab-, Alt-, g+, g-, g+, g-, ENTER+, ENTER-, Alt+, Tab+, Tab-, Alt- |
-The modifier keys should come before the "real" button inputs.
-`^m` (`Ctrl+M` (Ctrl is held down, M is pressed and released, Ctrl is released)) is _not_ the same as `m^` (`M+Ctrl` (M is pressed and released, Ctrl is pressed and released)).
-Spaces mean that all currently held modifier keys are released and that a new sequence is ready to be parsed. For example `^a ^a` would press `Ctrl+A` two times.
+### Key Press Examples
+
+| Sequence | String | Key Rep On Press | Key Rep on Release
+|---|---|---|---|
+| Ctrl | `^` | Ctrl+ | Ctrl- |
+| H | `h` | h+ | h- |
+| Ctrl + H | `^h` | Ctrl+ | Ctrl- |
+
+
+## Common Issues
+
+### Case Sensative
+- basic characters are all LOWER case, while keys such as ENTER are all UPPER case.
+
+### Focus Issues
+- we deliver the keypress to the OS, depending on your set-up and program you may have to have the window "in-focus"
+
+### Multiple Key Events
+- you must separate multiple events with a space (` `)
+ - alt + tab, alt + F4 = `*TAB *F4`
+
+## Parser Spec
+(Parser Spec)[https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/blob/master/docs/specs/Keyboard_Manager-Parser_Spec.md]
diff --git a/docs/screenshots/ChaperoneAdditionalPage.png b/docs/screenshots/ChaperoneAdditionalPage.png
new file mode 100644
index 0000000..4004f1a
Binary files /dev/null and b/docs/screenshots/ChaperoneAdditionalPage.png differ
diff --git a/docs/screenshots/ChaperonePage.png b/docs/screenshots/ChaperonePage.png
index 97f5549..aaf8a92 100644
Binary files a/docs/screenshots/ChaperonePage.png and b/docs/screenshots/ChaperonePage.png differ
diff --git a/docs/screenshots/RootPage.png b/docs/screenshots/RootPage.png
index 98e032b..689baf5 100644
Binary files a/docs/screenshots/RootPage.png and b/docs/screenshots/RootPage.png differ
diff --git a/docs/screenshots/RotationPage.png b/docs/screenshots/RotationPage.png
index 3c11eaa..76819cd 100644
Binary files a/docs/screenshots/RotationPage.png and b/docs/screenshots/RotationPage.png differ
diff --git a/docs/screenshots/SettingsPage.png b/docs/screenshots/SettingsPage.png
index c18adbc..38cdb65 100644
Binary files a/docs/screenshots/SettingsPage.png and b/docs/screenshots/SettingsPage.png differ
diff --git a/docs/screenshots/SteamVRPage.png b/docs/screenshots/SteamVRPage.png
index 656a0fb..efb97f0 100644
Binary files a/docs/screenshots/SteamVRPage.png and b/docs/screenshots/SteamVRPage.png differ
diff --git a/src/openvr/ivrinput.cpp b/src/openvr/ivrinput.cpp
index 66a24f8..1358360 100644
--- a/src/openvr/ivrinput.cpp
+++ b/src/openvr/ivrinput.cpp
@@ -138,8 +138,8 @@ SteamIVRInput::SteamIVRInput()
m_keyboardOne( action_keys::keyboardOne ),
m_keyboardTwo( action_keys::keyboardTwo ),
m_keyboardThree( action_keys::keyboardThree ),
- m_keyboardPressOne( action_keys::keyboardPressOne ),
- m_keyboardPressTwo( action_keys::keyboardPressTwo ),
+ m_keyPressMisc( action_keys::keyPressMisc ),
+ m_keyPressSystem( action_keys::keyPressSystem ),
m_chaperoneToggle( action_keys::chaperoneToggle ),
m_pushToTalk( action_keys::pushToTalk ),
m_leftHaptic( action_keys::hapticsLeft ),
@@ -351,13 +351,13 @@ bool SteamIVRInput::keyboardThree()
{
return isDigitalActionActivatedOnce( m_keyboardThree );
}
-bool SteamIVRInput::keyboardPressOne()
+bool SteamIVRInput::keyPressMisc()
{
- return isDigitalActionActivatedConstant( m_keyboardPressOne );
+ return isDigitalActionActivatedConstant( m_keyPressMisc );
}
-bool SteamIVRInput::keyboardPressTwo()
+bool SteamIVRInput::keyPressSystem()
{
- return isDigitalActionActivatedConstant( m_keyboardPressTwo );
+ return isDigitalActionActivatedConstant( m_keyPressSystem );
}
/*!
diff --git a/src/openvr/ivrinput.h b/src/openvr/ivrinput.h
index d868cd6..3f2d3d9 100644
--- a/src/openvr/ivrinput.h
+++ b/src/openvr/ivrinput.h
@@ -55,8 +55,8 @@ namespace action_keys
constexpr auto keyboardOne = "/actions/misc/in/KeyboardOne";
constexpr auto keyboardTwo = "/actions/misc/in/KeyboardTwo";
constexpr auto keyboardThree = "/actions/misc/in/KeyboardThree";
- constexpr auto keyboardPressOne = "/actions/misc/in/KeyboardPressOne";
- constexpr auto keyboardPressTwo = "/actions/misc/in/KeyboardPressTwo";
+ constexpr auto keyPressMisc = "/actions/misc/in/KeyPressMisc";
+ constexpr auto keyPressSystem = "/actions/system/in/KeyPressSystem";
constexpr auto hapticsLeft = "/actions/haptic/out/HapticsLeft";
constexpr auto hapticsRight = "/actions/haptic/out/HapticsRight";
@@ -160,8 +160,8 @@ public:
bool keyboardOne();
bool keyboardTwo();
bool keyboardThree();
- bool keyboardPressOne();
- bool keyboardPressTwo();
+ bool keyPressMisc();
+ bool keyPressSystem();
vr::VRActionHandle_t leftHapticActionHandle();
vr::VRActionHandle_t rightHapticActionHandle();
@@ -229,8 +229,8 @@ private:
DigitalAction m_keyboardOne;
DigitalAction m_keyboardTwo;
DigitalAction m_keyboardThree;
- DigitalAction m_keyboardPressOne;
- DigitalAction m_keyboardPressTwo;
+ DigitalAction m_keyPressMisc;
+ DigitalAction m_keyPressSystem;
// Misc Bindings
DigitalAction m_chaperoneToggle;
diff --git a/src/overlaycontroller.cpp b/src/overlaycontroller.cpp
index d8aa04d..3c5e242 100644
--- a/src/overlaycontroller.cpp
+++ b/src/overlaycontroller.cpp
@@ -704,33 +704,33 @@ void OverlayController::processKeyboardBindings()
sendStringAsInput( commands );
}
// Press Key One
- if ( m_actions.keyboardPressOne() && !m_keyPressOneState )
+ if ( m_actions.keyPressMisc() && !m_keyPressOneState )
{
const auto commands = settings::getSetting(
- settings::StringSetting::KEYBOARDSHORTCUT_keyboardPressOne );
+ settings::StringSetting::KEYBOARDSHORTCUT_keyPressMisc );
sendFirstCharAsInput( commands, KeyStatus::Down );
m_keyPressOneState = true;
}
- if ( m_keyPressOneState && !m_actions.keyboardPressOne() )
+ if ( m_keyPressOneState && !m_actions.keyPressMisc() )
{
const auto commands = settings::getSetting(
- settings::StringSetting::KEYBOARDSHORTCUT_keyboardPressOne );
+ settings::StringSetting::KEYBOARDSHORTCUT_keyPressMisc );
sendFirstCharAsInput( commands, KeyStatus::Up );
m_keyPressOneState = false;
}
// Press Key Two
- if ( m_actions.keyboardPressTwo() && !m_keyPressTwoState )
+ if ( m_actions.keyPressSystem() && !m_keyPressTwoState )
{
const auto commands = settings::getSetting(
- settings::StringSetting::KEYBOARDSHORTCUT_keyboardPressTwo );
+ settings::StringSetting::KEYBOARDSHORTCUT_keyPressSystem );
sendFirstCharAsInput( commands, KeyStatus::Down );
m_keyPressTwoState = true;
}
- if ( m_keyPressTwoState && !m_actions.keyboardPressTwo() )
+ if ( m_keyPressTwoState && !m_actions.keyPressSystem() )
{
const auto commands = settings::getSetting(
- settings::StringSetting::KEYBOARDSHORTCUT_keyboardPressTwo );
+ settings::StringSetting::KEYBOARDSHORTCUT_keyPressSystem );
sendFirstCharAsInput( commands, KeyStatus::Up );
m_keyPressTwoState = false;
}
diff --git a/src/package_files/action_manifest.json b/src/package_files/action_manifest.json
index a119a0f..63dcbde 100644
--- a/src/package_files/action_manifest.json
+++ b/src/package_files/action_manifest.json
@@ -206,12 +206,12 @@
"type": "boolean"
},
{
- "name": "/actions/misc/in/KeyboardPressOne",
+ "name": "/actions/misc/in/KeyPressMisc",
"requirement": "optional",
"type": "boolean"
},
{
- "name": "/actions/misc/in/KeyboardPressTwo",
+ "name": "/actions/system/in/KeyPressSystem",
"requirement": "optional",
"type": "boolean"
}
@@ -289,8 +289,8 @@
"/actions/misc/in/KeyboardOne" : "Keyboard Shortcut One",
"/actions/misc/in/KeyboardTwo" : "Keyboard Shortcut Two",
"/actions/misc/in/KeyboardThree" : "Keyboard Shortcut Three",
- "/actions/misc/in/KeyboardPressOne": "Keyboard Press One",
- "/actions/misc/in/KeyboardPressTwo": "Keyboard Press Two"
+ "/actions/misc/in/KeyPressMisc": "Key Press Misc",
+ "/actions/system/in/KeyPressSystem": "Key Press System"
}
]
}
\ No newline at end of file
diff --git a/src/res/qml/common/HourComboBox.qml b/src/res/qml/common/HourComboBox.qml
index 21ba543..8cf240b 100644
--- a/src/res/qml/common/HourComboBox.qml
+++ b/src/res/qml/common/HourComboBox.qml
@@ -4,8 +4,7 @@ import QtQuick.Layouts 1.3
import ovras.advsettings 1.0
MyComboBox {
- textRole: "text"
- valueRole: "value"
+
model: [
{ value: 0, text: "00" },
{ value: 1, text: "01" },
diff --git a/src/res/qml/common/MinuteSecondComboBox.qml b/src/res/qml/common/MinuteSecondComboBox.qml
index d66cf0a..5437f28 100644
--- a/src/res/qml/common/MinuteSecondComboBox.qml
+++ b/src/res/qml/common/MinuteSecondComboBox.qml
@@ -4,8 +4,7 @@ import QtQuick.Layouts 1.3
import ovras.advsettings 1.0
MyComboBox {
- textRole: "text"
- valueRole: "value"
+
model: [
{ value: 0, text: "00" },
{ value: 1, text: "01" },
diff --git a/src/res/qml/common/MyComboBox.qml b/src/res/qml/common/MyComboBox.qml
index f008add..d9b915e 100644
--- a/src/res/qml/common/MyComboBox.qml
+++ b/src/res/qml/common/MyComboBox.qml
@@ -6,7 +6,6 @@ import "." // QTBUG-34418, singletons require explicit import to load qmldir fil
ComboBox {
id: myComboBox
hoverEnabled: true
-
background: Rectangle {
color: parent.pressed ? "#406288" : (parent.activeFocus ? "#365473" : "#2c435d")
}
diff --git a/src/res/qml/common/TimeAssembly.qml b/src/res/qml/common/TimeAssembly.qml
index 9574ade..07fd5ea 100644
--- a/src/res/qml/common/TimeAssembly.qml
+++ b/src/res/qml/common/TimeAssembly.qml
@@ -8,6 +8,7 @@ RowLayout {
HourComboBox {
id: hourBox
+ Layout.preferredWidth: 60
onActivated: {
parent.timeChanged(hourBox.currentIndex,
minuteBox.currentIndex,
@@ -20,6 +21,7 @@ RowLayout {
MinuteSecondComboBox {
id: minuteBox
+ Layout.preferredWidth: 60
onActivated: {
parent.timeChanged(hourBox.currentIndex,
minuteBox.currentIndex,
@@ -32,6 +34,7 @@ RowLayout {
MinuteSecondComboBox {
id: secondBox
+ Layout.preferredWidth: 60
onActivated: {
parent.timeChanged(hourBox.currentIndex,
minuteBox.currentIndex,
@@ -45,5 +48,8 @@ RowLayout {
hourBox.currentIndex = hour
minuteBox.currentIndex = minute
secondBox.currentIndex = second
+ hourBox.displayText = hour
+ minuteBox.displayText = minute
+ secondBox.displayText = second
}
}
diff --git a/src/res/qml/utilities_page/alarm_clock/AlarmGroupBox.qml b/src/res/qml/utilities_page/alarm_clock/AlarmGroupBox.qml
index 7342b52..61f2d98 100644
--- a/src/res/qml/utilities_page/alarm_clock/AlarmGroupBox.qml
+++ b/src/res/qml/utilities_page/alarm_clock/AlarmGroupBox.qml
@@ -10,7 +10,7 @@ GroupBox {
label: MyText {
leftPadding: 10
- text: "Clock"
+ text: "Alarm Clock"
bottomPadding: -10
}
background: Rectangle {
@@ -78,14 +78,14 @@ GroupBox {
MyPushButton2 {
text: "+5 Min"
- Layout.preferredWidth: 120
+ Layout.preferredWidth: 110
onClicked: {
VrAlarm.modAlarmTime(0, 5, 0)
}
}
MyPushButton2 {
- Layout.preferredWidth: 120
+ Layout.preferredWidth: 110
text: "-5 Min"
onClicked: {
VrAlarm.modAlarmTime(0, -5, 0)
diff --git a/src/settings/internal/settings_controller.h b/src/settings/internal/settings_controller.h
index 40d29dd..8362632 100644
--- a/src/settings/internal/settings_controller.h
+++ b/src/settings/internal/settings_controller.h
@@ -481,7 +481,7 @@ private:
constexpr static auto stringSettingsSize
= static_cast( StringSetting::LAST_ENUMERATOR ) + 1;
constexpr static auto discordDefaultMuteKeybinding = "^>m";
- constexpr static auto pressDefaultOne = "F9";
+ constexpr static auto pressDefault = "F9";
std::array m_stringSettings{
StringSettingValue{ StringSetting::KEYBOARDSHORTCUT_keyboardOne,
SettingCategory::KeyboardShortcut,
@@ -495,14 +495,14 @@ private:
SettingCategory::KeyboardShortcut,
QtInfo{ "keyboardThree" },
discordDefaultMuteKeybinding },
- StringSettingValue{ StringSetting::KEYBOARDSHORTCUT_keyboardPressOne,
+ StringSettingValue{ StringSetting::KEYBOARDSHORTCUT_keyPressMisc,
SettingCategory::KeyboardShortcut,
- QtInfo{ "keyboardPressOne" },
- pressDefaultOne },
- StringSettingValue{ StringSetting::KEYBOARDSHORTCUT_keyboardPressTwo,
+ QtInfo{ "keyPressmisc" },
+ pressDefault },
+ StringSettingValue{ StringSetting::KEYBOARDSHORTCUT_keyPressSystem,
SettingCategory::KeyboardShortcut,
- QtInfo{ "keyboardPressTwo" },
- pressDefaultOne },
+ QtInfo{ "keyPressSystem" },
+ pressDefault },
};
constexpr static auto intSettingsSize
diff --git a/src/settings/settings.h b/src/settings/settings.h
index 7e9cc4f..7ecd082 100644
--- a/src/settings/settings.h
+++ b/src/settings/settings.h
@@ -90,10 +90,10 @@ enum class StringSetting
KEYBOARDSHORTCUT_keyboardOne,
KEYBOARDSHORTCUT_keyboardTwo,
KEYBOARDSHORTCUT_keyboardThree,
- KEYBOARDSHORTCUT_keyboardPressOne,
- KEYBOARDSHORTCUT_keyboardPressTwo,
+ KEYBOARDSHORTCUT_keyPressMisc,
+ KEYBOARDSHORTCUT_keyPressSystem,
// LAST_ENUMERATOR must always be set to the last value
- LAST_ENUMERATOR = KEYBOARDSHORTCUT_keyboardPressTwo,
+ LAST_ENUMERATOR = KEYBOARDSHORTCUT_keyPressSystem,
};
enum class IntSetting
diff --git a/src/tabcontrollers/SettingsTabController.h b/src/tabcontrollers/SettingsTabController.h
index e22a08d..24ee685 100644
--- a/src/tabcontrollers/SettingsTabController.h
+++ b/src/tabcontrollers/SettingsTabController.h
@@ -27,7 +27,6 @@ private:
OverlayController* parent;
bool m_autoStartEnabled = false;
- bool m_nativeChaperoneToggle = false;
public:
void initStage1();