summaryrefslogtreecommitdiff
path: root/indra/newview/llviewerkeyboard.cpp
diff options
context:
space:
mode:
authorMnikolenko ProductEngine <mnikolenko@productengine.com>2014-12-03 11:58:41 +0200
committerMnikolenko ProductEngine <mnikolenko@productengine.com>2014-12-03 11:58:41 +0200
commit0a32de770d6ec82bb89b86d0d278470602eeb355 (patch)
treea258da3c3f11333365f5ca51bd0127841cb8cb38 /indra/newview/llviewerkeyboard.cpp
parent8c8bef36c049e78cc524e71fb6f740426fb3ce70 (diff)
MAINT-1871 FIXED Don't allow moving avatar while changing camera position.
Diffstat (limited to 'indra/newview/llviewerkeyboard.cpp')
-rwxr-xr-xindra/newview/llviewerkeyboard.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/indra/newview/llviewerkeyboard.cpp b/indra/newview/llviewerkeyboard.cpp
index 35b55029cc..9766a25521 100755
--- a/indra/newview/llviewerkeyboard.cpp
+++ b/indra/newview/llviewerkeyboard.cpp
@@ -149,6 +149,8 @@ void camera_move_forward( EKeystate s );
void agent_push_forward( EKeystate s )
{
+ if(gAgent.isMovementLocked()) return;
+
//in free camera control mode we need to intercept keyboard events for avatar movements
if (LLFloaterCamera::inFreeCameraMode())
{
@@ -164,6 +166,8 @@ void camera_move_backward( EKeystate s );
void agent_push_backward( EKeystate s )
{
+ if(gAgent.isMovementLocked()) return;
+
//in free camera control mode we need to intercept keyboard events for avatar movements
if (LLFloaterCamera::inFreeCameraMode())
{
@@ -199,12 +203,14 @@ static void agent_slide_leftright( EKeystate s, S32 direction, LLAgent::EDoubleT
void agent_slide_left( EKeystate s )
{
+ if(gAgent.isMovementLocked()) return;
agent_slide_leftright(s, 1, LLAgent::DOUBLETAP_SLIDELEFT);
}
void agent_slide_right( EKeystate s )
{
+ if(gAgent.isMovementLocked()) return;
agent_slide_leftright(s, -1, LLAgent::DOUBLETAP_SLIDERIGHT);
}
@@ -219,6 +225,8 @@ void agent_turn_left( EKeystate s )
return;
}
+ if(gAgent.isMovementLocked()) return;
+
if (LLToolCamera::getInstance()->mouseSteerMode())
{
agent_slide_left(s);
@@ -247,6 +255,8 @@ void agent_turn_right( EKeystate s )
return;
}
+ if(gAgent.isMovementLocked()) return;
+
if (LLToolCamera::getInstance()->mouseSteerMode())
{
agent_slide_right(s);