From 04f9d0b7cef929ad9acdea37bf5f826850993c52 Mon Sep 17 00:00:00 2001 From: Jacek Antonelli Date: Fri, 3 Oct 2008 18:05:46 -0500 Subject: Second Life viewer sources 1.21.4-RC --- linden/indra/llcommon/llversionviewer.h | 2 +- linden/indra/newview/llappviewer.cpp | 2 +- linden/indra/newview/llconsole.cpp | 13 +- linden/indra/newview/llselectmgr.cpp | 4 +- linden/indra/newview/lltexturecache.cpp | 4 - linden/indra/newview/lltoolgrab.cpp | 68 +- linden/indra/newview/lltoolgrab.h | 7 + linden/indra/newview/llviewerjoystick.cpp | 11 +- linden/indra/newview/llviewerjoystick.h | 2 +- linden/indra/newview/llviewermenu.cpp | 11 +- .../indra/newview/skins/default/xui/de/alerts.xml | 2 +- .../newview/skins/default/xui/de/floater_about.xml | 6 +- .../skins/default/xui/de/floater_chat_history.xml | 12 +- .../newview/skins/default/xui/de/floater_im.xml | 2 +- .../xui/de/floater_instant_message_group.xml | 2 +- .../indra/newview/skins/default/xui/de/notify.xml | 8 +- .../skins/default/xui/de/panel_chat_bar.xml | 8 +- .../default/xui/de/panel_preferences_chat.xml | 2 +- .../default/xui/de/panel_preferences_popups.xml | 4 +- .../skins/default/xui/en-us/floater_about.xml | 6 +- .../default/xui/en-us/floater_chat_history.xml | 4 +- .../skins/default/xui/en-us/panel_chat_bar.xml | 4 +- .../skins/default/xui/en-us/role_actions.xml | 8 +- .../newview/skins/default/xui/fr/floater_about.xml | 6 +- .../skins/default/xui/fr/floater_buy_currency.xml | 14 +- .../skins/default/xui/fr/floater_customize.xml | 225 ++-- .../skins/default/xui/fr/floater_directory.xml | 110 +- .../xui/fr/floater_instant_message_group.xml | 6 +- .../default/xui/fr/floater_new_outfit_dialog.xml | 91 +- .../skins/default/xui/fr/floater_postcard.xml | 6 +- .../newview/skins/default/xui/fr/floater_tos.xml | 3 +- .../default/xui/fr/floater_wearable_save_as.xml | 2 +- .../skins/default/xui/fr/floater_world_map.xml | 65 +- .../indra/newview/skins/default/xui/ja/alerts.xml | 1219 ++++++++------------ .../newview/skins/default/xui/ja/floater_about.xml | 8 +- .../skins/default/xui/ja/floater_chat_history.xml | 23 +- .../newview/skins/default/xui/ja/floater_im.xml | 39 +- .../default/xui/ja/floater_instant_message.xml | 11 +- .../xui/ja/floater_instant_message_ad_hoc.xml | 17 +- .../xui/ja/floater_instant_message_group.xml | 25 +- .../default/xui/ja/floater_preview_gesture.xml | 65 +- .../newview/skins/default/xui/ja/floater_tools.xml | 2 +- .../indra/newview/skins/default/xui/ja/notify.xml | 2 +- .../skins/default/xui/ja/panel_chat_bar.xml | 27 +- .../newview/skins/default/xui/ja/panel_login.xml | 13 +- .../default/xui/ja/panel_preferences_chat.xml | 69 +- .../skins/default/xui/ja/panel_preferences_im.xml | 39 +- .../default/xui/ja/panel_preferences_popups.xml | 30 +- .../default/xui/ja/panel_speaker_controls.xml | 11 +- .../newview/skins/default/xui/ko/floater_about.xml | 6 +- .../skins/default/xui/ko/floater_chat_history.xml | 8 +- .../skins/default/xui/ko/panel_chat_bar.xml | 8 +- .../newview/skins/default/xui/zh/floater_about.xml | 6 +- 53 files changed, 1046 insertions(+), 1302 deletions(-) (limited to 'linden') diff --git a/linden/indra/llcommon/llversionviewer.h b/linden/indra/llcommon/llversionviewer.h index e3e74b5..d7a4e3d 100644 --- a/linden/indra/llcommon/llversionviewer.h +++ b/linden/indra/llcommon/llversionviewer.h @@ -34,7 +34,7 @@ const S32 LL_VERSION_MAJOR = 1; const S32 LL_VERSION_MINOR = 21; -const S32 LL_VERSION_PATCH = 3; +const S32 LL_VERSION_PATCH = 4; const S32 LL_VERSION_BUILD = 0; const char * const LL_CHANNEL = "Second Life Release"; diff --git a/linden/indra/newview/llappviewer.cpp b/linden/indra/newview/llappviewer.cpp index 6c740dd..f1b2e32 100644 --- a/linden/indra/newview/llappviewer.cpp +++ b/linden/indra/newview/llappviewer.cpp @@ -2680,7 +2680,7 @@ bool LLAppViewer::initCache() std::string cache_dir = gDirUtilp->getOSUserAppDir(); std::string new_cache_dir = gDirUtilp->getOSCacheDir(); cache_dir = cache_dir + "/cache"; - new_cache_dir = new_cache_dir + "/" + gSecondLife; + new_cache_dir = new_cache_dir + "/SecondLife"; if (gDirUtilp->fileExists(cache_dir)) { gDirUtilp->setCacheDir(cache_dir); diff --git a/linden/indra/newview/llconsole.cpp b/linden/indra/newview/llconsole.cpp index 58cda1c..3ee11ff 100644 --- a/linden/indra/newview/llconsole.cpp +++ b/linden/indra/newview/llconsole.cpp @@ -334,22 +334,21 @@ void LLConsole::Paragraph::updateLines(F32 screen_width, LLFontGL* font, bool fo // Wrap lines that are longer than the view is wide. while( paragraph_offset < (S32)mParagraphText.length() ) { - S32 skip_newline_chars; // skip '\n' + bool found_newline = false; // skip '\n' // Figure out if a word-wrapped line fits here. LLWString::size_type line_end = mParagraphText.find_first_of(llwchar('\n'), paragraph_offset); if (line_end != LLWString::npos) { - skip_newline_chars = 1; // skip '\n' + found_newline = true; // skip '\n' } else { line_end = mParagraphText.size(); - skip_newline_chars = 0; } U32 drawable = font->maxDrawableChars(mParagraphText.c_str()+paragraph_offset, screen_width, line_end - paragraph_offset, TRUE); - if (drawable != 0) + if (drawable != 0 || found_newline) { F32 x_position = 0; //Screen X position of text. @@ -394,10 +393,10 @@ void LLConsole::Paragraph::updateLines(F32 screen_width, LLFontGL* font, bool fo } else { - if( !skip_newline_chars ) - break; // Nothing more to print + break; // Nothing more to print } - paragraph_offset += (drawable + skip_newline_chars); + + paragraph_offset += (drawable + ( found_newline ? 1 : 0 ) ); } } diff --git a/linden/indra/newview/llselectmgr.cpp b/linden/indra/newview/llselectmgr.cpp index 78b921b..2e4983c 100644 --- a/linden/indra/newview/llselectmgr.cpp +++ b/linden/indra/newview/llselectmgr.cpp @@ -3450,7 +3450,9 @@ void LLSelectMgr::deselectAllIfTooFar() } LLVector3d selectionCenter = getSelectionCenterGlobal(); - if (gSavedSettings.getBOOL("LimitSelectDistance") + if (gSavedSettings.getBOOL("LimitSelectDistance") + && (!mSelectedObjects->getPrimaryObject() || !mSelectedObjects->getPrimaryObject()->isAvatar()) + && !mSelectedObjects->isAttachment() && !selectionCenter.isExactlyZero()) { F32 deselect_dist = gSavedSettings.getF32("MaxSelectDistance"); diff --git a/linden/indra/newview/lltexturecache.cpp b/linden/indra/newview/lltexturecache.cpp index cf4304b..fd4ece6 100644 --- a/linden/indra/newview/lltexturecache.cpp +++ b/linden/indra/newview/lltexturecache.cpp @@ -839,10 +839,6 @@ void LLTextureCacheWorker::finishWork(S32 param, bool completed) { delete[] mReadData; mReadData = NULL; - if (mDataSize != 0) - { - llinfos << "Read Failed. mDataSize = " << mDataSize << llendl; - } } } else diff --git a/linden/indra/newview/lltoolgrab.cpp b/linden/indra/newview/lltoolgrab.cpp index 74810d1..b49e8de 100644 --- a/linden/indra/newview/lltoolgrab.cpp +++ b/linden/indra/newview/lltoolgrab.cpp @@ -400,6 +400,13 @@ void LLToolGrab::startGrab() mGrabHiddenOffsetFromCamera = mDragStartFromCamera; mGrabTimer.reset(); + + mLastUVCoords = mGrabPick.mUVCoords; + mLastSTCoords = mGrabPick.mSTCoords; + mLastFace = mGrabPick.mObjectFace; + mLastIntersection = mGrabPick.mIntersection; + mLastNormal = mGrabPick.mNormal; + mLastBinormal = mGrabPick.mBinormal; } @@ -797,26 +804,51 @@ void LLToolGrab::handleHoverNonPhysical(S32 x, S32 y, MASK mask) grab_pos_region = objectp->getRegion()->getPosRegionFromGlobal( grab_point_global ); } - LLMessageSystem *msg = gMessageSystem; - msg->newMessageFast(_PREHASH_ObjectGrabUpdate); - msg->nextBlockFast(_PREHASH_AgentData); - msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); - msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); - msg->nextBlockFast(_PREHASH_ObjectData); - msg->addUUIDFast(_PREHASH_ObjectID, objectp->getID() ); - msg->addVector3Fast(_PREHASH_GrabOffsetInitial, mGrabOffsetFromCenterInitial ); - msg->addVector3Fast(_PREHASH_GrabPosition, grab_pos_region ); - msg->addU32Fast(_PREHASH_TimeSinceLast, dt_milliseconds ); - msg->nextBlock("SurfaceInfo"); - msg->addVector3("UVCoord", LLVector3(pick.mUVCoords)); - msg->addVector3("STCoord", LLVector3(pick.mSTCoords)); - msg->addS32Fast(_PREHASH_FaceIndex, pick.mObjectFace); - msg->addVector3("Position", pick.mIntersection); - msg->addVector3("Normal", pick.mNormal); - msg->addVector3("Binormal", pick.mBinormal); - msg->sendMessage( objectp->getRegion()->getHost() ); + // only send message if something has changed since last message + + BOOL changed_since_last_update = FALSE; + + if ((pick.mObjectFace != mLastFace) || + (pick.mUVCoords != mLastUVCoords) || + (pick.mSTCoords != mLastSTCoords) || + (pick.mIntersection != mLastIntersection) || + (pick.mNormal != mLastNormal) || + (pick.mBinormal != mLastBinormal)) + { + changed_since_last_update = TRUE; + } + if (changed_since_last_update) + { + LLMessageSystem *msg = gMessageSystem; + msg->newMessageFast(_PREHASH_ObjectGrabUpdate); + msg->nextBlockFast(_PREHASH_AgentData); + msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); + msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); + msg->nextBlockFast(_PREHASH_ObjectData); + msg->addUUIDFast(_PREHASH_ObjectID, objectp->getID() ); + msg->addVector3Fast(_PREHASH_GrabOffsetInitial, mGrabOffsetFromCenterInitial ); + msg->addVector3Fast(_PREHASH_GrabPosition, grab_pos_region ); + msg->addU32Fast(_PREHASH_TimeSinceLast, dt_milliseconds ); + msg->nextBlock("SurfaceInfo"); + msg->addVector3("UVCoord", LLVector3(pick.mUVCoords)); + msg->addVector3("STCoord", LLVector3(pick.mSTCoords)); + msg->addS32Fast(_PREHASH_FaceIndex, pick.mObjectFace); + msg->addVector3("Position", pick.mIntersection); + msg->addVector3("Normal", pick.mNormal); + msg->addVector3("Binormal", pick.mBinormal); + + msg->sendMessage( objectp->getRegion()->getHost() ); + + mLastUVCoords = pick.mUVCoords; + mLastSTCoords = pick.mSTCoords; + mLastFace = pick.mObjectFace; + mLastIntersection = pick.mIntersection; + mLastNormal= pick.mNormal; + mLastBinormal= pick.mBinormal; + } + // update point-at / look-at if (pick.mObjectFace != -1) // if the intersection was on the surface of the obejct { diff --git a/linden/indra/newview/lltoolgrab.h b/linden/indra/newview/lltoolgrab.h index 5db7fcf..af66e0d 100644 --- a/linden/indra/newview/lltoolgrab.h +++ b/linden/indra/newview/lltoolgrab.h @@ -118,6 +118,13 @@ private: BOOL mOutsideSlop; // has mouse moved outside center 5 pixels? BOOL mDeselectedThisClick; + S32 mLastFace; + LLVector2 mLastUVCoords; + LLVector2 mLastSTCoords; + LLVector3 mLastIntersection; + LLVector3 mLastNormal; + LLVector3 mLastBinormal; + BOOL mSpinGrabbing; LLQuaternion mSpinRotation; diff --git a/linden/indra/newview/llviewerjoystick.cpp b/linden/indra/newview/llviewerjoystick.cpp index 2e57843..2e4ce0b 100644 --- a/linden/indra/newview/llviewerjoystick.cpp +++ b/linden/indra/newview/llviewerjoystick.cpp @@ -386,7 +386,7 @@ void LLViewerJoystick::agentRotate(F32 pitch_inc, F32 yaw_inc) } // ----------------------------------------------------------------------------- -void LLViewerJoystick::resetDeltas(S32 axis[], bool flycam_and_build_mode) +void LLViewerJoystick::resetDeltas(S32 axis[]) { for (U32 i = 0; i < 6; i++) { @@ -394,13 +394,6 @@ void LLViewerJoystick::resetDeltas(S32 axis[], bool flycam_and_build_mode) sDelta[i] = 0.f; } - if (flycam_and_build_mode) - { - sLastDelta[X_I] /= BUILDMODE_FLYCAM_T_SCALE; - sLastDelta[Y_I] /= BUILDMODE_FLYCAM_T_SCALE; - sLastDelta[Z_I] /= BUILDMODE_FLYCAM_T_SCALE; - } - sLastDelta[6] = sDelta[6] = 0.f; mResetFlag = false; } @@ -755,7 +748,7 @@ void LLViewerJoystick::moveFlycam(bool reset) sFlycamRotation = LLViewerCamera::getInstance()->getQuaternion(); sFlycamZoom = LLViewerCamera::getInstance()->getView(); - resetDeltas(axis, in_build_mode); + resetDeltas(axis); return; } diff --git a/linden/indra/newview/llviewerjoystick.h b/linden/indra/newview/llviewerjoystick.h index 6a582fd..44d0dca 100644 --- a/linden/indra/newview/llviewerjoystick.h +++ b/linden/indra/newview/llviewerjoystick.h @@ -81,7 +81,7 @@ protected: void agentFly(F32 inc); void agentRotate(F32 pitch_inc, F32 turn_inc); void agentJump(); - void resetDeltas(S32 axis[], bool flycam_and_build = false); + void resetDeltas(S32 axis[]); #if LIB_NDOF static NDOF_HotPlugResult HotPlugAddCallback(NDOF_Device *dev); static void HotPlugRemovalCallback(NDOF_Device *dev); diff --git a/linden/indra/newview/llviewermenu.cpp b/linden/indra/newview/llviewermenu.cpp index c7207ba..c2a8055 100644 --- a/linden/indra/newview/llviewermenu.cpp +++ b/linden/indra/newview/llviewermenu.cpp @@ -4903,13 +4903,20 @@ class LLToolsLookAtSelection : public view_listener_t LLVector3 obj_to_cam = LLViewerCamera::getInstance()->getOrigin() - selection_bbox.getCenterAgent(); obj_to_cam.normVec(); + LLUUID object_id; + if (LLSelectMgr::getInstance()->getSelection()->getPrimaryObject()) + { + object_id = LLSelectMgr::getInstance()->getSelection()->getPrimaryObject()->mID; + } if (zoom) { - gAgent.setCameraPosAndFocusGlobal(LLSelectMgr::getInstance()->getSelectionCenterGlobal() + LLVector3d(obj_to_cam * distance), LLSelectMgr::getInstance()->getSelectionCenterGlobal(), LLSelectMgr::getInstance()->getSelection()->getPrimaryObject()->mID ); + gAgent.setCameraPosAndFocusGlobal(LLSelectMgr::getInstance()->getSelectionCenterGlobal() + LLVector3d(obj_to_cam * distance), + LLSelectMgr::getInstance()->getSelectionCenterGlobal(), + object_id ); } else { - gAgent.setFocusGlobal( LLSelectMgr::getInstance()->getSelectionCenterGlobal(), LLSelectMgr::getInstance()->getSelection()->getPrimaryObject()->mID ); + gAgent.setFocusGlobal( LLSelectMgr::getInstance()->getSelectionCenterGlobal(), object_id ); } } return true; diff --git a/linden/indra/newview/skins/default/xui/de/alerts.xml b/linden/indra/newview/skins/default/xui/de/alerts.xml index be828a4..68cfce6 100644 --- a/linden/indra/newview/skins/default/xui/de/alerts.xml +++ b/linden/indra/newview/skins/default/xui/de/alerts.xml @@ -838,7 +838,7 @@ Die Änderungen übernehmen und das Programm beenden? - Möchten Sie alle Popups wieder aktivieren, die Sie zuvor auf ‚Nicht mehr anzeigen' gesetzt haben? + Möchten Sie alle Popups wieder aktivieren, die Sie zuvor auf 'Nicht mehr anzeigen' gesetzt haben?