From 8fa23739a1409d8e93252985d7f5951f518cdb21 Mon Sep 17 00:00:00 2001 From: Monroe Linden Date: Tue, 13 Apr 2010 13:18:54 -0700 Subject: [PATCH 1/3] Fix for EXT-6750 (disabled attachment media still plays). LLViewerMediaImpl::shouldShowBasedOnClass() was always returning true for focused media. This was incorrect, since it made click-focusing on media override the class-based disable preferences. Reviewed by Callum at http://codereview.lindenlab.com/1178023 --- indra/newview/llviewermedia.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index 0f5a984188..6ff46222ff 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -2985,8 +2985,9 @@ bool LLViewerMediaImpl::shouldShowBasedOnClass() const // " outside = " << (!inside_parcel && gSavedSettings.getBOOL(LLViewerMedia::SHOW_MEDIA_OUTSIDE_PARCEL_SETTING)) << llendl; // If it has focus, we should show it - if (hasFocus()) - return true; + // This is incorrect, and causes EXT-6750 (disabled attachment media still plays) +// if (hasFocus()) +// return true; // If it is attached to an avatar and the pref is off, we shouldn't show it if (attached_to_another_avatar) From 7e210d185f9b5bccdeb108e79b97a7a1a44b4374 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Tue, 13 Apr 2010 18:07:24 -0700 Subject: [PATCH 2/3] fix for EXT-6317 and EXT-2418 regressions in installed viewers new 32-bit mouse cursors were not getting packaged by installer for windows builds reviewed by Monroe --- indra/llwindow/llwindowwin32.cpp | 6 +++--- indra/newview/res/toolbuy.cur | Bin 4286 -> 0 bytes indra/newview/res/toolopen.cur | Bin 4286 -> 0 bytes indra/newview/res/toolsit.cur | Bin 4286 -> 0 bytes indra/newview/res/viewerRes.rc | 3 --- 5 files changed, 3 insertions(+), 6 deletions(-) delete mode 100644 indra/newview/res/toolbuy.cur delete mode 100644 indra/newview/res/toolopen.cur delete mode 100644 indra/newview/res/toolsit.cur diff --git a/indra/llwindow/llwindowwin32.cpp b/indra/llwindow/llwindowwin32.cpp index 8df9dad581..13e71ed936 100644 --- a/indra/llwindow/llwindowwin32.cpp +++ b/indra/llwindow/llwindowwin32.cpp @@ -1548,9 +1548,9 @@ void LLWindowWin32::initCursors() // Color cursors gDirUtilp->getExpandedFilename(LL_PATH_EXECUTABLE, "res", "toolbuy.cur"); - mCursor[UI_CURSOR_TOOLSIT] = LoadCursorFromFile(utf8str_to_utf16str(gDirUtilp->getWorkingDir() + gDirUtilp->getDirDelimiter() + "res" + gDirUtilp->getDirDelimiter() + "toolsit.cur").c_str()); - mCursor[UI_CURSOR_TOOLBUY] = LoadCursorFromFile(utf8str_to_utf16str(gDirUtilp->getWorkingDir() + gDirUtilp->getDirDelimiter() + "res" + gDirUtilp->getDirDelimiter() + "toolbuy.cur").c_str()); - mCursor[UI_CURSOR_TOOLOPEN] = LoadCursorFromFile(utf8str_to_utf16str(gDirUtilp->getWorkingDir() + gDirUtilp->getDirDelimiter() + "res" + gDirUtilp->getDirDelimiter() + "toolopen.cur").c_str()); + mCursor[UI_CURSOR_TOOLSIT] = LoadCursorFromFile(utf8str_to_utf16str(gDirUtilp->findSkinnedFilename("textures", "toolsit.cur")).c_str()); + mCursor[UI_CURSOR_TOOLBUY] = LoadCursorFromFile(utf8str_to_utf16str(gDirUtilp->findSkinnedFilename("textures", "toolbuy.cur")).c_str()); + mCursor[UI_CURSOR_TOOLOPEN] = LoadCursorFromFile(utf8str_to_utf16str(gDirUtilp->findSkinnedFilename("textures", "toolopen.cur")).c_str()); mCursor[UI_CURSOR_TOOLPLAY] = loadColorCursor(TEXT("TOOLPLAY")); mCursor[UI_CURSOR_TOOLPAUSE] = loadColorCursor(TEXT("TOOLPAUSE")); mCursor[UI_CURSOR_TOOLMEDIAOPEN] = loadColorCursor(TEXT("TOOLMEDIAOPEN")); diff --git a/indra/newview/res/toolbuy.cur b/indra/newview/res/toolbuy.cur deleted file mode 100644 index 7fd552a78e97ad980e6138a25ec9ede085731112..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4286 zcmb`KTTE0(7{|}D;v&ek+%K|Rg%|-r2o#lD0YPg*Y{aUiB_YKSThox#mXMT$YDmfp zHGQ%2RALDal0H-)Oqz|NBsKvbY9A~Z+SpdGRM><{8|3T%KkRG|E0+a3$?wdZb7trN z&G&sXbJj3?42xm68%DShZ1jg1MxL(qS)1S*+oQ*jk0Wj|8A^kZUey} z0>rq8MjZuS0fB&he1Q+JY*d^5S11-dvjOVXgLlCh@HVIfMIaBv0ooA&lnwubKD9Yk zC`ixE&82~40XV@B=m8&q96*1B0YBjLlKNVkKDUGSj~zQE4u`|dz`%eL+`Vw&LNDHb z43Yt369jx;QlBy34&p&G=T2>>(}`i13fhZcW_EV=d-VAdlz|k$obX4l&E_BH&X_aZ z-|^ILYim<>xavjJPkVcN8H>*Vmj`VQ-lV?vJ64;K>Zv_4G9rBDQ7_{DDf)j0sz4$L zv)k=hyQ{Jt?~1@%;2h{6iHV7A@$vD^5fKq}K0ZDw=4PLJ=(_FrL1eMBvvV4{*8qJG zf$@wL*otSbrKF^^XJ==BnwgpTMRIcTS37p>_?qBdUutUV<*2BrLC*8Rg9j?ux?WA6 zHX=WsL-!X@3=&q*4uw_=bi3l>;=Tz92^mNI7<$ik?%XK^?fKZ)*eSC%=BCyi4WS*# zc@=+i&3Cj7y3as0Nb%4QO-oBVhp`8s`zSp<{hz&i_ey?#zU1ZQxuGuaxz<>i^B7CT zTs>Ih;?k!N%0Qw?e=GFP#Kgp0!?QmXlH^Dt&dojMn^|~i+Zl0pujy>PhImp^$6|A$;olgUu)6#x~=0w8=%Xz z$Fsod(%%*t8F_{C_Ey_$2lcbEvX<#%Y;{lHP}8Lwj_3OPv7l|Z^oxRmf*!5sbF-#y zx3{;;?%lgr)W`5|g4aPV;C{z*Lg}Jbh5BJ(VV7a&JadiX9y)YLE?&GSJv}`yP*qi> z{C)iRan)yhd|bM_yXEZJvoFja0$gL+faf01n`PR#SMv`I4gFEihjmj^lg!P{t;mTJ zCuC@7NWJUt@0YQ$F}ZZ zjg5_N_U+pz_4V~C?-}>ow{HvfCpmxqyi86`>NpGb$0rtxiMswUs6&cU0q#j z&Wsh~aQgIV!M>?-C?g|7e0_aeu zUAMNj%GA`9(x%Vr>gv=Uso%5an%J^s%X?nv*I>_`Wn5_k;XF7e>T_M|=eiyq9v0?3 z@9*5X^Fp8E;$p#^<}tT=FZ7dezWhpm>hagpzj5P+ntMY-gVH~G^r&3DdR6$X!93zv z$f-%_XRW92TK{(s95^8K0c~$-X>re=`zoKAsjjY;!NEZl1HDeKU%#%_1btstRwm)$ z;rE$e-sszGwhy86th~Hj*>LdSL1hEi9(_W)R->=4Pt94sFD)(Q{xlyD5YXwZKKfa) z|BrKTqwn_b-@hsNTlxn3$s>%(Z$q!<&ln(ATaar{YHDhf4UES|pf>%6^KcseY^64f zH~yzS2@DMEMEsmQs~AI$=?&~lyOAS*1qTOzzNEZ#-H5)n0ekTu+{Y>_E0rCL>1wbK z`yx-KafWuAwb|aNK5bwu@Qpi$e4IaWkOE{Tpjpsb>Odi YhZnG)!?4PPVN=ZDFV}(rDP{)Bzsz1Z-2eap diff --git a/indra/newview/res/toolopen.cur b/indra/newview/res/toolopen.cur deleted file mode 100644 index 1562f5bc95517983e4cc60ca02ba599b7c48c180..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4286 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 Date: Wed, 14 Apr 2010 15:22:51 -0400 Subject: [PATCH 3/3] This change originally to fix EXT-1655 has caused a failure to render sitting avatars (EXT-6835). We can probably find a "right" fix, but for now backing it out. Backed out changeset bd384ded4268 --- indra/newview/llagent.cpp | 10 +++++----- indra/newview/llvoavatar.cpp | 3 +-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp index d9d95f1cd6..c5d7f6f118 100644 --- a/indra/newview/llagent.cpp +++ b/indra/newview/llagent.cpp @@ -2296,11 +2296,6 @@ void LLAgent::stopAutoPilot(BOOL user_cancel) { resetAxes(mAutoPilotTargetFacing); } - // If the user cancelled, don't change the fly state - if (!user_cancel) - { - setFlying(mAutoPilotFlyOnStop); - } //NB: auto pilot can terminate for a reason other than reaching the destination if (mAutoPilotFinishedCallback) { @@ -2308,6 +2303,11 @@ void LLAgent::stopAutoPilot(BOOL user_cancel) } mLeaderID = LLUUID::null; + // If the user cancelled, don't change the fly state + if (!user_cancel) + { + setFlying(mAutoPilotFlyOnStop); + } setControlFlags(AGENT_CONTROL_STOP); if (user_cancel && !mAutoPilotBehaviorName.empty()) diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 16eb877b1d..f5e83ed025 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -5619,8 +5619,6 @@ void LLVOAvatar::sitDown(BOOL bSitting) //----------------------------------------------------------------------------- void LLVOAvatar::sitOnObject(LLViewerObject *sit_object) { - sitDown(TRUE); - if (isSelf()) { // Might be first sit @@ -5653,6 +5651,7 @@ void LLVOAvatar::sitOnObject(LLViewerObject *sit_object) mDrawable->mXform.setRotation(mDrawable->getWorldRotation() * inv_obj_rot); gPipeline.markMoved(mDrawable, TRUE); + sitDown(TRUE); mRoot.getXform()->setParent(&sit_object->mDrawable->mXform); // LLVOAvatar::sitOnObject mRoot.setPosition(getPosition()); mRoot.updateWorldMatrixChildren();