diff options
| author | yum <yum.food.vr@gmail.com> | 2023-09-09 19:43:19 -0700 |
|---|---|---|
| committer | yum <yum.food.vr@gmail.com> | 2023-09-09 19:43:19 -0700 |
| commit | e1802e402bf0ef63c2861bd7c5c7a13b3aecd87f (patch) | |
| tree | 12098e555b019aa1a53bc844354dabf2121261bd /Scripts | |
| parent | 36b01e90779698a4a1b2cd369754e82c28968665 (diff) | |
Add `lock at spawn` option
I find it kind of annoying when people wave around a big chatbox so I
added the option to have the chatbox be locked in worldspace whenever
it's visible. This defaults to on and can be disabled.
Diffstat (limited to 'Scripts')
| -rw-r--r-- | Scripts/transcribe_v2.py | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/Scripts/transcribe_v2.py b/Scripts/transcribe_v2.py index 5f43e3a..4305a07 100644 --- a/Scripts/transcribe_v2.py +++ b/Scripts/transcribe_v2.py @@ -713,9 +713,6 @@ def vrInputThread(ctrl: ThreadControl): if now - last_rising > 1.5: # Long press: treat as the end of transcription. state = PAUSE_STATE - if not ctrl.cfg["use_builtin"]: - ctrl.pager.getSyncWindow() - ctrl.pager.lockWorld(True) ctrl.stream.pause(True) @@ -749,12 +746,17 @@ def vrInputThread(ctrl: ThreadControl): ctrl.stream.getSamples() ctrl.collector.dropAudio() ctrl.pager.clear() + if ctrl.cfg["enable_lock_at_spawn"]: + # Give the board 0.5 seconds to disappear before unlocking from + # world space. + time.sleep(0.5) + ctrl.pager.lockWorld(False) else: # Short hold if state == RECORD_STATE: print("PAUSED", file=sys.stderr) state = PAUSE_STATE - if not ctrl.cfg["use_builtin"]: + if not ctrl.cfg["use_builtin"] and not ctrl.cfg["enable_lock_at_spawn"]: ctrl.pager.getSyncWindow() ctrl.pager.lockWorld(True) @@ -769,7 +771,7 @@ def vrInputThread(ctrl: ThreadControl): if not ctrl.cfg["use_builtin"]: ctrl.pager.getSyncWindow() ctrl.pager.toggleBoard(True) - ctrl.pager.lockWorld(False) + ctrl.pager.lockWorld(ctrl.cfg["enable_lock_at_spawn"]) ctrl.pager.ellipsis(True) if ctrl.cfg["reset_on_toggle"]: if ctrl.cfg["enable_debug_mode"]: @@ -835,13 +837,18 @@ def kbInputThread(ctrl: ThreadControl): ctrl.stream.getSamples() ctrl.collector.dropAudio() ctrl.pager.clear() + if ctrl.cfg["enable_lock_at_spawn"]: + # Give the board 0.5 seconds to disappear before unlocking from + # world space. + time.sleep(0.5) + ctrl.pager.lockWorld(False) continue # Short hold if state == RECORD_STATE: print("PAUSED", file=sys.stderr) state = PAUSE_STATE - if not ctrl.cfg["use_builtin"]: + if not ctrl.cfg["use_builtin"] and not ctrl.cfg["enable_lock_at_spawn"]: ctrl.pager.getSyncWindow() ctrl.pager.lockWorld(True) @@ -856,7 +863,7 @@ def kbInputThread(ctrl: ThreadControl): if not ctrl.cfg["use_builtin"]: ctrl.pager.getSyncWindow() ctrl.pager.toggleBoard(True) - ctrl.pager.lockWorld(False) + ctrl.pager.lockWorld(ctrl.cfg["enable_lock_at_spawn"]) ctrl.pager.ellipsis(True) if ctrl.cfg["reset_on_toggle"]: if ctrl.cfg["enable_debug_mode"]: |
