summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Bennetts <steve@lindenlab.com>2007-01-23 19:12:31 +0000
committerSteven Bennetts <steve@lindenlab.com>2007-01-23 19:12:31 +0000
commit7f50e28b0f3905f95299f7d5d63e0fd82e103bed (patch)
tree99c01f8184cc9a5ca90484661b30a8ac6dcd60f4
parent47576ad1f77ecbe606fa1bd3addac610fad43dd7 (diff)
merge -r 56842:57026 maintenance.
-rw-r--r--indra/llcommon/llfasttimer.h6
-rw-r--r--indra/llimage/llimagej2c.cpp2
-rw-r--r--indra/llmessage/llpumpio.cpp1
-rw-r--r--indra/llmessage/llurlrequest.cpp1
-rw-r--r--indra/llwindow/llkeyboard.cpp1
-rw-r--r--indra/llwindow/llkeyboardwin32.cpp1
-rw-r--r--indra/newview/llfasttimerview.cpp62
-rw-r--r--indra/newview/llfasttimerview.h1
-rw-r--r--indra/newview/llfeaturemanager.cpp19
-rw-r--r--indra/newview/llfeaturemanager.h8
-rw-r--r--indra/newview/llflexibleobject.cpp6
-rw-r--r--indra/newview/llfloaterland.cpp8
-rw-r--r--indra/newview/llfloaterland.h3
-rw-r--r--indra/newview/llfloatertools.cpp15
-rw-r--r--indra/newview/llfloatertools.h1
-rw-r--r--indra/newview/llmanip.cpp4
-rw-r--r--indra/newview/llstartup.cpp2
-rw-r--r--indra/newview/llviewercontrol.cpp4
-rw-r--r--indra/newview/llviewercontrol.h5
-rw-r--r--indra/newview/llviewerparcelmgr.cpp2
-rw-r--r--indra/newview/llviewerstats.cpp12
-rw-r--r--indra/newview/llviewerstats.h6
-rw-r--r--indra/newview/llviewerwindow.cpp15
23 files changed, 91 insertions, 94 deletions
diff --git a/indra/llcommon/llfasttimer.h b/indra/llcommon/llfasttimer.h
index b5d7f8adc8..2fde728eaf 100644
--- a/indra/llcommon/llfasttimer.h
+++ b/indra/llcommon/llfasttimer.h
@@ -28,7 +28,11 @@ public:
FTM_IDLE,
FTM_SLEEP,
- // common simulate components
+ // common messaging components
+ FTM_PUMP,
+ FTM_CURL,
+
+ // common simulation components
FTM_UPDATE_ANIMATION,
FTM_UPDATE_TERRAIN,
FTM_UPDATE_PRIMITIVES,
diff --git a/indra/llimage/llimagej2c.cpp b/indra/llimage/llimagej2c.cpp
index d4c08ca377..32a8c60fac 100644
--- a/indra/llimage/llimagej2c.cpp
+++ b/indra/llimage/llimagej2c.cpp
@@ -224,7 +224,7 @@ BOOL LLImageJ2C::decode(LLImageRaw *raw_imagep, F32 decode_time, S32 first_chann
// Update the raw discard level
updateRawDiscardLevel();
- return mImpl->decodeImpl(*this, *raw_imagep, decode_time, 0, 4);
+ return mImpl->decodeImpl(*this, *raw_imagep, decode_time, first_channel, max_channel_count);
}
diff --git a/indra/llmessage/llpumpio.cpp b/indra/llmessage/llpumpio.cpp
index 0c5bd1eaea..5abc63fad0 100644
--- a/indra/llmessage/llpumpio.cpp
+++ b/indra/llmessage/llpumpio.cpp
@@ -316,6 +316,7 @@ bool LLPumpIO::copyCurrentLinkInfo(links_t& links) const
void LLPumpIO::pump()
{
LLMemType m1(LLMemType::MTYPE_IO_PUMP);
+ LLFastTimer t1(LLFastTimer::FTM_PUMP);
//llinfos << "LLPumpIO::pump()" << llendl;
// Run any pending runners.
diff --git a/indra/llmessage/llurlrequest.cpp b/indra/llmessage/llurlrequest.cpp
index 0d784d2d9f..df9c0149d4 100644
--- a/indra/llmessage/llurlrequest.cpp
+++ b/indra/llmessage/llurlrequest.cpp
@@ -251,6 +251,7 @@ LLIOPipe::EStatus LLURLRequest::process_impl(
S32 queue;
do
{
+ LLFastTimer t2(LLFastTimer::FTM_CURL);
code = curl_multi_perform(mDetail->mCurlMulti, &queue);
}while((CURLM_CALL_MULTI_PERFORM == code) && (queue > 0) && count--);
CURLMsg* curl_msg;
diff --git a/indra/llwindow/llkeyboard.cpp b/indra/llwindow/llkeyboard.cpp
index a0970f0140..31db4cabf2 100644
--- a/indra/llwindow/llkeyboard.cpp
+++ b/indra/llwindow/llkeyboard.cpp
@@ -138,7 +138,6 @@ void LLKeyboard::resetKeys()
if( mKeyLevel[i] )
{
mKeyLevel[i] = FALSE;
- mKeyLevelFrameCount[i] = 0;
}
}
diff --git a/indra/llwindow/llkeyboardwin32.cpp b/indra/llwindow/llkeyboardwin32.cpp
index fe553a8230..b168c1aed8 100644
--- a/indra/llwindow/llkeyboardwin32.cpp
+++ b/indra/llwindow/llkeyboardwin32.cpp
@@ -247,7 +247,6 @@ void LLKeyboardWin32::scanKeyboard()
{
//llinfos << "Key up event missed, resetting" << llendl;
mKeyLevel[key] = FALSE;
- mKeyLevelFrameCount[key] = 0;
}
}
}
diff --git a/indra/newview/llfasttimerview.cpp b/indra/newview/llfasttimerview.cpp
index c8c1d0d878..57f786053a 100644
--- a/indra/newview/llfasttimerview.cpp
+++ b/indra/newview/llfasttimerview.cpp
@@ -52,19 +52,21 @@ static LLColor4 green9(0.6f, 1.0f, 0.6f, 1.0f);
// red (5) magenta (4)
static struct ft_display_info ft_display_table[] =
{
- { LLFastTimer::FTM_FRAME, "Frame", &LLColor4::white, 0 },
- { LLFastTimer::FTM_MESSAGES, " Messages", &LLColor4::grey1, 0 },
- { LLFastTimer::FTM_SLEEP, " Sleep", &LLColor4::grey2, 0 },
- { LLFastTimer::FTM_IDLE, " Idle", &blue0, 0 },
- { LLFastTimer::FTM_INVENTORY, " Inventory Update", &LLColor4::purple6, 1 },
- { LLFastTimer::FTM_AUTO_SELECT, " Open and Select", &LLColor4::red, 0 },
+ { LLFastTimer::FTM_FRAME, "Frame", &LLColor4::white, 0 },
+ { LLFastTimer::FTM_MESSAGES, " Messages", &LLColor4::grey1, 0 },
+ { LLFastTimer::FTM_SLEEP, " Sleep", &LLColor4::grey2, 0 },
+ { LLFastTimer::FTM_IDLE, " Idle", &blue0, 0 },
+ { LLFastTimer::FTM_PUMP, " Pump", &LLColor4::magenta2, 1 },
+ { LLFastTimer::FTM_CURL, " Curl", &LLColor4::magenta3, 0 },
+ { LLFastTimer::FTM_INVENTORY, " Inventory Update", &LLColor4::purple6, 1 },
+ { LLFastTimer::FTM_AUTO_SELECT, " Open and Select", &LLColor4::red, 0 },
{ LLFastTimer::FTM_FILTER, " Filter", &LLColor4::red2, 0 },
{ LLFastTimer::FTM_ARRANGE, " Arrange", &LLColor4::red3, 0 },
{ LLFastTimer::FTM_REFRESH, " Refresh", &LLColor4::red4, 0 },
{ LLFastTimer::FTM_SORT, " Sort", &LLColor4::red5, 0 },
- { LLFastTimer::FTM_RESET_DRAWORDER, " ResetDrawOrder", &LLColor4::pink1, 0 },
- { LLFastTimer::FTM_WORLD_UPDATE, " World Update", &LLColor4::blue1, 1 },
- { LLFastTimer::FTM_UPDATE_MOVE, " Move Objects", &LLColor4::pink2, 0 },
+ { LLFastTimer::FTM_RESET_DRAWORDER, " ResetDrawOrder", &LLColor4::pink1, 0 },
+ { LLFastTimer::FTM_WORLD_UPDATE, " World Update", &LLColor4::blue1, 1 },
+ { LLFastTimer::FTM_UPDATE_MOVE, " Move Objects", &LLColor4::pink2, 0 },
{ LLFastTimer::FTM_OCTREE_BALANCE, " Octree Balance", &LLColor4::red3, 0 },
{ LLFastTimer::FTM_CULL, " Object Cull", &LLColor4::blue2, 0 },
{ LLFastTimer::FTM_CULL_REBOUND, " Rebound", &LLColor4::blue3, 0 },
@@ -262,6 +264,13 @@ BOOL LLFastTimerView::handleMouseDown(S32 x, S32 y, MASK mask)
}
}
}
+ else if (mask & MASK_ALT)
+ {
+ if (mask & MASK_SHIFT)
+ mSubtractHidden = !mSubtractHidden;
+ else
+ mDisplayCalls = !mDisplayCalls;
+ }
else if (mask & MASK_SHIFT)
{
if (++mDisplayMode > 3)
@@ -282,8 +291,8 @@ BOOL LLFastTimerView::handleMouseDown(S32 x, S32 y, MASK mask)
mScrollIndex = 0;
}
}
- // RN: for now, pass all mouse events through
- return FALSE;
+ // SJB: Don't pass mouse clicks through the display
+ return TRUE;
}
BOOL LLFastTimerView::handleMouseUp(S32 x, S32 y, MASK mask)
@@ -340,33 +349,6 @@ BOOL LLFastTimerView::handleScrollWheel(S32 x, S32 y, S32 clicks)
return FALSE;
}
-BOOL LLFastTimerView::handleKey(KEY key, MASK mask, BOOL called_from_parent)
-{
- // Otherwise space key gets eaten from the rest of the UI. JC
- if (getVisible())
- {
- switch (key)
- {
- case '=':
- mDisplayCalls = !mDisplayCalls;
- return TRUE;
- case '-':
- mSubtractHidden = !mSubtractHidden;
- return TRUE;
- case ' ':
- // pause/unpause
- LLFastTimer::sPauseHistory = !LLFastTimer::sPauseHistory;
- // reset scroll to bottom when unpausing
- if (!LLFastTimer::sPauseHistory)
- {
- mScrollIndex = 0;
- }
- return TRUE;
- }
- }
- return FALSE;
-}
-
void LLFastTimerView::draw()
{
LLFastTimer t(LLFastTimer::FTM_RENDER_TIMER);
@@ -461,7 +443,7 @@ void LLFastTimerView::draw()
LLFontGL::sMonospace->renderUTF8(tdesc, 0, x, y, LLColor4::white, LLFontGL::LEFT, LLFontGL::TOP);
y -= (texth + 2);
- LLFontGL::sMonospace->renderUTF8("[Right-click to log selected] [= to toggle counts] [- to subtract hidden]",
+ LLFontGL::sMonospace->renderUTF8("[Right-Click log selected] [ALT-Click toggle counts] [ALT-SHIFT-Click sub hidden]",
0, x, y, LLColor4::white, LLFontGL::LEFT, LLFontGL::TOP);
y -= (texth + 2);
}
@@ -547,7 +529,7 @@ void LLFastTimerView::draw()
}
else
{
- U64 ticks = disabled >= 1 ? ticks_sum[0][i] : LLFastTimer::sCountAverage[tidx];
+ U64 ticks = ticks_sum[0][i];
ms = (F32)((F64)ticks * iclock_freq);
calls = (S32)LLFastTimer::sCallAverage[tidx];
}
diff --git a/indra/newview/llfasttimerview.h b/indra/newview/llfasttimerview.h
index ea83c38a84..eb30f60f3d 100644
--- a/indra/newview/llfasttimerview.h
+++ b/indra/newview/llfasttimerview.h
@@ -26,7 +26,6 @@ public:
virtual BOOL handleMouseUp(S32 x, S32 y, MASK mask);
virtual BOOL handleHover(S32 x, S32 y, MASK mask);
virtual BOOL handleScrollWheel(S32 x, S32 y, S32 clicks);
- virtual BOOL handleKey(KEY key, MASK mask, BOOL called_from_parent);
virtual void draw();
S32 getLegendIndex(S32 y);
diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp
index be816deebc..a31fd7d5b2 100644
--- a/indra/newview/llfeaturemanager.cpp
+++ b/indra/newview/llfeaturemanager.cpp
@@ -281,12 +281,7 @@ BOOL LLFeatureManager::loadFeatureTables()
return TRUE;
}
-S32 LLFeatureManager::getGPUClass()
-{
- return mGPUClass;
-}
-
-S32 LLFeatureManager::loadGPUClass()
+void LLFeatureManager::loadGPUClass()
{
std::string data_path = gDirUtilp->getAppRODataDir();
@@ -294,6 +289,10 @@ S32 LLFeatureManager::loadGPUClass()
data_path += GPU_TABLE_FILENAME;
+ // defaults
+ mGPUClass = 0;
+ mGPUString = gGLManager.getRawGLString();
+
llifstream file;
file.open(data_path.c_str());
@@ -301,7 +300,7 @@ S32 LLFeatureManager::loadGPUClass()
if (!file)
{
llwarns << "Unable to open GPU table: " << data_path << "!" << llendl;
- return 0;
+ return;
}
std::string renderer = gGLManager.getRawGLString();
@@ -360,14 +359,14 @@ S32 LLFeatureManager::loadGPUClass()
{
file.close();
llinfos << "GPU is " << label << llendl;
- return (S32) strtol(cls, NULL, 10);
+ mGPUString = label;
+ mGPUClass = (S32) strtol(cls, NULL, 10);
}
}
file.close();
//flp->dump();
llwarns << "Couldn't match GPU to a class: " << gGLManager.getRawGLString() << llendl;
- return 0;
}
void LLFeatureManager::cleanupFeatureTables()
@@ -400,7 +399,7 @@ void LLFeatureManager::initCPUFeatureMasks()
void LLFeatureManager::initGraphicsFeatureMasks()
{
- mGPUClass = loadGPUClass();
+ loadGPUClass();
if (mGPUClass >= 0 && mGPUClass < 4)
{
diff --git a/indra/newview/llfeaturemanager.h b/indra/newview/llfeaturemanager.h
index 98f9317b01..fe37cd7638 100644
--- a/indra/newview/llfeaturemanager.h
+++ b/indra/newview/llfeaturemanager.h
@@ -65,9 +65,10 @@ public:
void maskCurrentList(const char *name); // Mask the current feature list with the named list
BOOL loadFeatureTables();
- S32 getGPUClass();
- S32 loadGPUClass();
+ S32 getGPUClass() { return mGPUClass; }
+ std::string& getGPUString() { return mGPUString; }
+
void cleanupFeatureTables();
S32 getVersion() const { return mTableVersion; }
@@ -83,7 +84,9 @@ public:
BOOL initPCIFeatureMasks();
void applyRecommendedFeatures();
+
protected:
+ void loadGPUClass();
void initBaseMask();
std::map<LLString, LLFeatureList *> mMaskList;
@@ -91,6 +94,7 @@ protected:
S32 mTableVersion;
BOOL mSafe; // Reinitialize everything to the "safe" mask
S32 mGPUClass;
+ std::string mGPUString;
};
extern LLFeatureManager *gFeatureManagerp;
diff --git a/indra/newview/llflexibleobject.cpp b/indra/newview/llflexibleobject.cpp
index 4f821a7978..5e105ac7e2 100644
--- a/indra/newview/llflexibleobject.cpp
+++ b/indra/newview/llflexibleobject.cpp
@@ -185,9 +185,13 @@ void LLVolumeImplFlexible::setAttributesOfAllSections()
end_rot = F_PI * params.getTwist();
}
+ if (!mVO->mDrawable)
+ {
+ return;
+ }
+
S32 num_sections = 1 << mSimulateRes;
-
LLVector3 scale = mVO->mDrawable->getScale();
mSection[0].mPosition = getAnchorPosition();
diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp
index 6897e49dd9..3b4c7c2f59 100644
--- a/indra/newview/llfloaterland.cpp
+++ b/indra/newview/llfloaterland.cpp
@@ -95,6 +95,7 @@ LLFloaterLand* LLFloaterLand::sInstance = NULL;
LLParcelSelectionObserver* LLFloaterLand::sObserver = NULL;
S32 LLFloaterLand::sLastTab = 0;
BOOL LLFloaterLand::sRequestReplyOnUpdate = TRUE;
+LLViewHandle LLPanelLandGeneral::sBuyPassDialogHandle;
// Local classes
class LLParcelSelectionObserver : public LLParcelObserver
@@ -943,7 +944,7 @@ void LLPanelLandGeneral::onClickBuyPass(void* deselect_when_done)
args["[PARCEL_NAME]"] = parcel_name;
args["[TIME]"] = time;
- gViewerWindow->alertXml("LandBuyPass", args, cbBuyPass, deselect_when_done);
+ sBuyPassDialogHandle = gViewerWindow->alertXml("LandBuyPass", args, cbBuyPass, deselect_when_done)->getHandle();
}
// static
@@ -980,6 +981,11 @@ void LLPanelLandGeneral::cbBuyPass(S32 option, void* data)
}
}
+//static
+BOOL LLPanelLandGeneral::buyPassDialogVisible()
+{
+ return LLFloater::getFloaterByHandle(sBuyPassDialogHandle) != NULL;
+}
// static
void LLPanelLandGeneral::onCommitAny(LLUICtrl *ctrl, void *userdata)
diff --git a/indra/newview/llfloaterland.h b/indra/newview/llfloaterland.h
index 72f1e8ca8d..a28fea261f 100644
--- a/indra/newview/llfloaterland.h
+++ b/indra/newview/llfloaterland.h
@@ -130,6 +130,7 @@ public:
static void onSalePriceChange(LLUICtrl *ctrl, void * userdata);
static void cbBuyPass(S32 option, void*);
+ static BOOL buyPassDialogVisible();
static void onClickSellLand(void* data);
static void onClickStopSellLand(void* data);
@@ -196,6 +197,8 @@ protected:
LLButton* mBtnBuyPass;
LLButton* mBtnStartAuction;
+
+ static LLViewHandle sBuyPassDialogHandle;
};
class LLPanelLandObjects
diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp
index 11665f484a..c9a28ab361 100644
--- a/indra/newview/llfloatertools.cpp
+++ b/indra/newview/llfloatertools.cpp
@@ -364,8 +364,7 @@ LLFloaterTools::LLFloaterTools()
mPanelLandInfo(NULL),
mTabLand(NULL),
- mDirty(TRUE),
- mLastTool(gToolNull)
+ mDirty(TRUE)
{
mAutoFocus = FALSE;
LLCallbackMap::map_t factory_map;
@@ -930,21 +929,13 @@ void LLFloaterTools::onClickGridOptions(void* data)
//floaterp->addDependentFloater(LLFloaterBuildOptions::getInstance(), FALSE);
}
-void LLFloaterTools::saveLastTool()
-{
- mLastTool = gToolMgr->getCurrentTool( MASK_NONE );
-}
-
void LLFloaterTools::setEditTool(void* tool_pointer)
{
select_tool(tool_pointer);
- if(gFloaterTools && tool_pointer != gToolNull)
- {
- gFloaterTools->saveLastTool();
- }
}
void LLFloaterTools::onFocusReceived()
{
- select_tool(mLastTool);
+ gCurrentToolset = gBasicToolset;
+ gCurrentToolset->selectTool(gCurrentToolset->getSelectedTool());
} \ No newline at end of file
diff --git a/indra/newview/llfloatertools.h b/indra/newview/llfloatertools.h
index c1bb050c2c..e13e15ba01 100644
--- a/indra/newview/llfloatertools.h
+++ b/indra/newview/llfloatertools.h
@@ -156,7 +156,6 @@ public:
LLPanelLandInfo *mPanelLandInfo;
LLTabContainer* mTabLand;
- LLTool* mLastTool;
private:
BOOL mDirty;
diff --git a/indra/newview/llmanip.cpp b/indra/newview/llmanip.cpp
index 57d34f672b..74c7ae6c18 100644
--- a/indra/newview/llmanip.cpp
+++ b/indra/newview/llmanip.cpp
@@ -88,9 +88,7 @@ void LLManip::getManipNormal(LLViewerObject* object, EManipPart manip, LLVector3
LLVector3 arrow_axis;
getManipAxis(object, manip, arrow_axis);
- LLVector3 origin_dir = grid_origin - gCamera->getOrigin();
- origin_dir.normVec();
- LLVector3 cross = arrow_axis % origin_dir;
+ LLVector3 cross = arrow_axis % gCamera->getAtAxis();
normal = cross % arrow_axis;
normal.normVec();
}
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index 2119bf2d70..eda759cc2c 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -666,7 +666,7 @@ BOOL idle_startup()
gSavedSettings.loadFromFile(gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT,"overrides.xml"));
// handle the per account settings setup
- strcpy(gPerAccountSettingsFileName, gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, DEFAULT_SETTINGS_FILE).c_str());
+ gPerAccountSettingsFileName = gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, DEFAULT_SETTINGS_FILE);
// per account settings. Set defaults here if not found. If we get a bunch of these, eventually move to a function.
gSavedPerAccountSettings.loadFromFile(gPerAccountSettingsFileName);
diff --git a/indra/newview/llviewercontrol.cpp b/indra/newview/llviewercontrol.cpp
index c0de0c872a..ea26802152 100644
--- a/indra/newview/llviewercontrol.cpp
+++ b/indra/newview/llviewercontrol.cpp
@@ -38,8 +38,8 @@ LLControlGroup gCrashSettings; // saved at end of session
LLString gLastRunVersion;
LLString gCurrentVersion;
-char gSettingsFileName[LL_MAX_PATH];
-char gPerAccountSettingsFileName[LL_MAX_PATH] = "";
+LLString gSettingsFileName;
+LLString gPerAccountSettingsFileName;
LLFloaterSettingsDebug::LLFloaterSettingsDebug() : LLFloater("Configuration Editor")
{
diff --git a/indra/newview/llviewercontrol.h b/indra/newview/llviewercontrol.h
index a6692df7fb..e86f961b3a 100644
--- a/indra/newview/llviewercontrol.h
+++ b/indra/newview/llviewercontrol.h
@@ -53,8 +53,7 @@ extern LLControlGroup gCrashSettings;
extern LLString gLastRunVersion;
extern LLString gCurrentVersion;
-extern char gSettingsFileName[LL_MAX_PATH];
-extern char gPerAccountSettingsFileName[LL_MAX_PATH];
-extern const char *DEFAULT_SETTINGS_FILE;
+extern LLString gSettingsFileName;
+extern LLString gPerAccountSettingsFileName;
#endif // LL_LLVIEWERCONTROL_H
diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp
index e3d462bb3b..a3cfe734ff 100644
--- a/indra/newview/llviewerparcelmgr.cpp
+++ b/indra/newview/llviewerparcelmgr.cpp
@@ -2484,7 +2484,7 @@ void LLViewerParcelMgr::buyPass()
//Tells whether we are allowed to buy a pass or not
BOOL LLViewerParcelMgr::isCollisionBanned()
{
- if ((mCollisionBanned == BA_ALLOWED) || (mCollisionBanned == BA_NOT_ON_LIST))
+ if ((mCollisionBanned == BA_ALLOWED) || (mCollisionBanned == BA_NOT_ON_LIST) || (mCollisionBanned == BA_NOT_IN_GROUP))
return FALSE;
else
return TRUE;
diff --git a/indra/newview/llviewerstats.cpp b/indra/newview/llviewerstats.cpp
index bb490959c7..baf241697b 100644
--- a/indra/newview/llviewerstats.cpp
+++ b/indra/newview/llviewerstats.cpp
@@ -38,8 +38,8 @@ public:
const StatAttributes STAT_INFO[LLViewerStats::ST_COUNT] =
{
- // ST_MOUSELOOK_SECONDS
- StatAttributes("Seconds in Mouselook", FALSE, TRUE),
+ // ST_VERSION
+ StatAttributes("Version", TRUE, FALSE),
// ST_AVATAR_EDIT_SECONDS
StatAttributes("Seconds in Edit Appearence", FALSE, TRUE),
// ST_TOOLBOX_SECONDS
@@ -58,10 +58,10 @@ const StatAttributes STAT_INFO[LLViewerStats::ST_COUNT] =
StatAttributes("Object rez count", FALSE, FALSE),
// ST_FPS_10_SECONDS
StatAttributes("Seconds below 10 FPS", FALSE, TRUE),
- // ST_FPS_5_SECONDS
- StatAttributes("Seconds below 5 FPS", FALSE, TRUE),
// ST_FPS_2_SECONDS
StatAttributes("Seconds below 2 FPS", FALSE, TRUE),
+ // ST_MOUSELOOK_SECONDS
+ StatAttributes("Seconds in Mouselook", FALSE, TRUE),
// ST_FLY_COUNT
StatAttributes("Fly count", FALSE, FALSE),
// ST_TELEPORT_COUNT
@@ -229,10 +229,6 @@ void LLViewerStats::updateFrameStats(const F64 time_diff)
{
incStat(LLViewerStats::ST_FPS_2_SECONDS, time_diff);
}
- if (time_diff >= 0.2)
- {
- incStat(LLViewerStats::ST_FPS_5_SECONDS, time_diff);
- }
if (time_diff >= 0.125)
{
incStat(LLViewerStats::ST_FPS_8_SECONDS, time_diff);
diff --git a/indra/newview/llviewerstats.h b/indra/newview/llviewerstats.h
index b58012d01c..055b21d116 100644
--- a/indra/newview/llviewerstats.h
+++ b/indra/newview/llviewerstats.h
@@ -79,7 +79,7 @@ public:
// in statTypeToText in llviewerstats.cpp
enum EStatType
{
- ST_MOUSELOOK_SECONDS = 0,
+ ST_VERSION = 0,
ST_AVATAR_EDIT_SECONDS = 1,
ST_TOOLBOX_SECONDS = 2,
ST_CHAT_COUNT = 3,
@@ -89,8 +89,8 @@ public:
ST_CREATE_COUNT = 7,
ST_REZ_COUNT = 8,
ST_FPS_10_SECONDS = 9,
- ST_FPS_5_SECONDS = 10,
- ST_FPS_2_SECONDS = 11,
+ ST_FPS_2_SECONDS = 10,
+ ST_MOUSELOOK_SECONDS = 11,
ST_FLY_COUNT = 12,
ST_TELEPORT_COUNT = 13,
ST_OBJECT_DELETE_COUNT = 14,
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index dc00fe7585..77c6794dfe 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -349,6 +349,12 @@ BOOL LLViewerWindow::handleMouseDown(LLWindow *window, LLCoordGL pos, MASK mask
llinfos << "ViewerWindow left mouse down at " << x << "," << y << llendl;
}
+ if (gMenuBarView)
+ {
+ // stop ALT-key access to menu
+ gMenuBarView->resetMenuTrigger();
+ }
+
mLeftMouseDown = TRUE;
// Make sure we get a coresponding mouseup event, even if the mouse leaves the window
@@ -617,6 +623,12 @@ BOOL LLViewerWindow::handleRightMouseDown(LLWindow *window, LLCoordGL pos, MASK
llinfos << "ViewerWindow right mouse down at " << x << "," << y << llendl;
}
+ if (gMenuBarView)
+ {
+ // stop ALT-key access to menu
+ gMenuBarView->resetMenuTrigger();
+ }
+
mRightMouseDown = TRUE;
// Make sure we get a coresponding mouseup event, even if the mouse leaves the window
@@ -2514,7 +2526,7 @@ BOOL LLViewerWindow::handlePerFrameHover()
}
}
- if (tool != gToolNull && tool != gToolInspect && tool != gToolCamera && tool != gToolDragAndDrop && !gSavedSettings.getBOOL("FreezeTime"))
+ if (tool != gToolNull && tool != gToolInspect && tool != gToolDragAndDrop && !gSavedSettings.getBOOL("FreezeTime"))
{
LLMouseHandler *captor = gFocusMgr.getMouseCapture();
// With the null, inspect, or drag and drop tool, don't muck
@@ -2679,6 +2691,7 @@ BOOL LLViewerWindow::handlePerFrameHover()
&& !gMenuHolder->hasVisibleMenu()
&& !LLFloaterLand::floaterVisible()
&& !LLFloaterBuyLand::isOpen()
+ && !LLPanelLandGeneral::buyPassDialogVisible()
&& (!gFloaterTools || !gFloaterTools->getVisible()))
{
gParcelMgr->deselectLand();