diff --git a/indra/newview/llfloaterbvhpreview.cpp b/indra/newview/llfloaterbvhpreview.cpp index 26e5083624..ed193f1c79 100755 --- a/indra/newview/llfloaterbvhpreview.cpp +++ b/indra/newview/llfloaterbvhpreview.cpp @@ -153,6 +153,9 @@ LLFloaterBvhPreview::LLFloaterBvhPreview(const std::string& filename) : mIDList["Surprise"] = ANIM_AGENT_EXPRESS_SURPRISE; mIDList["Wink"] = ANIM_AGENT_EXPRESS_WINK; mIDList["Worry"] = ANIM_AGENT_EXPRESS_WORRY; + + // FIRE-2083: Slider in upload animation floater doesn't work + mTimer.stop(); } //----------------------------------------------------------------------------- @@ -454,6 +457,13 @@ void LLFloaterBvhPreview::draw() { mAnimPreview->requestUpdate(); } + // FIRE-2083: Slider in upload animation floater doesn't work + if (mTimer.getStarted() && mTimer.hasExpired()) + { + mTimer.stop(); + mPauseRequest = avatarp->requestPause(); + } + // } } @@ -687,7 +697,12 @@ void LLFloaterBvhPreview::onSliderMove() avatarp->deactivateAllMotions(); avatarp->startMotion(base_id, delta_time + BASE_ANIM_TIME_OFFSET); avatarp->startMotion(mMotionID, delta_time); - mPauseRequest = avatarp->requestPause(); + // FIRE-2083: Slider in upload animation floater doesn't work + //mPauseRequest = avatarp->requestPause(); + mPauseRequest = NULL; + mTimer.resetWithExpiry(0.001f); + mTimer.start(); + // refresh(); } diff --git a/indra/newview/llfloaterbvhpreview.h b/indra/newview/llfloaterbvhpreview.h index 4c4838565e..29d3b029f4 100755 --- a/indra/newview/llfloaterbvhpreview.h +++ b/indra/newview/llfloaterbvhpreview.h @@ -129,6 +129,9 @@ protected: LLAnimPauseRequest mPauseRequest; std::map mIDList; + + // FIRE-2083: Slider in upload animation floater doesn't work + LLFrameTimer mTimer; }; #endif // LL_LLFLOATERBVHPREVIEW_H