summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Bennetts <steve@lindenlab.com>2008-04-28 22:19:05 +0000
committerSteven Bennetts <steve@lindenlab.com>2008-04-28 22:19:05 +0000
commit75ee8558abb662b6a0a6b559c61a9549818d2962 (patch)
tree344d00fe450ed2618e54368382e4c39b7ad66ae2
parenta089a401ee39c016d7d5c950d4f36e170c5a00e4 (diff)
merge release-QAR-499 Viewer 1.20 RC 2 (additional changes)
merge Branch_1-20-Viewer -r 85100 : 85278 -> release
-rw-r--r--indra/newview/llappviewer.cpp23
-rw-r--r--indra/newview/llfloaterchat.cpp17
-rw-r--r--indra/newview/llfloaterchat.h2
-rw-r--r--indra/newview/llfloaterchatterbox.cpp7
-rw-r--r--indra/newview/llfloaterchatterbox.h1
-rw-r--r--indra/newview/llfloaterimagepreview.cpp2
-rw-r--r--indra/newview/llpanelobject.cpp2
-rw-r--r--indra/newview/llvoavatar.cpp39
8 files changed, 65 insertions, 28 deletions
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 8c62969bec..572927f918 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -296,6 +296,7 @@ BOOL gPrintMessagesThisFrame = FALSE;
BOOL gRandomizeFramerate = FALSE;
BOOL gPeriodicSlowFrame = FALSE;
+BOOL gCrashOnStartup = FALSE;
BOOL gLLErrorActivated = FALSE;
BOOL gLogoutInProgress = FALSE;
////////////////////////////////////////////////////////////
@@ -1621,12 +1622,6 @@ bool LLAppViewer::initConfiguration()
// - selectively apply settings
- // If we have specified crash on startup, might as well do it now.
- if(clp.hasOption("crashonstartup"))
- {
- LLAppViewer::instance()->forceErrorLLError();
- }
-
// If the user has specified a alternate settings file name.
// Load it now before loading the user_settings/settings.xml
if(clp.hasOption("settings"))
@@ -1726,7 +1721,13 @@ bool LLAppViewer::initConfiguration()
initGridChoice();
- // Handle slurl use. NOTE: Don't let SL-55321 reappear.
+ // If we have specified crash on startup, set the global so we'll trigger the crash at the right time
+ if(clp.hasOption("crashonstartup"))
+ {
+ gCrashOnStartup = TRUE;
+ }
+
+ // Handle slurl use. NOTE: Don't let SL-55321 reappear.
// *FIX: This init code should be made more robust to prevent
// the issue SL-55321 from returning. One thought is to allow
@@ -2021,6 +2022,7 @@ bool LLAppViewer::initConfiguration()
};
gLastRunVersion = gSavedSettings.getString("LastRunVersion");
+
return true; // Config was successful.
}
@@ -2076,6 +2078,12 @@ bool LLAppViewer::initWindow()
gSavedSettings.saveToFile( gSavedSettings.getString("ClientSettingsFile"), TRUE );
}
+ //If we have a startup crash, it's usually near GL initialization, so simulate that.
+ if(gCrashOnStartup)
+ {
+ LLAppViewer::instance()->forceErrorLLError();
+ }
+
LLUI::sWindow = gViewerWindow->getWindow();
LLAlertDialog::parseAlerts("alerts.xml");
@@ -2089,6 +2097,7 @@ bool LLAppViewer::initWindow()
// show viewer window
gViewerWindow->mWindow->show();
+
return true;
}
diff --git a/indra/newview/llfloaterchat.cpp b/indra/newview/llfloaterchat.cpp
index 5ff75c4969..22e418d60d 100644
--- a/indra/newview/llfloaterchat.cpp
+++ b/indra/newview/llfloaterchat.cpp
@@ -162,7 +162,7 @@ void LLFloaterChat::onClose(bool app_quitting)
void LLFloaterChat::onVisibilityChange(BOOL new_visibility)
{
// Hide the chat overlay when our history is visible.
- gConsole->setVisible( !new_visibility );
+ updateConsoleVisibility();
// stop chat history tab from flashing when it appears
if (new_visibility)
@@ -173,6 +173,21 @@ void LLFloaterChat::onVisibilityChange(BOOL new_visibility)
LLFloater::onVisibilityChange(new_visibility);
}
+void LLFloaterChat::setMinimized(BOOL minimized)
+{
+ LLFloater::setMinimized(minimized);
+ updateConsoleVisibility();
+}
+
+
+void LLFloaterChat::updateConsoleVisibility()
+{
+ // determine whether we should show console due to not being visible
+ gConsole->setVisible( !isInVisibleChain() // are we not in part of UI being drawn?
+ || isMinimized() // are we minimized?
+ || (getHost() && getHost()->isMinimized() )); // are we hosted in a minimized floater?
+}
+
void add_timestamped_line(LLViewerTextEditor* edit, const LLString& line, const LLColor4& color)
{
bool prepend_newline = true;
diff --git a/indra/newview/llfloaterchat.h b/indra/newview/llfloaterchat.h
index 987fa2b4c5..118e6bbe6d 100644
--- a/indra/newview/llfloaterchat.h
+++ b/indra/newview/llfloaterchat.h
@@ -62,6 +62,8 @@ public:
virtual BOOL postBuild();
virtual void onClose(bool app_quitting);
virtual void onVisibilityChange(BOOL cur_visibility);
+ virtual void setMinimized(BOOL);
+ void updateConsoleVisibility();
static void setHistoryCursorAndScrollToEnd();
diff --git a/indra/newview/llfloaterchatterbox.cpp b/indra/newview/llfloaterchatterbox.cpp
index 71de859703..44019d1227 100644
--- a/indra/newview/llfloaterchatterbox.cpp
+++ b/indra/newview/llfloaterchatterbox.cpp
@@ -210,6 +210,13 @@ void LLFloaterChatterBox::onClose(bool app_quitting)
gSavedSettings.setBOOL("ShowCommunicate", FALSE);
}
+void LLFloaterChatterBox::setMinimized(BOOL minimized)
+{
+ LLFloater::setMinimized(minimized);
+ // HACK: potentially need to toggle console
+ LLFloaterChat::getInstance()->updateConsoleVisibility();
+}
+
void LLFloaterChatterBox::removeFloater(LLFloater* floaterp)
{
if (floaterp->getName() == "chat floater")
diff --git a/indra/newview/llfloaterchatterbox.h b/indra/newview/llfloaterchatterbox.h
index e74a2e3ffd..1d15362435 100644
--- a/indra/newview/llfloaterchatterbox.h
+++ b/indra/newview/llfloaterchatterbox.h
@@ -51,6 +51,7 @@ public:
/*virtual*/ void draw();
/*virtual*/ void onOpen();
/*virtual*/ void onClose(bool app_quitting);
+ /*virtual*/ void setMinimized(BOOL minimized);
/*virtual*/ void removeFloater(LLFloater* floaterp);
/*virtual*/ void addFloater(LLFloater* floaterp,
diff --git a/indra/newview/llfloaterimagepreview.cpp b/indra/newview/llfloaterimagepreview.cpp
index 3607aad7ef..51e67dcf2b 100644
--- a/indra/newview/llfloaterimagepreview.cpp
+++ b/indra/newview/llfloaterimagepreview.cpp
@@ -907,7 +907,7 @@ BOOL LLImagePreviewSculpted::render()
gGL.color3f(0.4f, 0.4f, 0.4f);
glVertexPointer(3, GL_FLOAT, 0, (void *)vertices);
glNormalPointer(GL_FLOAT, 0, (void *)normals);
- glDrawRangeElements(GL_TRIANGLES, 0, num_indices-1, num_indices, GL_UNSIGNED_SHORT, (void *)indices);
+ glDrawRangeElements(GL_TRIANGLES, 0, num_vertices-1, num_indices, GL_UNSIGNED_SHORT, (void *)indices);
gGL.popMatrix();
glDisableClientState(GL_NORMAL_ARRAY);
diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp
index d6ac5908dc..62115be473 100644
--- a/indra/newview/llpanelobject.cpp
+++ b/indra/newview/llpanelobject.cpp
@@ -1815,7 +1815,7 @@ void LLPanelObject::clearCtrls()
mLabelRadiusOffset->setEnabled( FALSE );
mLabelRevolutions->setEnabled( FALSE );
- childSetVisible("select_single", TRUE);
+ childSetVisible("select_single", FALSE);
childSetVisible("edit_object", TRUE);
childSetEnabled("edit_object", FALSE);
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index 0783468bb7..e785c93f19 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -9687,25 +9687,28 @@ U32 calc_shame(LLVOVolume* volume, std::set<LLUUID> &textures)
invisi = 1;
}
- if (te->getBumpmap())
+ if (te)
{
- bump = 1;
- }
- if (te->getShiny())
- {
- shiny = 1;
- }
- if (te->getGlow() > 0.f)
- {
- glow = 1;
- }
- if (face->mTextureMatrix != NULL)
- {
- animtex++;
- }
- if (te->getTexGen())
- {
- planar++;
+ if (te->getBumpmap())
+ {
+ bump = 1;
+ }
+ if (te->getShiny())
+ {
+ shiny = 1;
+ }
+ if (te->getGlow() > 0.f)
+ {
+ glow = 1;
+ }
+ if (face->mTextureMatrix != NULL)
+ {
+ animtex++;
+ }
+ if (te->getTexGen())
+ {
+ planar++;
+ }
}
}