diff options
author | AndreyL ProductEngine <alihatskiy@productengine.com> | 2020-01-06 20:28:37 +0200 |
---|---|---|
committer | AndreyL ProductEngine <alihatskiy@productengine.com> | 2020-01-06 20:28:37 +0200 |
commit | 2076f4af0fc946c3bd79754a1deefc495ee7edb9 (patch) | |
tree | 859f1a0a7a82a571dde9a26c738e59a862cd6c05 /indra/newview/llvoiceclient.cpp | |
parent | 4c006e76e39a8b59dc6f9c890e5a27d38b5ece50 (diff) | |
parent | d656d49a77eeb65ae537c954ea4009bc22da7b2b (diff) |
Merged in viewer-release
Diffstat (limited to 'indra/newview/llvoiceclient.cpp')
-rw-r--r-- | indra/newview/llvoiceclient.cpp | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/indra/newview/llvoiceclient.cpp b/indra/newview/llvoiceclient.cpp index d8c8cb0461..cc590fc947 100644 --- a/indra/newview/llvoiceclient.cpp +++ b/indra/newview/llvoiceclient.cpp @@ -125,7 +125,7 @@ LLVoiceClient::LLVoiceClient(LLPumpIO *pump) mPTTDirty(true), mPTT(true), mUsePTT(true), - mPTTIsMiddleMouse(false), + mPTTMouseButton(0), mPTTKey(0), mPTTIsToggle(false), mUserPTTState(false), @@ -639,13 +639,22 @@ bool LLVoiceClient::getPTTIsToggle() void LLVoiceClient::setPTTKey(std::string &key) { + // Value is stored as text for readability if(key == "MiddleMouse") { - mPTTIsMiddleMouse = true; + mPTTMouseButton = LLMouseHandler::CLICK_MIDDLE; + } + else if(key == "MouseButton4") + { + mPTTMouseButton = LLMouseHandler::CLICK_BUTTON4; + } + else if (key == "MouseButton5") + { + mPTTMouseButton = LLMouseHandler::CLICK_BUTTON5; } else { - mPTTIsMiddleMouse = false; + mPTTMouseButton = 0; if(!LLKeyboard::keyFromString(key, &mPTTKey)) { // If the call failed, don't match any key. @@ -682,7 +691,7 @@ void LLVoiceClient::keyDown(KEY key, MASK mask) return; } - if (!mPTTIsMiddleMouse && LLAgent::isActionAllowed("speak") && (key == mPTTKey)) + if (mPTTMouseButton == 0 && LLAgent::isActionAllowed("speak") && (key == mPTTKey)) { bool down = gKeyboard->getKeyDown(mPTTKey); if (down) @@ -694,7 +703,7 @@ void LLVoiceClient::keyDown(KEY key, MASK mask) } void LLVoiceClient::keyUp(KEY key, MASK mask) { - if (!mPTTIsMiddleMouse && (key == mPTTKey)) + if (mPTTMouseButton == 0 && (key == mPTTKey)) { bool down = gKeyboard->getKeyDown(mPTTKey); if (!down) @@ -703,9 +712,9 @@ void LLVoiceClient::keyUp(KEY key, MASK mask) } } } -void LLVoiceClient::middleMouseState(bool down) +void LLVoiceClient::updateMouseState(S32 click, bool down) { - if(mPTTIsMiddleMouse && LLAgent::isActionAllowed("speak")) + if(mPTTMouseButton == click && LLAgent::isActionAllowed("speak")) { inputUserControlState(down); } |