merge -r 56842:57026 maintenance.
parent
47576ad1f7
commit
7f50e28b0f
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -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.
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -138,7 +138,6 @@ void LLKeyboard::resetKeys()
|
|||
if( mKeyLevel[i] )
|
||||
{
|
||||
mKeyLevel[i] = FALSE;
|
||||
mKeyLevelFrameCount[i] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -247,7 +247,6 @@ void LLKeyboardWin32::scanKeyboard()
|
|||
{
|
||||
//llinfos << "Key up event missed, resetting" << llendl;
|
||||
mKeyLevel[key] = FALSE;
|
||||
mKeyLevelFrameCount[key] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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());
|
||||
}
|
||||
|
|
@ -156,7 +156,6 @@ public:
|
|||
LLPanelLandInfo *mPanelLandInfo;
|
||||
|
||||
LLTabContainer* mTabLand;
|
||||
LLTool* mLastTool;
|
||||
|
||||
private:
|
||||
BOOL mDirty;
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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")
|
||||
{
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
|
|
|
|||
Loading…
Reference in New Issue