diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2021-09-21 00:17:05 +0300 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2021-09-21 00:20:37 +0300 |
commit | f30cc7b5bb79aae6f012f04f54b461fdb7ee3f64 (patch) | |
tree | 20a7ce2d300d87fbcbf4de5abb9e2b3209e27773 /indra | |
parent | ce660c7e7bb6e19a23d634fb6d3249330bf2d74c (diff) |
Revert "SL-11841 make ‘Push to talk’ the default setting"
This reverts commits:
126877bc5ba45ff6b0b31368c55f894a0beaf5bf
b661f62a7ad4dad9806eda8f4c8f2c9d64b3efbb
ce660c7e7bb6e19a23d634fb6d3249330bf2d74c
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/app_settings/key_bindings.xml | 8 | ||||
-rw-r--r-- | indra/newview/app_settings/settings.xml | 4 | ||||
-rw-r--r-- | indra/newview/llappviewer.cpp | 24 | ||||
-rw-r--r-- | indra/newview/llkeyconflict.cpp | 1 |
4 files changed, 31 insertions, 6 deletions
diff --git a/indra/newview/app_settings/key_bindings.xml b/indra/newview/app_settings/key_bindings.xml index 2ec9a2586c..4f6deb1f98 100644 --- a/indra/newview/app_settings/key_bindings.xml +++ b/indra/newview/app_settings/key_bindings.xml @@ -32,7 +32,7 @@ <binding key="ENTER" mask="NONE" command="start_chat"/> <binding key="DIVIDE" mask="NONE" command="start_gesture"/> - <binding key="" mask="NONE" mouse="MMB" command="voice_follow_key"/> + <binding key="" mask="NONE" mouse="MMB" command="toggle_voice"/> </first_person> <third_person> <binding key="A" mask="NONE" command="turn_left"/> @@ -125,7 +125,7 @@ <binding key="PAD_ENTER" mask="CTL_ALT_SHIFT" command="start_chat"/> <binding key="PAD_DIVIDE" mask="CTL_ALT_SHIFT" command="start_gesture"/> - <binding key="" mask="NONE" mouse="MMB" command="voice_follow_key"/> + <binding key="" mask="NONE" mouse="MMB" command="toggle_voice"/> <binding key="" mask="NONE" mouse="LMB" command="walk_to"/> </third_person> <sitting> @@ -223,7 +223,7 @@ <binding key="ENTER" mask="NONE" command="start_chat"/> <binding key="DIVIDE" mask="NONE" command="start_gesture"/> - <binding key="" mask="NONE" mouse="MMB" command="voice_follow_key"/> + <binding key="" mask="NONE" mouse="MMB" command="toggle_voice"/> </sitting> <edit_avatar> <!--Avatar editing camera controls--> @@ -250,6 +250,6 @@ <binding key="PAD_ENTER" mask="NONE" command="start_chat"/> <binding key="PAD_DIVIDE" mask="NONE" command="start_gesture"/> - <binding key="" mask="NONE" mouse="MMB" command="voice_follow_key"/> + <binding key="" mask="NONE" mouse="MMB" command="toggle_voice"/> </edit_avatar> </keys> diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 952b36adea..eeb7e6f0aa 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -8308,13 +8308,13 @@ <key>PushToTalkToggle</key> <map> <key>Comment</key> - <string>Should the push-to-talk toolbar button behave as a toggle</string> + <string>Should the push-to-talk button behave as a toggle</string> <key>Persist</key> <integer>1</integer> <key>Type</key> <string>Boolean</string> <key>Value</key> - <integer>0</integer> + <integer>1</integer> </map> <key>QAMode</key> <map> diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 573cca248c..ecd62cadf8 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -4562,6 +4562,11 @@ void LLAppViewer::loadKeyBindings() LLKeyboard::keyFromString(key_string, &key); } + value = gSavedSettings.getBOOL("PushToTalkToggle"); + std::string control_name = value ? "toggle_voice" : "voice_follow_key"; + third_person_view.registerControl(control_name, 0, mouse, key, MASK_NONE, true); + sitting_view.registerControl(control_name, 0, mouse, key, MASK_NONE, true); + if (third_person_view.hasUnsavedChanges()) { // calls loadBindingsXML() @@ -4573,6 +4578,25 @@ void LLAppViewer::loadKeyBindings() // calls loadBindingsXML() sitting_view.saveToSettings(); } + + // in case of voice we need to repeat this in other modes + + for (U32 i = 0; i < LLKeyConflictHandler::MODE_COUNT - 1; ++i) + { + // edit and first person modes; MODE_SAVED_SETTINGS not in use at the moment + if (i != LLKeyConflictHandler::MODE_THIRD_PERSON && i != LLKeyConflictHandler::MODE_SITTING) + { + LLKeyConflictHandler handler((LLKeyConflictHandler::ESourceMode)i); + + handler.registerControl(control_name, 0, mouse, key, MASK_NONE, true); + + if (handler.hasUnsavedChanges()) + { + // calls loadBindingsXML() + handler.saveToSettings(); + } + } + } } // since something might have gone wrong or there might have been nothing to save // (and because otherwise following code will have to be encased in else{}), diff --git a/indra/newview/llkeyconflict.cpp b/indra/newview/llkeyconflict.cpp index 52e14d48f7..b6107eeedf 100644 --- a/indra/newview/llkeyconflict.cpp +++ b/indra/newview/llkeyconflict.cpp @@ -644,6 +644,7 @@ void LLKeyConflictHandler::saveToSettings(bool temporary) data = getControl("voice_follow_key", 0); } + gSavedSettings.setBOOL("PushToTalkToggle", can_toggle); if (data.isEmpty()) { // legacy viewer has a bug that might crash it if NONE value is assigned. |